ATLAS Offline Software
Loading...
Searching...
No Matches
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

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) {};
const std::string & name() const

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.

64{""};

◆ m_outsideRangeValue

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

Definition at line 66 of file L1ThresholdBase.h.

class to implement a L1 threshold cut that varies with eta

◆ m_rangeValues

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

Definition at line 65 of file L1ThresholdBase.h.

65{};

The documentation for this class was generated from the following file: