ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue > Class Template Reference

#include <SingleConditionsDatum.h>

Collaboration diagram for SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >:

Public Member Functions

void defaultValue (T v)
 
void useDefaultValue (bool b)
 
void setChanToDefault (int chanNum)
 
void setValue (int chanNum, T value)
 
getValue (const int chanNum) const
 
bool useDefaultValue () const
 
float defaultValue () const
 

Private Attributes

m_defaultValue {Default}
 
bool m_alwaysUseDefault {}
 
std::unordered_map< int, T > m_valueMap
 

Detailed Description

template<typename T, T LoLimit, T HiLimit, T Default, T NonsenseValue>
class SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >

Definition at line 19 of file SingleConditionsDatum.h.

Member Function Documentation

◆ defaultValue() [1/2]

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
float SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::defaultValue ( ) const
inline

Definition at line 36 of file SingleConditionsDatum.h.

36 {return m_defaultValue;}

◆ defaultValue() [2/2]

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
void SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::defaultValue ( v)
inline

Definition at line 21 of file SingleConditionsDatum.h.

21 {m_defaultValue = v;}

◆ getValue()

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
T SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::getValue ( const int  chanNum) const
inline

Definition at line 29 of file SingleConditionsDatum.h.

29  {
31  auto itr = m_valueMap.find(chanNum);
32  if (itr!=m_valueMap.end()) { return itr->second; }
33  return NonsenseValue;
34  }

◆ setChanToDefault()

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
void SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::setChanToDefault ( int  chanNum)
inline

Definition at line 23 of file SingleConditionsDatum.h.

◆ setValue()

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
void SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::setValue ( int  chanNum,
value 
)
inline

Definition at line 24 of file SingleConditionsDatum.h.

24  {
25  auto beyondLimits = [=](auto v) {return v<LoLimit or v>HiLimit;};
26  m_valueMap[chanNum] = beyondLimits(value) ? m_defaultValue : value;
27  }

◆ useDefaultValue() [1/2]

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
bool SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::useDefaultValue ( ) const
inline

Definition at line 35 of file SingleConditionsDatum.h.

35 {return m_alwaysUseDefault;}

◆ useDefaultValue() [2/2]

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
void SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::useDefaultValue ( bool  b)
inline

Definition at line 22 of file SingleConditionsDatum.h.

Member Data Documentation

◆ m_alwaysUseDefault

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
bool SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::m_alwaysUseDefault {}
private

Definition at line 40 of file SingleConditionsDatum.h.

◆ m_defaultValue

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
T SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::m_defaultValue {Default}
private

Definition at line 39 of file SingleConditionsDatum.h.

◆ m_valueMap

template<typename T , T LoLimit, T HiLimit, T Default, T NonsenseValue>
std::unordered_map<int, T> SingleConditionsDatum< T, LoLimit, HiLimit, Default, NonsenseValue >::m_valueMap
private

Definition at line 41 of file SingleConditionsDatum.h.


The documentation for this class was generated from the following file:
athena.value
value
Definition: athena.py:124
SingleConditionsDatum::m_defaultValue
T m_defaultValue
Definition: SingleConditionsDatum.h:39
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::m_valueMap
std::unordered_map< int, T > m_valueMap
Definition: SingleConditionsDatum.h:41