45 #ifndef vtkObjectBase_h
46 #define vtkObjectBase_h
55 class vtkGarbageCollectorToObjectBaseFriendship;
57 class vtkWeakPointerBaseToObjectBaseFriendship;
65 virtual const char* GetClassNameInternal()
const {
return "vtkObjectBase"; }
69 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
71 # define GetClassNameA GetClassName
72 # define GetClassNameW GetClassName
76 const char* GetClassName()
const;
78 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
83 const char* GetClassNameA()
const;
84 const char* GetClassNameW()
const;
91 static int IsTypeOf(
const char *
name);
96 virtual int IsA(
const char *name);
101 virtual void Delete();
108 virtual void FastDelete();
119 void*
operator new(
size_t tSize );
120 void operator delete(
void* p );
125 void Print(ostream& os);
132 virtual void PrintSelf(ostream& os,
vtkIndent indent);
133 virtual void PrintHeader(ostream& os,
vtkIndent indent);
134 virtual void PrintTrailer(ostream& os,
vtkIndent indent);
149 return this->ReferenceCount;
154 void SetReferenceCount(
int);
180 friend class vtkGarbageCollectorToObjectBaseFriendship;
181 friend class vtkWeakPointerBaseToObjectBaseFriendship;
static vtkObjectBase * New()
#define VTKCOMMONCORE_EXPORT
vtkObjectBase(const vtkObjectBase &)
void PrintRevisions(ostream &)
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 &)