mbsim
4.0.0
MBSim Kernel
|
#include <objectfactory.h>
Static Public Member Functions | |
template<class ContainerType > | |
static ContainerType * | createAndInit (const xercesc::DOMElement *element) |
static void | addErrorMsg (const std::string &msg) |
static std::string | getAndClearErrorMsg () |
Private Types | |
typedef std::pair< const AllocateBase *, const DeallocateBase * > | AllocDeallocPair |
typedef std::vector< AllocDeallocPair > | AllocDeallocVector |
typedef AllocDeallocVector::iterator | AllocDeallocVectorIt |
typedef std::map< MBXMLUtils::FQN, AllocDeallocVector > | NameMap |
typedef NameMap::iterator | NameMapIt |
Static Private Member Functions | |
static ObjectFactory & | instance () |
Private Attributes | |
NameMap | registeredType |
Static Private Attributes | |
static std::string | errorMsg |
Friends | |
void | registerClass_internal (const MBXMLUtils::FQN &name, const AllocateBase *alloc, const DeallocateBase *dealloc) |
void | deregisterClass_internal (const MBXMLUtils::FQN &name, const AllocateBase *alloc) |
A object factory. A object factory which creates any object derived from fmatvec::Atom.
|
static |
Create and initialize an object corresponding to the XML element element and return a pointer of type ContainerType. Throws if the created object is not of type ContainerType or no object can be create without errors.