Sierra Toolkit Version of the Day
sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass > Class Template Reference

Class template Register registers the createInstance() function with the derived_name on object creation. More...

#include <UserPlugin.hpp>

List of all members.

Public Types

typedef DerivedClass XDerivedClass

Public Member Functions

 Register (const std::string &derived_name)
 Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_name.
 Register (const std::string &derived_name, Signature create_instance)
 Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_name.
 Register (int derived_id)
 Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_id and "enum id " derived_id.
 Register (int derived_id, Signature create_instance)
 Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_id and "enum id " derived_id.

Detailed Description

template<class Creator, typename S = Creator *(*)()>
template<class DerivedClass>
class sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass >

Class template Register registers the createInstance() function with the derived_name on object creation.

Parameters:
DerivedClassa class which specifies the derived class which holds the createInstance() function.

Definition at line 436 of file UserPlugin.hpp.


Constructor & Destructor Documentation

template<class Creator , typename S = Creator *(*)()>
template<class DerivedClass >
sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass >::Register ( const std::string &  derived_name) [inline, explicit]

Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_name.

Parameters:
derived_namea std::string const reference to the derived class' name.

Definition at line 450 of file UserPlugin.hpp.

template<class Creator , typename S = Creator *(*)()>
template<class DerivedClass >
sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass >::Register ( const std::string &  derived_name,
Signature  create_instance 
) [inline]

Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_name.

Parameters:
derived_namea std::string const reference to the derived class' name.

Definition at line 465 of file UserPlugin.hpp.

template<class Creator , typename S = Creator *(*)()>
template<class DerivedClass >
sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass >::Register ( int  derived_id) [inline, explicit]

Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_id and "enum id " derived_id.

Parameters:
derived_ida int to the derived class' id.

Definition at line 479 of file UserPlugin.hpp.

template<class Creator , typename S = Creator *(*)()>
template<class DerivedClass >
sierra::Plugin::UserPlugin< Creator, S >::Register< DerivedClass >::Register ( int  derived_id,
Signature  create_instance 
) [inline]

Creates a new Register instance. Upon creation, the DerivedClass::createInstance() instance creation function is registered with the derived_id and "enum id " derived_id.

Parameters:
derived_ida int to the derived class' id.

Definition at line 493 of file UserPlugin.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines