28#ifndef itkSpatialObjectFactoryBase_h
29#define itkSpatialObjectFactoryBase_h
33#include "ITKSpatialObjectsExport.h"
65 itkFactorylessNewMacro(
Self);
81 p->RegisterDefaultSpatialObjects();
89 const char * overrideClassName,
90 const char * description,
94 this->
RegisterOverride(classOverride, overrideClassName, description, enableFlag, createFunction);
Define API for object creation callback functions.
void RegisterOverride(const char *classOverride, const char *subclass, const char *description, bool enableFlag, CreateObjectFunctionBase *createFunction)
static bool RegisterFactory(ObjectFactoryBase *, InsertionPositionEnum where=InsertionPositionEnum::INSERT_AT_BACK, vcl_size_t position=0)
Implements transparent reference counting.
SpatialObjectFactoryBase()
const char * GetITKSourceVersion() const override
void RegisterSpatialObject(const char *classOverride, const char *overrideClassName, const char *description, bool enableFlag, CreateObjectFunctionBase *createFunction)
static SpatialObjectFactoryBase * m_Factory
~SpatialObjectFactoryBase() override
SmartPointer< Self > Pointer
SmartPointer< const Self > ConstPointer
static SpatialObjectFactoryBase * GetFactory()
SpatialObjectFactoryBase Self
const char * GetDescription() const override
ObjectFactoryBase Superclass
static void RegisterDefaultSpatialObjects()
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....