45 #ifndef vtkObjectBase_h
46 #define vtkObjectBase_h
54 class vtkGarbageCollectorToObjectBaseFriendship;
56 class vtkWeakPointerBaseToObjectBaseFriendship;
64 virtual const char* GetClassNameInternal()
const {
return "vtkObjectBase"; }
68 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
70 # define GetClassNameA GetClassName
71 # define GetClassNameW GetClassName
75 const char* GetClassName()
const;
77 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
82 const char* GetClassNameA()
const;
83 const char* GetClassNameW()
const;
90 static int IsTypeOf(
const char *
name);
95 virtual int IsA(
const char *name);
100 virtual void Delete();
107 virtual void FastDelete();
118 void*
operator new(
size_t tSize );
119 void operator delete(
void*
p );
124 void Print(ostream& os);
131 virtual void PrintSelf(ostream& os,
vtkIndent indent);
132 virtual void PrintHeader(ostream& os,
vtkIndent indent);
133 virtual void PrintTrailer(ostream& os,
vtkIndent indent);
148 return this->ReferenceCount;
153 void SetReferenceCount(
int);
179 friend class vtkGarbageCollectorToObjectBaseFriendship;
180 friend class vtkWeakPointerBaseToObjectBaseFriendship;
static vtkObjectBase * New()
#define VTKCOMMONCORE_EXPORT
vtkAtomicInt< vtkTypeInt32 > ReferenceCount
vtkObjectBase(const vtkObjectBase &)
void PrintRevisions(ostream &)
Detect and break reference loops.
GLuint const GLchar * name
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 &)