Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework
master (d98a2936)
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
i
l
m
n
o
p
q
r
s
t
v
Enumerator
a
b
c
d
e
f
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Properties
Related Functions
:
a
b
c
d
e
g
h
i
m
o
p
r
s
t
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
b
c
e
f
g
h
i
l
m
o
p
r
s
t
u
z
Variables
a
b
c
d
e
g
h
i
m
o
p
q
r
s
t
v
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
Enumerations
Enumerator
Macros
_
a
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
DLLClassManager.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
// Include files
14
#include <
GaudiKernel/IClassManager.h
>
15
#include <
GaudiKernel/Kernel.h
>
16
#include <
GaudiKernel/SmartIF.h
>
17
#include <list>
18
#include <map>
19
#include <string>
20
21
// Forward declarations
22
class
ISvcLocator
;
23
class
ICnvManager;
24
class
IAlgManager
;
25
class
ISvcManager
;
26
class
IObjManager;
27
class
IMessageSvc
;
28
29
//
30
// ClassName: DLLClassManager
31
//
32
// Description: The ClassManager class is in charge of managing (i.e. loading and
33
// declaring dynamic libraries containing concrete class factories).
34
//
35
// Author: Pere Mato
36
//
37
class
DLLClassManager
:
public
implements
<IClassManager> {
38
public
:
39
// default creator
40
DLLClassManager
(
IInterface
* iface );
41
42
// implementation of IClassManager::loadModule
43
StatusCode
loadModule
(
const
std::string& module,
bool
fireIncident =
true
)
override
;
44
46
StatusCode
queryInterface
(
const
InterfaceID
& iid,
void
** pinterface )
override
;
47
void
const
*
i_cast
(
const
InterfaceID
& iid )
const override
;
48
49
private
:
50
SmartIF<ISvcLocator>
m_svclocator
;
// Service locator reference
51
SmartIF<IMessageSvc>
m_msgsvc
;
// Message Service reference
52
SmartIF<IInterface>
m_pOuter
;
// Interface hub reference (ApplicationMgr)
53
};
IMessageSvc
Definition:
IMessageSvc.h:34
DLLClassManager::queryInterface
StatusCode queryInterface(const InterfaceID &iid, void **pinterface) override
implementation of IInterface::queryInterface
Definition:
DLLClassManager.cpp:69
ISvcLocator
Definition:
ISvcLocator.h:42
DLLClassManager::loadModule
StatusCode loadModule(const std::string &module, bool fireIncident=true) override
Definition:
DLLClassManager.cpp:30
ISvcManager
Definition:
ISvcManager.h:30
DLLClassManager::m_svclocator
SmartIF< ISvcLocator > m_svclocator
Definition:
DLLClassManager.h:50
DLLClassManager
Definition:
DLLClassManager.h:37
IAlgManager
Definition:
IAlgManager.h:34
SmartIF.h
DLLClassManager::m_pOuter
SmartIF< IInterface > m_pOuter
Definition:
DLLClassManager.h:52
IClassManager.h
StatusCode
Definition:
StatusCode.h:64
DLLClassManager::m_msgsvc
SmartIF< IMessageSvc > m_msgsvc
Definition:
DLLClassManager.h:51
SmartIF< ISvcLocator >
DLLClassManager::DLLClassManager
DLLClassManager(IInterface *iface)
Definition:
DLLClassManager.cpp:25
implements
Base class used to implement the interfaces.
Definition:
implements.h:19
DLLClassManager::i_cast
void const * i_cast(const InterfaceID &iid) const override
Definition:
DLLClassManager.cpp:76
Kernel.h
IInterface
Definition:
IInterface.h:225
InterfaceID
Definition:
IInterface.h:38
GaudiCoreSvc
src
ApplicationMgr
DLLClassManager.h
Generated on Wed Aug 13 2025 09:05:02 for The Gaudi Framework by
1.8.18