| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

DLLClassManager.h
Go to the documentation of this file.
1 #ifndef GAUDI_DLLCLASSMANAGER_H
2 #define GAUDI_DLLCLASSMANAGER_H 1
3
4 // Include files
5 #include "GaudiKernel/IClassManager.h"
6 #include "GaudiKernel/Kernel.h"
7 #include "GaudiKernel/SmartIF.h"
8 #include <list>
9 #include <map>
10 #include <string>
11
12 // Forward declarations
13 class ISvcLocator;
14 class ICnvManager;
15 class IAlgManager;
16 class ISvcManager;
17 class IObjManager;
18
19 //
20 // ClassName: DLLClassManager
21 //
22 // Description: The ClassManager class is in charge of managing (i.e. loading and
23 // declaring dynamic libraries containing concrete class factories).
24 //
25 // Author: Pere Mato
26 //
27 class DLLClassManager : public implements<IClassManager>
28 {
29 public:
30 // default creator
31 DLLClassManager( IInterface* iface );
32 // virtual destructor
33 ~DLLClassManager() override = default;
34
35 // implementation of IClassManager::loadModule
36 StatusCode loadModule( const std::string& module, bool fireIncident = true ) override;
37
39 StatusCode queryInterface( const InterfaceID& iid, void** pinterface ) override;
40
41 private:
42 SmartIF<ISvcLocator> m_svclocator; // Service locator reference
43 SmartIF<IMessageSvc> m_msgsvc; // Message Service reference
44 SmartIF<IInterface> m_pOuter; // Interface hub reference (ApplicationMgr)
45 };
46 #endif // GAUDI_DLLCLASSMANAGER_H
SmartIF< ISvcLocator >
Kernel.h
implements
Base class used to implement the interfaces.
Definition: implements.h:9
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
DLLClassManager::loadModule
StatusCode loadModule(const std::string &module, bool fireIncident=true) override
Definition: DLLClassManager.cpp:30
ISvcManager
The ISvcManager is the interface implemented by the Service Factory in the Application Manager to sup...
Definition: ISvcManager.h:28
IAlgManager
The IAlgManager is the interface implemented by the Algorithm Factory in the Application Manager to s...
Definition: IAlgManager.h:27
std::string
STL class.
InterfaceID
Interface ID class.
Definition: IInterface.h:29
DLLClassManager::m_msgsvc
SmartIF< IMessageSvc > m_msgsvc
Definition: DLLClassManager.h:43
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:28
IInterface
Definition of the basic interface.
Definition: IInterface.h:277
SmartIF.h
DLLClassManager
Definition: DLLClassManager.h:27
DLLClassManager::~DLLClassManager
~DLLClassManager() override=default
DLLClassManager::queryInterface
StatusCode queryInterface(const InterfaceID &iid, void **pinterface) override
implementation of IInterface::queryInterface
Definition: DLLClassManager.cpp:73
DLLClassManager::DLLClassManager
DLLClassManager(IInterface *iface)
Definition: DLLClassManager.cpp:19
DLLClassManager::m_svclocator
SmartIF< ISvcLocator > m_svclocator
Definition: DLLClassManager.h:42
DLLClassManager::m_pOuter
SmartIF< IInterface > m_pOuter
Definition: DLLClassManager.h:44
IClassManager.h