OpenAB  1.0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
OpenAB_Plugin::Factory< __C, __P > Class Template Referenceabstract

#include <Plugin.hpp>

Collaboration diagram for OpenAB_Plugin::Factory< __C, __P >:

Public Types

typedef LinkedList< Factory
< __C, __P > > 
typeList
 List of the specialized Factories. More...
 
typedef void(* PluginLoadedCallback )(const std::string &pluginName)
 

Public Member Functions

 Factory (std::string name)
 Constructor. More...
 
 ~Factory ()
 Destructor, virtual by default. More...
 
virtual __C * newIstance (const __P &)=0
 
std::string getName ()
 

Static Public Member Functions

static void setPluginLoadedCallback (PluginLoadedCallback callback)
 

Static Public Attributes

static typeList factories
 

Member Typedef Documentation

template<typename __C, typename __P>
typedef void(* OpenAB_Plugin::Factory< __C, __P >::PluginLoadedCallback)(const std::string &pluginName)
template<typename __C, typename __P>
typedef LinkedList<Factory< __C , __P > > OpenAB_Plugin::Factory< __C, __P >::typeList

List of the specialized Factories.

Constructor & Destructor Documentation

template<typename __C, typename __P>
OpenAB_Plugin::Factory< __C, __P >::Factory ( std::string  name)
inline

Constructor.

template<typename __C, typename __P>
OpenAB_Plugin::Factory< __C, __P >::~Factory ( )
inline

Destructor, virtual by default.

Member Function Documentation

template<typename __C, typename __P>
std::string OpenAB_Plugin::Factory< __C, __P >::getName ( )
inline
template<typename __C, typename __P>
virtual __C* OpenAB_Plugin::Factory< __C, __P >::newIstance ( const __P &  )
pure virtual
template<typename __C, typename __P>
static void OpenAB_Plugin::Factory< __C, __P >::setPluginLoadedCallback ( PluginLoadedCallback  callback)
inlinestatic

Member Data Documentation

template<typename __C, typename __P>
typeList OpenAB_Plugin::Factory< __C, __P >::factories
static

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