ATLAS Offline Software
InnerDetector
InDetConditions
PixelConditionsData
PixelConditionsData
SingleConditionsDatum.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
12
#ifndef SingleConditionsDatum_h
13
#define SingleConditionsDatum_h
14
15
#include <unordered_map>
16
17
18
template
<
typename
T, T LoLimit, T HiLimit, T Default, T NonsenseValue>
19
class
SingleConditionsDatum
{
20
public
:
21
void
defaultValue
(
T
v
){
m_defaultValue
=
v
;}
22
void
useDefaultValue
(
bool
b
){
m_alwaysUseDefault
=
b
;}
23
void
setChanToDefault
(
int
chanNum
){
m_valueMap
[
chanNum
] =
m_defaultValue
;}
24
void
setValue
(
int
chanNum
,
T
value
) {
25
auto
beyondLimits = [=](
auto
v
) {
return
v<LoLimit or v>HiLimit;};
26
m_valueMap
[
chanNum
] = beyondLimits(
value
) ?
m_defaultValue
:
value
;
27
}
28
//
29
T
getValue
(
const
int
chanNum
)
const
{
30
if
(
m_alwaysUseDefault
)
return
m_defaultValue
;
31
auto
itr =
m_valueMap
.find(
chanNum
);
32
if
(itr!=
m_valueMap
.end()) {
return
itr->second; }
33
return
NonsenseValue;
34
}
35
bool
useDefaultValue
()
const
{
return
m_alwaysUseDefault
;}
36
float
defaultValue
()
const
{
return
m_defaultValue
;}
37
38
private
:
39
T
m_defaultValue
{
Default
};
40
bool
m_alwaysUseDefault
{};
41
std::unordered_map<int, T>
m_valueMap
;
42
};
43
44
45
#endif
46
SingleConditionsDatum
Definition:
SingleConditionsDatum.h:19
athena.value
value
Definition:
athena.py:124
SingleConditionsDatum::useDefaultValue
bool useDefaultValue() const
Definition:
SingleConditionsDatum.h:35
SingleConditionsDatum::m_defaultValue
T m_defaultValue
Definition:
SingleConditionsDatum.h:39
SingleConditionsDatum::setValue
void setValue(int chanNum, T value)
Definition:
SingleConditionsDatum.h:24
SingleConditionsDatum::useDefaultValue
void useDefaultValue(bool b)
Definition:
SingleConditionsDatum.h:22
checkCoolLatestUpdate.chanNum
chanNum
Definition:
checkCoolLatestUpdate.py:26
SingleConditionsDatum::m_alwaysUseDefault
bool m_alwaysUseDefault
Definition:
SingleConditionsDatum.h:40
plotBeamSpotMon.b
b
Definition:
plotBeamSpotMon.py:76
python.PyAthena.v
v
Definition:
PyAthena.py:154
SingleConditionsDatum::defaultValue
float defaultValue() const
Definition:
SingleConditionsDatum.h:36
SingleConditionsDatum::m_valueMap
std::unordered_map< int, T > m_valueMap
Definition:
SingleConditionsDatum.h:41
SingleConditionsDatum::getValue
T getValue(const int chanNum) const
Definition:
SingleConditionsDatum.h:29
SingleConditionsDatum::setChanToDefault
void setChanToDefault(int chanNum)
Definition:
SingleConditionsDatum.h:23
Default
SingleConditionsDatum::defaultValue
void defaultValue(T v)
Definition:
SingleConditionsDatum.h:21
TSU::T
unsigned long long T
Definition:
L1TopoDataTypes.h:35
Generated on Wed Sep 3 2025 21:18:46 for ATLAS Offline Software by
1.8.18