Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkDebugLeaks Class Reference

#include <vtkDebugLeaks.h>

Inheritance diagram for vtkDebugLeaks:

Inheritance graph
[legend]
Collaboration diagram for vtkDebugLeaks:

Collaboration graph
[legend]
List of all members.

Detailed Description

identify memory leaks at program termination

vtkDebugLeaks is used to report memory leaks at the exit of the program. It uses the vtkObjectFactory to intercept the construction of all VTK objects. It uses the UnRegister method of vtkObject to intercept the destruction of all objects. A table of object name to number of instances is kept. At the exit of the program if there are still VTK objects around it will print them out. To enable this class add the flag -DVTK_DEBUG_LEAKS to the compile line, and rebuild vtkObject and vtkObjectFactory.

Created by:
  • Hoffman, Bill
CVS contributions (if > 5%):
  • Hoffman, Bill (46%)
  • King, Brad (21%)
  • Martin, Ken (7%)
  • Schroeder, Will (7%)
  • Lorensen, Bill (6%)
CVS logs (CVSweb):
  • .h (/Common/vtkDebugLeaks.h)
  • .cxx (/Common/vtkDebugLeaks.cxx)
Tests:
vtkDebugLeaks (Tests)

Definition at line 56 of file vtkDebugLeaks.h.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)

Static Public Member Functions

vtkDebugLeaksNew ()
int IsTypeOf (const char *type)
vtkDebugLeaksSafeDownCast (vtkObject *o)
void ConstructClass (const char *classname)
void DestructClass (const char *classname)
int PrintCurrentLeaks ()
void PromptUserOn ()
void PromptUserOff ()

Protected Member Functions

 vtkDebugLeaks ()
virtual ~vtkDebugLeaks ()

Static Protected Member Functions

int DisplayMessageBox (const char *)
void ClassInitialize ()
void ClassFinalize ()


Member Typedef Documentation

typedef vtkObject vtkDebugLeaks::Superclass
 

Reimplemented from vtkObject.

Definition at line 60 of file vtkDebugLeaks.h.


Constructor & Destructor Documentation

vtkDebugLeaks::vtkDebugLeaks  )  [inline, protected]
 

Definition at line 80 of file vtkDebugLeaks.h.

virtual vtkDebugLeaks::~vtkDebugLeaks  )  [inline, protected, virtual]
 

Definition at line 81 of file vtkDebugLeaks.h.


Member Function Documentation

vtkDebugLeaks* vtkDebugLeaks::New  )  [static]
 

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

virtual const char* vtkDebugLeaks::GetClassName  )  [virtual]
 

Reimplemented from vtkObject.

int vtkDebugLeaks::IsTypeOf const char *  type  )  [static]
 

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

virtual int vtkDebugLeaks::IsA const char *  type  )  [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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

vtkDebugLeaks* vtkDebugLeaks::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkObject.

void vtkDebugLeaks::ConstructClass const char *  classname  )  [static]
 

Call this when creating a class of a given name.

void vtkDebugLeaks::DestructClass const char *  classname  )  [static]
 

Call this when deleting a class of a given name.

int vtkDebugLeaks::PrintCurrentLeaks  )  [static]
 

Print all the values in the table. Returns non-zero if there were leaks.

void vtkDebugLeaks::PromptUserOn  )  [inline, static]
 

Turn prompt at exit on/off (this setting is deprecated and will be ignored).

Definition at line 75 of file vtkDebugLeaks.h.

void vtkDebugLeaks::PromptUserOff  )  [inline, static]
 

Turn prompt at exit on/off (this setting is deprecated and will be ignored).

Definition at line 76 of file vtkDebugLeaks.h.

int vtkDebugLeaks::DisplayMessageBox const char *   )  [static, protected]
 

void vtkDebugLeaks::ClassInitialize  )  [static, protected]
 

void vtkDebugLeaks::ClassFinalize  )  [static, protected]
 


The documentation for this class was generated from the following file: