/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Public Member Functions | Static Public Member Functions | Protected Types | Static Protected Attributes | Private Member Functions | Static Private Attributes | Friends
SvcMgr Class Reference

#include <SvcMgr.h>

Inheritance diagram for SvcMgr:
Inheritance graph
[legend]
Collaboration diagram for SvcMgr:
Collaboration graph
[legend]

List of all members.

Public Member Functions

const std::string & name ()
virtual bool initialize ()
virtual bool finalize ()

Static Public Member Functions

static SvcMgrinstance ()
static SvcBaseget (const std::string &objName, bool create=false)
static ConcreteType * get (const std::string &objName, bool create=false)

Protected Types

typedef SvcBase *(* ElementCreator )(const std::string &)
typedef std::map< std::string,
ElementCreator
Type2CreatorMap

Static Protected Attributes

static std::list< SvcBase * > m_elements
static std::map< std::string,
SvcBase * > 
name2obj
static std::map< std::string,
ElementCreator
elementCreatorMap

Private Member Functions

 SvcMgr (const std::string &name)

Static Private Attributes

static SvcMgr_instance = 0

Friends

class SvcFactory

Detailed Description

Definition at line 7 of file SvcMgr.h.


Member Typedef Documentation

typedef SvcBase *(* ElementMgr< SvcBase >::ElementCreator)(const std::string &) [protected, inherited]

Definition at line 41 of file ElementMgr.h.

typedef std::map<std::string, ElementCreator> ElementMgr< SvcBase >::Type2CreatorMap [protected, inherited]

Definition at line 42 of file ElementMgr.h.


Constructor & Destructor Documentation

SvcMgr::SvcMgr ( const std::string &  name) [private]

Definition at line 14 of file SvcMgr.cc.

    : ElementMgr<SvcBase>(objname)
{
    for ( std::list<SvcBase*>::iterator it = m_elements.begin(); it != m_elements.end(); ++it ) {
        LogInfo << "Load service    : " << (*it)->name() << std::endl;
    }
}

Member Function Documentation

SvcMgr * SvcMgr::instance ( ) [static]

Definition at line 6 of file SvcMgr.cc.

{
    if ( _instance == 0 ) {
        _instance = new SvcMgr("SvcMgr");
    }
    return _instance;
}
const std::string& ElementMgr< SvcBase >::name ( void  ) [inline, inherited]

Definition at line 16 of file ElementMgr.h.

{ return m_name; }
static SvcBase * ElementMgr< SvcBase >::get ( const std::string &  objName,
bool  create = false 
) [static, inherited]
static ConcreteType* ElementMgr< SvcBase >::get ( const std::string &  objName,
bool  create = false 
) [static, inherited]
virtual bool ElementMgr< SvcBase >::initialize ( ) [virtual, inherited]
virtual bool ElementMgr< SvcBase >::finalize ( ) [virtual, inherited]

Friends And Related Function Documentation

friend class SvcFactory [friend]

Definition at line 18 of file SvcMgr.h.


Member Data Documentation

SvcMgr * SvcMgr::_instance = 0 [static, private]

Definition at line 19 of file SvcMgr.h.

std::list<SvcBase *> ElementMgr< SvcBase >::m_elements [static, protected, inherited]

Definition at line 37 of file ElementMgr.h.

std::map<std::string, SvcBase *> ElementMgr< SvcBase >::name2obj [static, protected, inherited]

Definition at line 39 of file ElementMgr.h.

std::map<std::string, ElementCreator> ElementMgr< SvcBase >::elementCreatorMap [static, protected, inherited]

Definition at line 43 of file ElementMgr.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 09:50:18 for LafKernel by doxygen 1.7.4