OpenRTM-aist  1.2.1
Friends | List of all members
coil::GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > Class Template Reference

GlobalFactory template class. More...

#include <Factory.h>

Inheritance diagram for coil::GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor >:
Inheritance graph
[legend]
Collaboration diagram for coil::GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor >:
Collaboration graph
[legend]

Friends

class Singleton< GlobalFactory >
 

Additional Inherited Members

- Public Types inherited from coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >
enum  ReturnCode {
  FACTORY_OK, FACTORY_ERROR, ALREADY_EXISTS, NOT_FOUND,
  INVALID_ARG, UNKNOWN_ERROR
}
 
typedef std::map< Identifier, FactoryEntry > FactoryMap
 
typedef FactoryMap::iterator FactoryMapIt
 
typedef std::map< AbstractClass *, FactoryEntry > ObjectMap
 
typedef ObjectMap::iterator ObjectMapIt
 
- Public Types inherited from coil::Singleton< GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > >
typedef GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > * SingletonClassPtr
 
typedef ::coil::Mutex Mutex
 
- Public Member Functions inherited from coil::Factory< AbstractClass, Identifier, Compare, Creator, Destructor >
bool hasFactory (const Identifier &id)
 Factory presence check. More...
 
std::vector< Identifier > getIdentifiers ()
 Get factory ID list. More...
 
ReturnCode addFactory (const Identifier &id, Creator creator, Destructor destructor)
 Add factory. More...
 
ReturnCode removeFactory (const Identifier &id)
 Remove factory. More...
 
AbstractClass * createObject (const Identifier &id)
 Create factory object. More...
 
ReturnCode deleteObject (const Identifier &id, AbstractClass *&obj)
 Delete factory object. More...
 
ReturnCode deleteObject (AbstractClass *&obj)
 Delete factory object. More...
 
std::vector< AbstractClass * > createdObjects ()
 Getting created objects. More...
 
bool isProducerOf (AbstractClass *obj)
 Whether a object is a product of this factory. More...
 
ReturnCode objectToIdentifier (AbstractClass *obj, Identifier &id)
 Getting class identifier (ID) from a object. More...
 
Creator objectToCreator (AbstractClass *obj)
 Getting destructor of the object. More...
 
Destructor objectToDestructor (AbstractClass *obj)
 Getting destructor of the object. More...
 
- Static Public Member Functions inherited from coil::Singleton< GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > >
static GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > & instance ()
 Create instance. More...
 
- Protected Member Functions inherited from coil::Singleton< GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > >
 Singleton ()
 Constructor. More...
 
 ~Singleton ()
 Destructor. More...
 
- Static Protected Attributes inherited from coil::Singleton< GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > >
static coil::Mutex m_mutex
 Mutual exclusion object. More...
 
static GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor > * m_instance
 SingletonClass object. More...
 

Detailed Description

template<class AbstractClass, typename Identifier = std::string, typename Compare = std::less<Identifier>, typename Creator = AbstractClass* (*)(), typename Destructor = void (*)(AbstractClass*&)>
class coil::GlobalFactory< AbstractClass, Identifier, Compare, Creator, Destructor >

GlobalFactory template class.

Friends And Related Function Documentation

template<class AbstractClass , typename Identifier = std::string, typename Compare = std::less<Identifier>, typename Creator = AbstractClass* (*)(), typename Destructor = void (*)(AbstractClass*&)>
friend class Singleton< GlobalFactory >
friend

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