RSC  0.19.0
rsc::logging::LoggingSystemFactory Class Reference

Singleton factory for managing and instantiating LoggingSystem implementations. More...

#include <LoggingSystemFactory.h>

Inheritance diagram for rsc::logging::LoggingSystemFactory:
Inheritance graph
Collaboration diagram for rsc::logging::LoggingSystemFactory:
Collaboration graph

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 ImplMapBaseProxyimplsBase () const throw ()
 Return a container-like object holding all registered implementations. More...
 
ImplMapProxyimpls () throw ()
 Return a container-like object holding all registered implementations. More...
 
const ImplMapProxyimpls () 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, CreateFunctionImplMap
 
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, CreateFunctionImplMap
 
- 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_
 

Detailed Description

Singleton factory for managing and instantiating LoggingSystem implementations.

Author
jmoringe

Definition at line 47 of file LoggingSystemFactory.h.

Constructor & Destructor Documentation

rsc::logging::LoggingSystemFactory::LoggingSystemFactory ( )
private

Definition at line 34 of file LoggingSystemFactory.cpp.

References rsc::logging::ConsoleLoggingSystem::create(), and rsc::patterns::Factory< std::string, LoggingSystem >::impls().

Here is the call graph for this function:

rsc::logging::LoggingSystemFactory::~LoggingSystemFactory ( )
virtual

Definition at line 38 of file LoggingSystemFactory.cpp.

Friends And Related Function Documentation

friend class patterns::Singleton< LoggingSystemFactory >
friend

Definition at line 49 of file LoggingSystemFactory.h.


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