RSC
0.19.0
|
Singleton factory for managing and instantiating LoggingSystem implementations. More...
#include <LoggingSystemFactory.h>
Public Member Functions | |
virtual | ~LoggingSystemFactory () |
Public Member Functions inherited from rsc::patterns::Singleton< T > | |
virtual | ~Singleton () |
Public Member Functions inherited from rsc::patterns::Factory< std::string, LoggingSystem > | |
Factory () | |
virtual | ~Factory () |
const std::type_info & | GetInterfaceType () const throw () |
Return the type information of the interface type of the factory. More... | |
const ImplMapBaseProxy & | implsBase () const throw () |
Return a container-like object holding all registered implementations. More... | |
ImplMapProxy & | impls () throw () |
Return a container-like object holding all registered implementations. More... | |
const ImplMapProxy & | impls () const throw () |
Return a container-like object holding all registered implementations. More... | |
FactoryBase< std::string >::type_and_storage | createBase (const std::string &key, const runtime::Properties &properties_=runtime::Properties()) |
LoggingSystem * | createInst (const std::string &key, const runtime::Properties &properties_=runtime::Properties()) |
Create and return an instance of the implementation designated by key. More... | |
Private Member Functions | |
LoggingSystemFactory () | |
Friends | |
class | patterns::Singleton< LoggingSystemFactory > |
Additional Inherited Members | |
Public Types inherited from rsc::patterns::Factory< std::string, LoggingSystem > | |
typedef FactoryBase< std::string > | base |
typedef base::KeyType | KeyType |
typedef LoggingSystem | InterfaceType |
typedef boost::function1< InterfaceType *, const runtime::Properties & > | CreateFunction |
typedef std::map< std::string, CreateFunction > | ImplMap |
typedef base::ImplMap | ImplMapBase |
typedef base::ImplMapProxy | ImplMapBaseProxy |
Public Types inherited from rsc::patterns::FactoryBase< std::string > | |
typedef std::string | KeyType |
typedef boost::function1< void *, const runtime::Properties & > | CreateFunction |
typedef std::pair< const std::type_info *, void * > | type_and_storage |
typedef std::map< std::string, CreateFunction > | ImplMap |
Static Public Member Functions inherited from rsc::patterns::Singleton< T > | |
static T & | getInstance () |
Retrieve the singleton instance, creating it if necessary. More... | |
static void | killInstance () |
This function can be used to make sure the instance is deleted at a particular time. More... | |
Protected Member Functions inherited from rsc::patterns::Factory< std::string, LoggingSystem > | |
virtual void | register_ (const std::string &key, const CreateFunction &create_function_) |
virtual void | unregister (const std::string &key) |
Protected Attributes inherited from rsc::patterns::Factory< std::string, LoggingSystem > | |
ImplMapBase | impl_map_base_ |
ImplMapBaseProxy | impl_map_base_proxy_ |
ImplMap | impl_map_ |
ImplMapProxy | impl_map_proxy_ |
Singleton factory for managing and instantiating LoggingSystem implementations.
Definition at line 47 of file LoggingSystemFactory.h.
|
private |
Definition at line 34 of file LoggingSystemFactory.cpp.
References rsc::logging::ConsoleLoggingSystem::create(), and rsc::patterns::Factory< std::string, LoggingSystem >::impls().
|
virtual |
Definition at line 38 of file LoggingSystemFactory.cpp.
|
friend |
Definition at line 49 of file LoggingSystemFactory.h.