OpenLexocad  27.1
Core::ObjectFactory Class Referenceabstract

#include <DocObject.h>

Public Member Functions

 ObjectFactory (void)
 
virtual ~ObjectFactory (void)
 
virtual Core::DocObjectcreateByFactory (Core::CoreDocument *doc)=0
 

Static Public Member Functions

static bool registerFactory (const std::string &name, Core::ObjectFactory *fact)
 
static bool isRegistered (const std::string &name)
 
static bool isRegistered (const Base::Type t)
 

Static Public Attributes

static std::map< std::string, ObjectFactory * > registry
 

Friends

class CoreDocument
 

Constructor & Destructor Documentation

◆ ObjectFactory()

Core::ObjectFactory::ObjectFactory ( void  )
inline

◆ ~ObjectFactory()

virtual Core::ObjectFactory::~ObjectFactory ( void  )
inlinevirtual

Member Function Documentation

◆ createByFactory()

virtual Core::DocObject* Core::ObjectFactory::createByFactory ( Core::CoreDocument doc)
pure virtual

◆ isRegistered() [1/2]

static bool Core::ObjectFactory::isRegistered ( const std::string &  name)
static

◆ isRegistered() [2/2]

static bool Core::ObjectFactory::isRegistered ( const Base::Type  t)
static

◆ registerFactory()

static bool Core::ObjectFactory::registerFactory ( const std::string &  name,
Core::ObjectFactory fact 
)
static

Friends And Related Function Documentation

◆ CoreDocument

friend class CoreDocument
friend

Member Data Documentation

◆ registry

std::map<std::string, ObjectFactory*> Core::ObjectFactory::registry
static

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