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 HICaloRange & getRange ()

Private Types

typedef std::pair< float, float > range_t

Private Member Functions

 HICaloRange ()
void initializeRange ()

Private Attributes

std::unordered_map< int, range_t > m_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: