VTK
|
Thread local storage for VTK objects. More...
#include <vtkSMPThreadLocalObject.h>
Classes | |
class | iterator |
Public Member Functions | |
vtkSMPThreadLocalObject (T *const &exemplar) | |
virtual | ~vtkSMPThreadLocalObject () |
vtkSMPThreadLocalObject () | |
T *& | Local () |
size_t | size () const |
iterator | begin () |
iterator | end () |
Thread local storage for VTK objects.
This class essentially does the same thing as vtkSMPThreadLocal with 2 additional functions:
The destructor calls Delete() on all objects created with Local().
vtkSMPThreadLocal<int> Foo; vtkSMPThreadLocal<int> Bar; class AFunctor { void Initialize() const { int& foo = Foo.Local(); int& bar = Bar.Local(); foo = random(); bar = foo; } @warning void operator()(vtkIdType, vtkIdType) {} void Finalize() {} }; @warning AFunctor functor; vtkSMPTools::For(0, 100000, functor); @warning vtkSMPThreadLocal<int>::iterator itr1 = Foo.begin(); vtkSMPThreadLocal<int>::iterator itr2 = Bar.begin(); while (itr1 != Foo.end()) { assert(*itr1 == *itr2); ++itr1; ++itr2; }
Definition at line 82 of file vtkSMPThreadLocalObject.h.
|
inline |
Default constructor.
Definition at line 95 of file vtkSMPThreadLocalObject.h.
|
inline |
Definition at line 100 of file vtkSMPThreadLocalObject.h.
|
inlinevirtual |
Definition at line 104 of file vtkSMPThreadLocalObject.h.
|
inline |
Returns an object local to the current thread. This object is allocated with ::New() and will be deleted in the destructor of vtkSMPThreadLocalObject.
Definition at line 121 of file vtkSMPThreadLocalObject.h.
|
inline |
Return the number of thread local objects that have been initialized
Definition at line 141 of file vtkSMPThreadLocalObject.h.
|
inline |
Definition at line 194 of file vtkSMPThreadLocalObject.h.
|
inline |
Definition at line 201 of file vtkSMPThreadLocalObject.h.