ATLAS Offline Software
Control
AthToolSupport
AsgTools
AsgTools
PropertyMgr.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ASGTOOLS_PROPERTYMGR_H
6
#define ASGTOOLS_PROPERTYMGR_H
7
8
// Local include(s):
9
10
#ifndef XAOD_STANDALONE
11
# include "GaudiKernel/PropertyMgr.h"
12
#else // not XAOD_STANDALONE
13
14
// System include(s):
15
#include <string>
16
#include <map>
17
18
// Local include(s):
19
#include "
AsgMessaging/MsgStream.h
"
20
#include "
AsgTools/Property.h
"
21
#include "
AsgMessaging/StatusCode.h
"
22
34
class
PropertyMgr {
35
36
public
:
38
typedef
Property::Type
Type
;
39
41
typedef
std::map< std::string, Property* > PropMap_t;
42
44
PropertyMgr();
46
~PropertyMgr();
47
50
52
template
<
typename
T >
53
Property
* declareProperty(
const
std::string&
name
,
T
& loc );
54
56
StatusCode
setProperty(
const
std::string&
name
,
const
char
*
value
);
58
template
<
typename
T >
59
StatusCode
setProperty(
const
std::string&
name
,
const
T
&
val
);
60
62
template
<
typename
T >
63
StatusCode
getProperty
(
const
std::string&
name
,
T
&
val
)
const
;
64
66
const
Property
*
getProperty
(
const
std::string&
name
)
const
;
67
69
const
PropMap_t& getProperties()
const
;
70
72
75
77
MsgStream&
msg
()
const
;
78
80
MsgStream&
msg
(
MSG::Level
level
)
const
;
81
83
84
private
:
86
PropMap_t m_props;
88
mutable
MsgStream m_msg;
89
90
};
// class PropertyMgr
91
92
// Include the template implementations:
93
#include "
AsgTools/PropertyMgr.icc
"
94
95
#endif // not XAOD_STANDALONE
96
#endif // ASGTOOLS_PROPERTYMGR_H
Property::Type
Type
Property type enumeration.
Definition:
Property.h:27
athena.value
value
Definition:
athena.py:124
Property
Support class for PropertyMgr.
Definition:
Property.h:23
python.iconfTool.models.loaders.level
level
Definition:
loaders.py:20
Type
RootType Type
Definition:
TrigTSerializer.h:30
TrigConf::MSGTC::Level
Level
Definition:
Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
PropertyMgr.icc
Property.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TestMuonSF::getProperty
T getProperty(const asg::IAsgTool *interface_tool, const std::string &prop_name)
Definition:
MuonSFTestHelper.cxx:17
StatusCode.h
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
Pythia8_RapidityOrderMPI.val
val
Definition:
Pythia8_RapidityOrderMPI.py:14
python.AutoConfigFlags.msg
msg
Definition:
AutoConfigFlags.py:7
TSU::T
unsigned long long T
Definition:
L1TopoDataTypes.h:35
MsgStream.h
Generated on Sun Dec 22 2024 21:16:43 for ATLAS Offline Software by
1.8.18