Main Page | 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.

Tests:
vtkDebugLeaks (Tests)

Definition at line 42 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)
void PrintCurrentLeaks ()
void PromptUserOn ()
void PromptUserOff ()

Protected Member Functions

 vtkDebugLeaks ()
virtual ~vtkDebugLeaks ()

Static Protected Member Functions

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

Friends

class vtkDebugLeaksManager


Member Typedef Documentation

typedef vtkObject vtkDebugLeaks::Superclass
 

Reimplemented from vtkObject.

Definition at line 46 of file vtkDebugLeaks.h.


Constructor & Destructor Documentation

vtkDebugLeaks::vtkDebugLeaks  )  [inline, protected]
 

Definition at line 65 of file vtkDebugLeaks.h.

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

Definition at line 66 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.

void vtkDebugLeaks::PrintCurrentLeaks  )  [static]
 

Print all the values in the table.

void vtkDebugLeaks::PromptUserOn  )  [inline, static]
 

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

Definition at line 60 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 61 of file vtkDebugLeaks.h.

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

void vtkDebugLeaks::ClassInitialize  )  [static, protected]
 

void vtkDebugLeaks::ClassFinalize  )  [static, protected]
 


Friends And Related Function Documentation

friend class vtkDebugLeaksManager [friend]
 

Definition at line 74 of file vtkDebugLeaks.h.


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