Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkDebugLeaks Class Reference

identify memory leaks at program termination. More...

#include <vtkDebugLeaks.h>

Inheritance diagram for vtkDebugLeaks:

Inheritance graph
[legend]
Collaboration diagram for vtkDebugLeaks:

Collaboration graph
[legend]
List of all members.

Public Methods

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

Static Public Methods

vtkDebugLeaks * New ()
int IsTypeOf (const char *type)
vtkDebugLeaks * SafeDownCast (vtkObject *o)
void ConstructClass (const char *classname)
void DestructClass (const char *classname)
void PrintCurrentLeaks ()
void DeleteTable ()
void PromptUserOn ()
void PromptUserOff ()

Protected Methods

 vtkDebugLeaks ()
virtual ~vtkDebugLeaks ()

Static Protected Attributes

int PromptUser

Detailed Description

identify memory leaks at program termination.

Date:
2001/10/11 13:36:09
Revision:
1.12

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 67 of file vtkDebugLeaks.h.


Constructor & Destructor Documentation

vtkDebugLeaks::vtkDebugLeaks   [inline, protected]
 

Definition at line 92 of file vtkDebugLeaks.h.

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

Definition at line 93 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]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

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 vtkTypeMacro 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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

vtkDebugLeaks* vtkDebugLeaks::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

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

Call this when creating a class of a given name.

Referenced by vtkObjectFactoryCollection::New(), and vtkDirectory::New().

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::DeleteTable   [static]
 

Clean up the table memory.

void vtkDebugLeaks::PromptUserOn   [static]
 

Turn prompt at exit on/off.

void vtkDebugLeaks::PromptUserOff   [static]
 

Turn prompt at exit on/off.


Member Data Documentation

int vtkDebugLeaks::PromptUser [static, protected]
 

Definition at line 95 of file vtkDebugLeaks.h.


The documentation for this class was generated from the following file:
Generated on Thu Mar 28 14:28:47 2002 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001