All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
Static Public Member Functions | Private Types | Static Private Member Functions | Private Attributes | Friends | List of all members
MBSim::ObjectFactory Class Reference

#include <objectfactory.h>

Static Public Member Functions

template<class ContainerType >
static ContainerType * createAndInit (const xercesc::DOMElement *element)
 

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 ObjectFactoryinstance ()
 

Private Attributes

NameMap registeredType
 

Friends

void registerClass_internal (const MBXMLUtils::FQN &name, const AllocateBase *alloc, const DeallocateBase *dealloc)
 
void deregisterClass_internal (const MBXMLUtils::FQN &name, const AllocateBase *alloc)
 

Detailed Description

A object factory. A object factory which creates any object derived from fmatvec::Atom.

Member Function Documentation

template<class ContainerType >
static ContainerType* MBSim::ObjectFactory::createAndInit ( const xercesc::DOMElement *  element)
inlinestatic

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. This function returns a new object or a singleton object dependent on the registration of the created object.


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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML