|
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.