VTK
Classes | Macros | Variables
vtkObjectFactory.h File Reference
#include "vtkDebugLeaksManager.h"
#include "vtkCommonCoreModule.h"
#include "vtkObject.h"
#include <string>
Include dependency graph for vtkObjectFactory.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  vtkObjectFactory
 abstract base class for vtkObjectFactories More...
 
struct  vtkObjectFactory::OverrideInformation
 
class  vtkObjectFactoryRegistryCleanup
 

Macros

#define VTK_CREATE_CREATE_FUNCTION(classname)
 
#define VTK_FACTORY_INTERFACE_EXPORT   VTKCOMMONCORE_EXPORT
 
#define VTK_FACTORY_INTERFACE_IMPLEMENT(factoryName)
 
#define VTK_OBJECT_FACTORY_NEW_BODY(thisClass)
 
#define VTK_ABSTRACT_OBJECT_FACTORY_NEW_BODY(thisClass)
 
#define VTK_STANDARD_NEW_BODY(thisClass)
 
#define vtkStandardNewMacro(thisClass)
 
#define vtkObjectFactoryNewMacro(thisClass)
 
#define vtkAbstractObjectFactoryNewMacro(thisClass)
 

Variables

static vtkObjectFactoryRegistryCleanup vtkObjectFactoryRegistryCleanupInstance
 

Macro Definition Documentation

#define VTK_CREATE_CREATE_FUNCTION (   classname)
Value:
static vtkObject* vtkObjectFactoryCreate##classname() \
{ return classname::New(); }
abstract base class for most VTK objects
Definition: vtkObject.h:59

Definition at line 304 of file vtkObjectFactory.h.

#define VTK_FACTORY_INTERFACE_EXPORT   VTKCOMMONCORE_EXPORT

Definition at line 310 of file vtkObjectFactory.h.

#define VTK_FACTORY_INTERFACE_IMPLEMENT (   factoryName)
Value:
extern "C" \
VTK_FACTORY_INTERFACE_EXPORT \
const char* vtkGetFactoryCompilerUsed() \
{ \
return VTK_CXX_COMPILER; \
} \
extern "C" \
VTK_FACTORY_INTERFACE_EXPORT \
const char* vtkGetFactoryVersion() \
{ \
} \
extern "C" \
VTK_FACTORY_INTERFACE_EXPORT \
vtkObjectFactory* vtkLoad() \
{ \
return factoryName ::New(); \
}
#define VTK_SOURCE_VERSION
Definition: vtkVersion.h:38

Definition at line 317 of file vtkObjectFactory.h.

#define VTK_OBJECT_FACTORY_NEW_BODY (   thisClass)
Value:
vtkObject* ret = vtkObjectFactory::CreateInstance(#thisClass, false); \
if(ret) \
{ \
return static_cast<thisClass*>(ret); \
} \
thisClass *result = new thisClass; \
result->InitializeObjectBase(); \
return result;
abstract base class for most VTK objects
Definition: vtkObject.h:59
static vtkObject * CreateInstance(const char *vtkclassname, bool isAbstract=false)
Create and return an instance of the named vtk object.

Definition at line 338 of file vtkObjectFactory.h.

#define VTK_ABSTRACT_OBJECT_FACTORY_NEW_BODY (   thisClass)
Value:
vtkObject* ret = vtkObjectFactory::CreateInstance(#thisClass, true); \
if(ret) \
{ \
return static_cast<thisClass*>(ret); \
} \
vtkGenericWarningMacro("Error: no override found for '" #thisClass "'."); \
return nullptr;
abstract base class for most VTK objects
Definition: vtkObject.h:59
static vtkObject * CreateInstance(const char *vtkclassname, bool isAbstract=false)
Create and return an instance of the named vtk object.

Definition at line 351 of file vtkObjectFactory.h.

#define VTK_STANDARD_NEW_BODY (   thisClass)
Value:
thisClass *result = new thisClass; \
result->InitializeObjectBase(); \
return result;

Definition at line 365 of file vtkObjectFactory.h.

#define vtkStandardNewMacro (   thisClass)
Value:
thisClass* thisClass::New() \
{ \
}
#define VTK_STANDARD_NEW_BODY(thisClass)

Definition at line 372 of file vtkObjectFactory.h.

#define vtkObjectFactoryNewMacro (   thisClass)
Value:
thisClass* thisClass::New() \
{ \
}
#define VTK_OBJECT_FACTORY_NEW_BODY(thisClass)

Definition at line 379 of file vtkObjectFactory.h.

#define vtkAbstractObjectFactoryNewMacro (   thisClass)
Value:
thisClass* thisClass::New() \
{ \
}
#define VTK_ABSTRACT_OBJECT_FACTORY_NEW_BODY(thisClass)

Definition at line 388 of file vtkObjectFactory.h.

Variable Documentation

vtkObjectFactoryRegistryCleanup vtkObjectFactoryRegistryCleanupInstance
static

Definition at line 298 of file vtkObjectFactory.h.