Gaudi Framework, version v22r2

Home   Generated: Tue May 10 2011
Public Member Functions

ISvcManager Class Reference

The ISvcManager is the interface implemented by the Service Factory in the Application Manager to support management functions. More...

#include <GaudiKernel/ISvcManager.h>

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

List of all members.

Public Member Functions

 DeclareInterfaceID (ISvcManager, 4, 0)
 InterfaceID.
virtual StatusCode addService (IService *svc, int prio=10)=0
 Add a service to the "active" list of services of the factory.
virtual StatusCode addService (const std::string &typ, const std::string &nam, int prio)
 Add a service to the "active" list of services of the factory.
virtual StatusCode addService (const Gaudi::Utils::TypeNameString &nametype, int prio=10)=0
 Add a service to the "active" list of services of the factory.
virtual StatusCode removeService (IService *svc)=0
 Remove a service from the "active" list of services of the factory.
virtual StatusCode removeService (const std::string &nam)=0
 Remove a service from the "active" list of services of the factory.
virtual StatusCode declareSvcFactory (const ISvcFactory &, const std::string &)
 Declare an abstract factory for a given service type.
virtual StatusCode declareSvcType (const std::string &svcname, const std::string &svctype)=0
 Declare the type of the service to be used when crating a given service name.
virtual SmartIF< IService > & createService (const Gaudi::Utils::TypeNameString &nametype)=0
 Creates and instance of a service type that has been declared beforehand and assigns it a name.
virtual StatusCode createService (const std::string &svctype, const std::string &svcname, IService *&svc)
 Creates and instance of a service type that has been declared beforehand and assigns it a name.
virtual StatusCode getFactory (const std::string &, const ISvcFactory *&) const
 Access to service factory by name to create unmanaged services.
virtual StatusCode initializeServices ()
 Initializes the list of "active" services.
virtual StatusCode startServices ()
 Starts the list of "active" services.
virtual StatusCode stopServices ()
 Stops the list of "active" services.
virtual StatusCode finalizeServices ()
 Finalizes the list of "active" services.
virtual StatusCode reinitializeServices ()
 Reinitializes the list of "active" services.
virtual StatusCode restartServices ()
 Restarts the list of "active" services.
virtual int getPriority (const std::string &name) const =0
virtual StatusCode setPriority (const std::string &name, int pri)=0
virtual bool loopCheckEnabled () const =0
 Get the value of the initialization loop check flag.
virtual void setLoopCheckEnabled (bool en=true)=0
 Set the value of the initialization loop check flag.

Detailed Description

The ISvcManager is the interface implemented by the Service Factory in the Application Manager to support management functions.

Clients use this interface to declare abstract service factories, and to create concrete instances of services.

Author:
Pere Mato

Definition at line 29 of file ISvcManager.h.


Member Function Documentation

virtual StatusCode ISvcManager::addService ( IService svc,
int  prio = 10 
) [pure virtual]

Add a service to the "active" list of services of the factory.

Parameters:
svcPointer to the service
Returns:
StatusCode indicating success or failure.
virtual StatusCode ISvcManager::addService ( const Gaudi::Utils::TypeNameString &  nametype,
int  prio = 10 
) [pure virtual]

Add a service to the "active" list of services of the factory.

Parameters:
svcPointer to the service
Returns:
StatusCode indicating success or failure.
virtual StatusCode ISvcManager::addService ( const std::string typ,
const std::string nam,
int  prio 
) [inline, virtual]

Add a service to the "active" list of services of the factory.

Parameters:
svcPointer to the service
Returns:
StatusCode indicating success or failure.

Definition at line 47 of file ISvcManager.h.

                                                                                       {
    return addService(Gaudi::Utils::TypeNameString(nam,typ), prio);
  }
virtual SmartIF<IService>& ISvcManager::createService ( const Gaudi::Utils::TypeNameString &  nametype ) [pure virtual]

Creates and instance of a service type that has been declared beforehand and assigns it a name.

It returns a pointer to an IService.

Parameters:
nametypename/type of the service to create
Returns:
SmartIF to the created service.
virtual StatusCode ISvcManager::createService ( const std::string svctype,
const std::string svcname,
IService *&  svc 
) [inline, virtual]

Creates and instance of a service type that has been declared beforehand and assigns it a name.

It returns a pointer to an IService.

Parameters:
svctypeService type name
svcnameService name to be set
svcReturned service pointer
Returns:
StatusCode indicating success or failure.

Definition at line 113 of file ISvcManager.h.

                                                    {
    SmartIF<IService> s = createService(svctype + "/" + svcname);
    svc = s.get();
    if (svc) {
      svc->addRef(); // Needed to maintain the correct reference counting.
      return StatusCode::SUCCESS;
    }
    return StatusCode::FAILURE;
  }
ISvcManager::DeclareInterfaceID ( ISvcManager  ,
,
 
)
virtual StatusCode ISvcManager::declareSvcFactory ( const ISvcFactory &  ,
const std::string  
) [inline, virtual]

Declare an abstract factory for a given service type.

Parameters:
factoryAbstract factory reference
svctypeService type name
Returns:
StatusCode indicating success or failure.

Definition at line 80 of file ISvcManager.h.

                                                                       {
    // This function is never used.
    return StatusCode::FAILURE;
  }
virtual StatusCode ISvcManager::declareSvcType ( const std::string svcname,
const std::string svctype 
) [pure virtual]

Declare the type of the service to be used when crating a given service name.

Parameters:
svcnameService name
svctypeService type name
Returns:
StatusCode indicating success or failure.
virtual StatusCode ISvcManager::finalizeServices (  ) [inline, virtual]

Finalizes the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 159 of file ISvcManager.h.

{ return finalize(); }
virtual StatusCode ISvcManager::getFactory ( const std::string ,
const ISvcFactory *&   
) const [inline, virtual]

Access to service factory by name to create unmanaged services.

Parameters:
svc_type[IN] Name of the service type
fac[OUT] Reference to store pointer to service factory
Returns:
StatusCode indicating success or failure.

Definition at line 131 of file ISvcManager.h.

                                                                       {
    // This function is never used.
    return StatusCode::FAILURE;
  }
virtual int ISvcManager::getPriority ( const std::string name ) const [pure virtual]
virtual StatusCode ISvcManager::initializeServices (  ) [inline, virtual]

Initializes the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 141 of file ISvcManager.h.

{ return initialize(); }
virtual bool ISvcManager::loopCheckEnabled (  ) const [pure virtual]

Get the value of the initialization loop check flag.

virtual StatusCode ISvcManager::reinitializeServices (  ) [inline, virtual]

Reinitializes the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 165 of file ISvcManager.h.

{ return reinitialize(); }
virtual StatusCode ISvcManager::removeService ( const std::string nam ) [pure virtual]

Remove a service from the "active" list of services of the factory.

Parameters:
svcPointer to the service
Returns:
StatusCode indicating success or failure.
virtual StatusCode ISvcManager::removeService ( IService svc ) [pure virtual]

Remove a service from the "active" list of services of the factory.

Parameters:
svcPointer to the service
Returns:
StatusCode indicating success or failure.
virtual StatusCode ISvcManager::restartServices (  ) [inline, virtual]

Restarts the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 171 of file ISvcManager.h.

{ return restart(); }
virtual void ISvcManager::setLoopCheckEnabled ( bool  en = true ) [pure virtual]

Set the value of the initialization loop check flag.

virtual StatusCode ISvcManager::setPriority ( const std::string name,
int  pri 
) [pure virtual]
virtual StatusCode ISvcManager::startServices (  ) [inline, virtual]

Starts the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 147 of file ISvcManager.h.

{ return start(); }
virtual StatusCode ISvcManager::stopServices (  ) [inline, virtual]

Stops the list of "active" services.

Returns:
StatusCode indicating success or failure.

Definition at line 153 of file ISvcManager.h.

{ return stop(); }

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

Generated at Tue May 10 2011 18:54:54 for Gaudi Framework, version v22r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004