![]() |
ITK
4.3.0
Insight Segmentation and Registration Toolkit
|
#include <itkObjectFactory.h>
Create instances of a class.
ObjectFactory is a helper class used to created instances of a class. Object factories are used for instantiation because they allow run-time replacement of a class with a user-supplied version. For example, if you wished to replace an algorithm with your own custom version, or with a hardware-accelerated version, ObjectFactory can be used to do this.
This implementation of the object factory is templated and uses RTTI (Run-Time Type Information) to create the name of the class it is to instantiate. (The name may include template type parameters, depending on the class definition.)
Definition at line 55 of file itkObjectFactory.h.
Static Public Member Functions | |
static T::Pointer | Create () |
![]() | |
static std::list < LightObject::Pointer > | CreateAllInstance (const char *itkclassname) |
static LightObject::Pointer | CreateInstance (const char *itkclassname) |
static std::list < ObjectFactoryBase * > | GetRegisteredFactories () |
static void | RegisterFactoryInternal (ObjectFactoryBase *) |
static void | ReHash () |
static void | UnRegisterAllFactories () |
static void | UnRegisterFactory (ObjectFactoryBase *) |
static void | RegisterFactory (ObjectFactoryBase *, InsertionPositionType where=INSERT_AT_BACK, vcl_size_t position=0) |
static void | SetStrictVersionChecking (bool) |
static void | StrictVersionCheckingOn () |
static void | StrictVersionCheckingOff () |
static bool | GetStrictVersionChecking () |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Additional Inherited Members | |
![]() | |
typedef SmartPointer< const Self > | ConstPointer |
enum | InsertionPositionType { INSERT_AT_FRONT, INSERT_AT_BACK, INSERT_AT_POSITION } |
typedef SmartPointer< Self > | Pointer |
typedef ObjectFactoryBase | Self |
typedef Object | Superclass |
![]() | |
virtual void | Disable (const char *className) |
virtual std::list< std::string > | GetClassOverrideDescriptions () |
virtual std::list< std::string > | GetClassOverrideNames () |
virtual std::list< std::string > | GetClassOverrideWithNames () |
virtual const char * | GetDescription (void) const =0 |
virtual bool | GetEnableFlag (const char *className, const char *subclassName) |
virtual std::list< bool > | GetEnableFlags () |
virtual const char * | GetITKSourceVersion (void) const =0 |
const char * | GetLibraryPath () |
virtual const char * | GetNameOfClass () const |
virtual void | SetEnableFlag (bool flag, const char *className, const char *subclassName) |
![]() | |
typedef int | InternalReferenceCountType |
![]() | |
virtual std::list < LightObject::Pointer > | CreateAllObject (const char *itkclassname) |
virtual LightObject::Pointer | CreateObject (const char *itkclassname) |
ObjectFactoryBase () | |
virtual void | PrintSelf (std::ostream &os, Indent indent) const |
void | RegisterOverride (const char *classOverride, const char *overrideClassName, const char *description, bool enableFlag, CreateObjectFunctionBase *createFunction) |
virtual | ~ObjectFactoryBase () |
![]() | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
|
inlinestatic |
Definition at line 58 of file itkObjectFactory.h.
References itk::ObjectFactoryBase::CreateInstance(), and itk::SmartPointer< TObjectType >::GetPointer().
Referenced by itk::fem::Element::Node::New().