63 #ifndef vtkGarbageCollector_h
64 #define vtkGarbageCollector_h
66 #include "vtkCommonCoreModule.h"
72 VTK_ABI_NAMESPACE_BEGIN
77 class vtkObjectBaseToGarbageCollectorFriendship;
98 static void Collect();
120 static void DeferredCollectionPush();
121 static void DeferredCollectionPop();
129 static void SetGlobalDebugFlag(
bool flag);
130 static bool GetGlobalDebugFlag();
161 static void ClassInitialize();
162 static void ClassFinalize();
165 friend class vtkObjectBaseToGarbageCollectorFriendship;
168 virtual void Report(
vtkObjectBase* obj,
void* ptr,
const char* desc);
193 VTK_ABI_NAMESPACE_END
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
friend class vtkGarbageCollector
Some classes need to clear the reference counts manually due to the way they work.
Detect and break reference loops.
a simple class to control print indentation
Manages the vtkGarbageCollector singleton.
abstract base class for most VTK objects
Non-templated superclass for vtkSmartPointer.
void VTKCOMMONCORE_EXPORT vtkGarbageCollectorReportInternal(vtkGarbageCollector *, vtkObjectBase *, void *, const char *)
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void VTKCOMMONCORE_EXPORT vtkGarbageCollectorReport(vtkGarbageCollector *collector, vtkSmartPointerBase &ptr, const char *desc)
Function to report a reference held by a smart pointer to a collector.