ATLAS Offline Software
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
TrigConf::ValueWithEtaDependence< T > Class Template Reference

class to implement a L1 threshold cut that varies with eta More...

#include <L1ThresholdBase.h>

Collaboration diagram for TrigConf::ValueWithEtaDependence< T >:

Classes

class  RangeValue
 

Public Types

typedef std::vector< RangeValue >::const_iterator const_iterator
 

Public Member Functions

 ValueWithEtaDependence (const std::string &name)
 
const std::string & name () const
 
bool empty () const
 
size_t size () const
 
const T & at (int eta) const
 
std::optional< std::reference_wrapper< const T > > outsideRangeValue () const
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
void addRangeValue (const T &value, int etaMin, int etaMax, unsigned int priority, bool symmetric=true)
 
void setOutsideRangeValue (const T &value)
 

Private Attributes

const std::string m_name {""}
 
std::vector< RangeValuem_rangeValues {}
 
std::optional< T > m_outsideRangeValue {std::nullopt}
 

Detailed Description

template<class T>
class TrigConf::ValueWithEtaDependence< T >

class to implement a L1 threshold cut that varies with eta

A vector of RangeValue objects describes this eta dependence. Each entry has an eta-range and a corresponding cut value. Overlapping ranges are resolved by looking at the priority (larger wins)

Use case: for instance the L1 EM thresholds change as a function of eta.

Definition at line 35 of file L1ThresholdBase.h.

Member Typedef Documentation

◆ const_iterator

template<class T >
typedef std::vector<RangeValue>::const_iterator TrigConf::ValueWithEtaDependence< T >::const_iterator

Definition at line 52 of file L1ThresholdBase.h.

Constructor & Destructor Documentation

◆ ValueWithEtaDependence()

template<class T >
TrigConf::ValueWithEtaDependence< T >::ValueWithEtaDependence ( const std::string &  name)
inline

Definition at line 53 of file L1ThresholdBase.h.

53 : m_name(name) {};

Member Function Documentation

◆ addRangeValue()

template<class T >
void TrigConf::ValueWithEtaDependence< T >::addRangeValue ( const T &  value,
int  etaMin,
int  etaMax,
unsigned int  priority,
bool  symmetric = true 
)

◆ at()

template<class T >
const T& TrigConf::ValueWithEtaDependence< T >::at ( int  eta) const

◆ begin()

template<class T >
const_iterator TrigConf::ValueWithEtaDependence< T >::begin ( ) const
noexcept

◆ empty()

template<class T >
bool TrigConf::ValueWithEtaDependence< T >::empty ( ) const

◆ end()

template<class T >
const_iterator TrigConf::ValueWithEtaDependence< T >::end ( ) const
noexcept

◆ name()

template<class T >
const std::string& TrigConf::ValueWithEtaDependence< T >::name ( ) const
inline

Definition at line 54 of file L1ThresholdBase.h.

54 { return m_name; }

◆ outsideRangeValue()

template<class T >
std::optional<std::reference_wrapper<const T> > TrigConf::ValueWithEtaDependence< T >::outsideRangeValue ( ) const

◆ setOutsideRangeValue()

template<class T >
void TrigConf::ValueWithEtaDependence< T >::setOutsideRangeValue ( const T &  value)

◆ size()

template<class T >
size_t TrigConf::ValueWithEtaDependence< T >::size ( ) const

Member Data Documentation

◆ m_name

template<class T >
const std::string TrigConf::ValueWithEtaDependence< T >::m_name {""}
private

Definition at line 64 of file L1ThresholdBase.h.

◆ m_outsideRangeValue

template<class T >
std::optional<T> TrigConf::ValueWithEtaDependence< T >::m_outsideRangeValue {std::nullopt}
private

Definition at line 66 of file L1ThresholdBase.h.

◆ m_rangeValues

template<class T >
std::vector<RangeValue> TrigConf::ValueWithEtaDependence< T >::m_rangeValues {}
private

Definition at line 65 of file L1ThresholdBase.h.


The documentation for this class was generated from the following file:
TrigConf::ValueWithEtaDependence::m_name
const std::string m_name
Definition: L1ThresholdBase.h:64
TrigConf::ValueWithEtaDependence::name
const std::string & name() const
Definition: L1ThresholdBase.h:54