ATLAS Offline Software
Loading...
Searching...
No Matches
HICaloRange Class Reference

#include <HICaloRange.h>

Collaboration diagram for HICaloRange:

Public Member Functions

bool LayerInRange (float eta, int layer)
float getRangeMin (int layer) const
float getRangeMax (int layer) const

Static Public Member Functions

static const HICaloRangegetRange ()

Private Types

typedef std::pair< float, float > range_t

Private Member Functions

 HICaloRange ()
void initializeRange ()

Private Attributes

std::unordered_map< int, range_tm_range

Detailed Description

Definition at line 11 of file HICaloRange.h.

Member Typedef Documentation

◆ range_t

typedef std::pair<float,float> HICaloRange::range_t
private

Definition at line 42 of file HICaloRange.h.

Constructor & Destructor Documentation

◆ HICaloRange()

HICaloRange::HICaloRange ( )
private

Definition at line 8 of file HICaloRange.cxx.

9{
11}
void initializeRange()

Member Function Documentation

◆ getRange()

const HICaloRange & HICaloRange::getRange ( )
static

Definition at line 13 of file HICaloRange.cxx.

14{
15 static const HICaloRange range = HICaloRange();
16 return range;
17}

◆ getRangeMax()

float HICaloRange::getRangeMax ( int layer) const
inline

Definition at line 27 of file HICaloRange.h.

27 {
28 float result = 0.;
29 auto it = m_range.find(layer);
30 if (it != m_range.end()){
31 result = it->second.second;
32 }
33 return result;
34 }
std::unordered_map< int, range_t > m_range
Definition HICaloRange.h:43

◆ getRangeMin()

float HICaloRange::getRangeMin ( int layer) const
inline

Definition at line 19 of file HICaloRange.h.

19 {
20 float result = 0.;
21 auto it = m_range.find(layer);
22 if (it != m_range.end()){
23 result = it->second.first;
24 }
25 return result;
26 }

◆ initializeRange()

void HICaloRange::initializeRange ( )
private

Definition at line 25 of file HICaloRange.cxx.

26{
27 m_range = {
28 {CaloSampling::PreSamplerB, range_t(0,1.6)}, //0
29 {CaloSampling::EMB1, range_t(0,1.5)}, //1
30 {CaloSampling::EMB2, range_t(0,1.5)}, //2
31 {CaloSampling::EMB3, range_t(0,1.4)}, //3
32
33 {CaloSampling::PreSamplerE, range_t(1.5,1.8)}, //4
34 {CaloSampling::EME1, range_t(1.3,2.5)}, //5
35 {CaloSampling::EME2, range_t(1.3,3.2)}, //6
36 {CaloSampling::EME3, range_t(1.5,3.2)}, //7
37
38 {CaloSampling::HEC0, range_t(1.5,3.3)}, //8
39 {CaloSampling::HEC1, range_t(1.5,3.1)}, //9
40 {CaloSampling::HEC2, range_t(1.6,3.1)}, //10
41 {CaloSampling::HEC3, range_t(1.7,3.3)}, //11
42
43 {CaloSampling::TileBar0, range_t(0,1)}, //12
44 {CaloSampling::TileBar1, range_t(0,0.9)}, //13
45 {CaloSampling::TileBar2, range_t(0,0.7)}, //14
46
47 {CaloSampling::TileGap1, range_t(0.9,1)}, //15
48 {CaloSampling::TileGap2, range_t(0.8,0.9)}, //16
49 {CaloSampling::TileGap3, range_t(1,1.6)}, //17
50
51 {CaloSampling::TileExt0, range_t(1.1,1.6)}, //18
52 {CaloSampling::TileExt1, range_t(1,1.5)}, //19
53 {CaloSampling::TileExt2, range_t(0.9,1.3)}, //20
54
55 {CaloSampling::FCAL0, range_t(3,5)}, //21
56 {CaloSampling::FCAL1, range_t(3.1,5)}, //22
57 {CaloSampling::FCAL2, range_t(3.2,5)}, //23
58 };
59}
std::pair< float, float > range_t
Definition HICaloRange.h:42

◆ LayerInRange()

bool HICaloRange::LayerInRange ( float eta,
int layer )

Definition at line 19 of file HICaloRange.cxx.

20{
21 const float eta_abs=std::abs(eta);
22 return ( (eta_abs > m_range.at(layer).first) && (eta_abs < m_range.at(layer).second) );
23}
Scalar eta() const
pseudorapidity method

Member Data Documentation

◆ m_range

std::unordered_map<int, range_t > HICaloRange::m_range
private

Definition at line 43 of file HICaloRange.h.


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