| # Gaudi Framework, version v20r3
Generated: 24 Nov 2008

# ISvcManager.h

Go to the documentation of this file.

    00001 // $Id: ISvcManager.h,v 1.7 2008/11/10 15:29:09 marcocle Exp $
    00002 #ifndef GAUDIKERNEL_ISVCMANAGER_H
    00003 #define GAUDIKERNEL_ISVCMANAGER_H
    00004
    00005 // Include files
    00006 #include "GaudiKernel/IInterface.h"
    00007 #include <string>
    00008
    00009 // Forward class declaration
    00010 class IService;
    00011 class ISvcLocator;
    00012 class ISvcFactory;
    00013
    00014 // Declaration of the interface ID ( interface id, major version, minor version)
    00015 static const InterfaceID IID_ISvcManager(13, 3 , 1);
    00016
    00026 class ISvcManager : virtual public  IInterface  {
    00027 public:
    00028
    00030   static const InterfaceID& interfaceID() { return IID_ISvcManager; }
    00031
    00037   virtual StatusCode addService( IService* svc, int prio ) = 0;
    00038
    00044   virtual StatusCode addService( const std::string& typ, const std::string& nam, int prio ) = 0;
    00045
    00051   virtual StatusCode removeService( IService* svc ) = 0;
    00052
    00058   virtual StatusCode removeService( const std::string& nam ) = 0;
    00059
    00066   virtual StatusCode declareSvcFactory( const ISvcFactory& factory,
    00067                                         const std::string& svctype ) = 0;
    00068
    00075   virtual StatusCode declareSvcType( const std::string& svcname,
    00076                                      const std::string& svctype ) = 0;
    00077
    00086   virtual StatusCode createService( const std::string& svctype,
    00087                                     const std::string& svcname,
    00088                                     IService*& svc ) = 0;
    00089
    00096   virtual StatusCode getFactory(    const std::string& svc_type,
    00097                                     const ISvcFactory*& fac) const = 0;
    00098
    00103   virtual StatusCode initializeServices() = 0;
    00104
    00109   virtual StatusCode startServices() = 0;
    00110
    00115   virtual StatusCode stopServices() = 0;
    00116
    00121   virtual StatusCode finalizeServices() = 0;
    00122
    00127   virtual StatusCode reinitializeServices() = 0;
    00128
    00133   virtual StatusCode restartServices() = 0;
    00134
    00135   virtual int getPriority(const std::string& name) const = 0;
    00136   virtual StatusCode setPriority(const std::string& name, int pri) = 0;
    00137
    00139   virtual bool loopCheckEnabled() const = 0;
    00141   virtual void setLoopCheckEnabled(bool en = true) = 0;
    00142
    00143 };
    00144
    00145 #endif  // GAUDIKERNEL_ISVCMANAGER_H
    00146