mbsim 4.0.0 MBSim Kernel

Static Public Member Functions | Private Types | Static Private Member Functions | Private Attributes | Static 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)
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)

## Detailed Description

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

## Member Function Documentation

## ◆ createAndInit()

template<class ContainerType >

ContainerType * MBSim::ObjectFactory::createAndInit | ( | const xercesc::DOMElement * | element | ) |

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.

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

- /mbsim-env/mbsim/kernel/mbsim/objectfactory.h
- /mbsim-env/mbsim/kernel/mbsim/objectfactory.cc