ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
5 //***************************************************************************
6 // TriggerTower.h - description
7 // -------------------
8 // begin : Mon Sep 25 2000
9 // email : e.moyse@qmw.ac.uk
10 // ***************************************************************************/
11
12
13#ifndef TriggerTower_H
14#define TriggerTower_H
15
18
20
21
22namespace LVL1 {
23
24 //Doxygen class description below:
46
47public:
48
50 TriggerTower() = default;
51
52 TriggerTower( double phi, double eta, unsigned int key);
53
54 TriggerTower( double phi, double eta, unsigned int key,
55 const std::vector<int>& em_digits,
56 const std::vector<int>& em_et,
57 const std::vector<int>& em_digits_bcid,
58 const std::vector<int>& em_bcid,
59 int em_error, int em_peak, int em_adc_peak,
60 const std::vector<int>& had_digits,
61 const std::vector<int>& had_et,
62 const std::vector<int>& had_digits_bcid,
63 const std::vector<int>& had_bcid,
64 int had_error, int had_peak, int had_adc_peak);
65
66
68 void addEM(const std::vector<int>& digits, const std::vector<int>& et,
69 const std::vector<int>& digits_bcid, const std::vector<int>& bcid,
70 int error, int peak, int adc_peak);
71 void addHad(const std::vector<int>& digits, const std::vector<int>& et,
72 const std::vector<int>& digits_bcid, const std::vector<int>& bcid,
73 int error, int peak, int adc_peak);
75 void setCoord(double eta, double phi);
76 void setKey(unsigned int key);
77
79 int emEnergy() const;
80 int hadEnergy() const;
81
85 const std::vector<int> & emLUT() const;
86 const std::vector<int> & hadLUT() const;
87
89 const std::vector<int> & emADC() const;
90 const std::vector<int> & hadADC() const;
91
93 double eta() const {return m_eta;};
94
96 double phi() const {return m_phi;};
97
99 Coordinate coord() const;
100
103 unsigned int key() const { return m_key;};
104
106 int emPeak() const {return m_em_peak;};
107 int emADCPeak() const {return m_em_adc_peak;};
108 int hadPeak() const {return m_had_peak;};
109 int hadADCPeak() const {return m_had_adc_peak;};
110
112 bool isEMSaturated() const;
113 bool isHadSaturated() const;
114 int emError() const {return m_em_error;};
115 int hadError() const {return m_had_error;};
116 int emBCID() const;
117 int hadBCID() const;
118 const std::vector<int> & emBCIDvec() const;
119 const std::vector<int> & hadBCIDvec() const;
120 const std::vector<int> & emBCIDext() const;
121 const std::vector<int> & hadBCIDext() const;
122
124 private:
125 std::vector <int> m_em_energy{0};
126 std::vector <int> m_had_energy{0};
127 std::vector <int> m_em_adc{0};
128 std::vector <int> m_had_adc{0};
129 std::vector <int> m_em_BCID{0};
130 std::vector <int> m_had_BCID{0};
131 std::vector <int> m_em_extBCID{0};
132 std::vector <int> m_had_extBCID{0};
133 double m_phi{};
134 double m_eta{};
135 unsigned int m_key{};
142
143 static const int m_saturation = 255;
144
145 };
146
147 typedef std::map<int, const TriggerTower*> TriggerTowerMap_t;
148 } // end of namespace
149
150#ifndef TriggerTower_ClassDEF_H
152#endif
153
154#endif
macros to associate a CLID to a type
An STL vector of pointers that by default owns its pointed-to elements.
unsigned int key() const
returns TT key - that is the key the TT had when it was created.
const std::vector< int > & emBCIDext() const
returns vector of BCID words for all EM ADC samples
int hadEnergy() const
int hadBCID() const
returns BCID word for peak had sample
void setCoord(double eta, double phi)
Methods to specify location of tower.
TriggerTower(double phi, double eta, unsigned int key)
TriggerTower()=default
Constructors.
const std::vector< int > & emLUT() const
return references to the vectors containing the final calubrated ET values.
const std::vector< int > & emBCIDvec() const
returns vector of BCID words for all EM LUT samples
void addHad(const std::vector< int > &digits, const std::vector< int > &et, const std::vector< int > &digits_bcid, const std::vector< int > &bcid, int error, int peak, int adc_peak)
Method for filling Had tower data.
const std::vector< int > & hadBCIDvec() const
returns vector of BCID words for all Had LUT samples
int emEnergy() const
return the final energy values using the in algorithms
int emPeak() const
return peak positions in LUT and ADC vectors
int emBCID() const
returns BCID word for peak EM sample
Coordinate coord() const
returns coordinate of TT
const std::vector< int > & hadADC() const
returns had adc digits
void setKey(unsigned int key)
Method to set or update key.
TriggerTower(double phi, double eta, unsigned int key, const std::vector< int > &em_digits, const std::vector< int > &em_et, const std::vector< int > &em_digits_bcid, const std::vector< int > &em_bcid, int em_error, int em_peak, int em_adc_peak, const std::vector< int > &had_digits, const std::vector< int > &had_et, const std::vector< int > &had_digits_bcid, const std::vector< int > &had_bcid, int had_error, int had_peak, int had_adc_peak)
const std::vector< int > & emADC() const
return references to the vectors containing the ADC digits
bool isHadSaturated() const
returns TRUE or FALSE depending on whether the TriggerTower's hadronic energy is greater than it's ha...
const std::vector< int > & hadLUT() const
returns had LUT ET
bool isEMSaturated() const
Utilities to report on status of tower.
const std::vector< int > & hadBCIDext() const
returns vector of BCID words for all Had ADC samples
void addEM(const std::vector< int > &digits, const std::vector< int > &et, const std::vector< int > &digits_bcid, const std::vector< int > &bcid, int error, int peak, int adc_peak)
Methods to fill towers with digits, calibrated ET vectors and status flags.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
std::map< int, const TriggerTower * > TriggerTowerMap_t
Extra patterns decribing particle interation process.