49 #ifndef vtkObjectBase_h 50 #define vtkObjectBase_h 55 #define VTK_HAS_INITIALIZE_OBJECT_BASE 57 #include "vtkCommonCoreModule.h" 64 class vtkGarbageCollectorToObjectBaseFriendship;
66 class vtkWeakPointerBaseToObjectBaseFriendship;
75 virtual const char* GetClassNameInternal()
const {
return "vtkObjectBase"; }
78 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE 80 # define GetClassNameA GetClassName 81 # define GetClassNameW GetClassName 87 const char* GetClassName()
const;
89 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE 94 const char* GetClassNameA()
const;
95 const char* GetClassNameW()
const;
118 virtual void Delete();
127 virtual void FastDelete();
142 void InitializeObjectBase();
146 void*
operator new(
size_t tSize );
147 void operator delete(
void* p );
154 void Print(ostream& os);
163 virtual void PrintSelf(ostream& os,
vtkIndent indent);
164 virtual void PrintHeader(ostream& os,
vtkIndent indent);
165 virtual void PrintTrailer(ostream& os,
vtkIndent indent);
185 return this->ReferenceCount;
191 void SetReferenceCount(
int);
196 #ifndef VTK_LEGACY_REMOVE 204 #ifndef VTK_LEGACY_REMOVE 223 friend class vtkGarbageCollectorToObjectBaseFriendship;
224 friend class vtkWeakPointerBaseToObjectBaseFriendship;
void InitializeObjectBase()
static vtkObjectBase * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkAtomic< vtkTypeInt32 > vtkAtomicInt32
vtkObjectBase(const vtkObjectBase &)
void PrintRevisions(ostream &)
Legacy.
int GetReferenceCount()
Return the current reference count of this object.
Detect and break reference loops.
vtkAtomicInt32 ReferenceCount
a simple class to control print indentation
Non-templated superclass for vtkWeakPointer.
abstract base class for most VTK objects
virtual void CollectRevisions(ostream &)
VTKCOMMONCORE_EXPORT ostream & operator<<(ostream &os, const vtkIndent &o)
vtkWeakPointerBase ** WeakPointers
void operator=(const vtkObjectBase &)