VTK
9.3.20240831
|
create and manipulate ordered lists of objects More...
#include <vtkCollection.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. | |
vtkCollection * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
void | AddItem (vtkObject *) |
Add an object to the bottom of the list. | |
void | InsertItem (int i, vtkObject *) |
Insert item into the list after the i'th item. | |
void | ReplaceItem (int i, vtkObject *) |
Replace the i'th item in the collection with another item. | |
void | RemoveItem (int i) |
Remove the i'th item in the list. | |
void | RemoveItem (vtkObject *) |
Remove an object from the list. | |
void | RemoveAllItems () |
Remove all objects from the list. | |
int | IsItemPresent (vtkObject *a) |
Search for an object and return location in list. | |
int | IndexOfFirstOccurence (vtkObject *a) |
Search for an object and return location in list. | |
int | GetNumberOfItems () |
Return the number of objects in the list. | |
void | InitTraversal () |
Initialize the traversal of the collection. | |
void | InitTraversal (vtkCollectionSimpleIterator &cookie) |
A reentrant safe way to iterate through a collection. | |
vtkObject * | GetNextItemAsObject () |
Get the next item in the collection. | |
vtkObject * | GetItemAsObject (int i) |
Get the i'th item in the collection. | |
vtkObject * | GetNextItemAsObject (vtkCollectionSimpleIterator &cookie) |
A reentrant safe way to get the next object as a collection. | |
vtkCollectionIterator * | NewIterator () |
Get an iterator to traverse the objects in this collection. | |
bool | UsesGarbageCollector () const override |
Participate in garbage collection. | |
![]() | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. | |
virtual void | DebugOff () |
Turn debugging output off. | |
bool | GetDebug () |
Get the value of the debug flag. | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. | |
virtual void | Modified () |
Update the modification time for this object. | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. | |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
vtkTypeBool | InvokeEvent (unsigned long event) |
vtkTypeBool | InvokeEvent (const char *event) |
std::string | GetObjectDescription () const override |
The object description printed in messages and PrintSelf output. | |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. | |
vtkTypeBool | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
vtkTypeBool | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
virtual void | SetObjectName (const std::string &objectName) |
Set/get the name of this object for reporting purposes. | |
virtual std::string | GetObjectName () const |
Set/get the name of this object for reporting purposes. | |
![]() | |
const char * | GetClassName () const |
Return the class name as a string. | |
virtual std::string | GetObjectDescription () const |
The object description printed in messages and PrintSelf output. | |
virtual vtkTypeBool | IsA (const char *name) |
Return 1 if this class is the same type of (or a subclass of) the named class. | |
virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name) |
Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
virtual void | Delete () |
Delete a VTK object. | |
virtual void | FastDelete () |
Delete a reference to this object. | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. | |
void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). | |
int | GetReferenceCount () |
Return the current reference count of this object. | |
void | SetReferenceCount (int) |
Sets the reference count. | |
bool | GetIsInMemkind () const |
A local state flag that remembers whether this object lives in the normal or extended memory space. | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
Static Public Member Functions | |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkCollection * | SafeDownCast (vtkObjectBase *o) |
static vtkCollection * | New () |
Construct with empty list. | |
![]() | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. | |
static void | SetGlobalWarningDisplay (vtkTypeBool val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static vtkTypeBool | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
![]() | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. | |
static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name) |
Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | SetMemkindDirectory (const char *directoryname) |
The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. | |
static bool | GetUsingMemkind () |
A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkCollection () | |
~vtkCollection () override | |
virtual void | RemoveElement (vtkCollectionElement *element, vtkCollectionElement *previous) |
virtual void | DeleteElement (vtkCollectionElement *) |
void | ReportReferences (vtkGarbageCollector *collector) override |
![]() | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. | |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | ReportReferences (vtkGarbageCollector *) |
virtual void | ObjectFinalize () |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
int | NumberOfItems |
vtkCollectionElement * | Top |
vtkCollectionElement * | Bottom |
vtkCollectionElement * | Current |
![]() | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
std::string | ObjectName |
![]() | |
std::atomic< int32_t > | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Friends | |
class | vtkCollectionIterator |
Additional Inherited Members | |
![]() | |
static vtkMallocingFunction | GetCurrentMallocFunction () |
static vtkReallocingFunction | GetCurrentReallocFunction () |
static vtkFreeingFunction | GetCurrentFreeFunction () |
static vtkFreeingFunction | GetAlternateFreeFunction () |
create and manipulate ordered lists of objects
vtkCollection is a general object for creating and manipulating lists of objects. The lists are ordered and allow duplicate entries. vtkCollection also serves as a base class for lists of specific types of objects.
Definition at line 45 of file vtkCollection.h.
typedef vtkObject vtkCollection::Superclass |
Definition at line 48 of file vtkCollection.h.
|
protected |
|
overrideprotected |
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class.
Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObjectBase.
Reimplemented in vtkDataArrayCollection, vtkIdListCollection, vtkObjectFactoryCollection, vtkOverrideInformationCollection, vtkDataObjectCollection, vtkDataSetCollection, vtkImplicitFunctionCollection, vtkPlaneCollection, vtkPolyDataCollection, vtkStructuredPointsCollection, vtkSocketCollection, vtkTransformCollection, vtkImageReader2Collection, vtkActor2DCollection, vtkActorCollection, vtkAssemblyPath, vtkAssemblyPaths, vtkCullerCollection, vtkLightCollection, vtkMapperCollection, vtkProp3DCollection, vtkPropCollection, vtkRendererCollection, vtkRenderWindowCollection, vtkTextPropertyCollection, vtkVolumeCollection, vtkImageSliceCollection, and vtkRenderPassCollection.
|
static |
|
protectedvirtual |
Reimplemented in vtkDataArrayCollection, vtkIdListCollection, vtkObjectFactoryCollection, vtkOverrideInformationCollection, vtkDataObjectCollection, vtkDataSetCollection, vtkImplicitFunctionCollection, vtkPlaneCollection, vtkPolyDataCollection, vtkStructuredPointsCollection, vtkSocketCollection, vtkTransformCollection, vtkImageReader2Collection, vtkActor2DCollection, vtkActorCollection, vtkAssemblyPath, vtkAssemblyPaths, vtkCullerCollection, vtkLightCollection, vtkMapperCollection, vtkProp3DCollection, vtkPropCollection, vtkRendererCollection, vtkRenderWindowCollection, vtkTextPropertyCollection, vtkVolumeCollection, vtkImageSliceCollection, and vtkRenderPassCollection.
vtkCollection * vtkCollection::NewInstance | ( | ) | const |
|
overridevirtual |
Methods invoked by print to print information about the object including superclasses.
Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObjectBase.
Reimplemented in vtkDataArrayCollection, vtkIdListCollection, vtkObjectFactoryCollection, vtkOverrideInformationCollection, vtkDataObjectCollection, vtkDataSetCollection, vtkImplicitFunctionCollection, vtkPlaneCollection, vtkPolyDataCollection, vtkStructuredPointsCollection, vtkSocketCollection, vtkTransformCollection, vtkImageReader2Collection, vtkCullerCollection, vtkLightCollection, vtkMapperCollection, vtkProp3DCollection, vtkPropCollection, vtkRendererCollection, vtkRenderWindowCollection, vtkTextPropertyCollection, vtkVolumeCollection, vtkImageSliceCollection, and vtkRenderPassCollection.
|
static |
Construct with empty list.
void vtkCollection::AddItem | ( | vtkObject * | ) |
Add an object to the bottom of the list.
Does not prevent duplicate entries.
void vtkCollection::InsertItem | ( | int | i, |
vtkObject * | |||
) |
Insert item into the list after the i'th item.
Does not prevent duplicate entries. If i < 0 the item is placed at the top of the list.
void vtkCollection::ReplaceItem | ( | int | i, |
vtkObject * | |||
) |
Replace the i'th item in the collection with another item.
void vtkCollection::RemoveItem | ( | int | i | ) |
Remove the i'th item in the list.
Be careful if using this function during traversal of the list using GetNextItemAsObject (or GetNextItem in derived class). The list WILL be shortened if a valid index is given! If this->Current is equal to the element being removed, have it point to then next element in the list.
void vtkCollection::RemoveItem | ( | vtkObject * | ) |
Remove an object from the list.
Removes the first object found, not all occurrences. If no object found, list is unaffected. See warning in description of RemoveItem(int).
void vtkCollection::RemoveAllItems | ( | ) |
Remove all objects from the list.
int vtkCollection::IsItemPresent | ( | vtkObject * | a | ) |
Search for an object and return location in list.
If the return value is 0, the object was not found. If the object was found, the location is the return value-1.
int vtkCollection::IndexOfFirstOccurence | ( | vtkObject * | a | ) |
Search for an object and return location in list.
If the return value is -1, the object was not found. If the object was found, the location is at the returned (0-based) index.
|
inline |
Return the number of objects in the list.
Definition at line 110 of file vtkCollection.h.
|
inline |
Initialize the traversal of the collection.
This means the data pointer is set at the beginning of the list.
Definition at line 116 of file vtkCollection.h.
|
inline |
A reentrant safe way to iterate through a collection.
Just pass the same cookie value around each time
Definition at line 122 of file vtkCollection.h.
|
inline |
Get the next item in the collection.
nullptr is returned if the collection is exhausted.
Definition at line 178 of file vtkCollection.h.
vtkObject * vtkCollection::GetItemAsObject | ( | int | i | ) |
Get the i'th item in the collection.
nullptr is returned if i is out of range
|
inline |
A reentrant safe way to get the next object as a collection.
Just pass the same cookie back and forth.
Definition at line 193 of file vtkCollection.h.
vtkCollectionIterator * vtkCollection::NewIterator | ( | ) |
Get an iterator to traverse the objects in this collection.
|
inlineoverridevirtual |
Participate in garbage collection.
Reimplemented from vtkObjectBase.
Definition at line 154 of file vtkCollection.h.
|
protectedvirtual |
|
protectedvirtual |
Reimplemented in vtkActor2DCollection, and vtkImageSliceCollection.
|
overrideprotectedvirtual |
Reimplemented from vtkObjectBase.
|
friend |
Definition at line 168 of file vtkCollection.h.
|
protected |
Definition at line 163 of file vtkCollection.h.
|
protected |
Definition at line 164 of file vtkCollection.h.
|
protected |
Definition at line 165 of file vtkCollection.h.
|
protected |
Definition at line 166 of file vtkCollection.h.