ATLAS Offline Software
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 
17 #include "AthenaKernel/CLASS_DEF.h"
18 
20 
21 
22 namespace LVL1 {
23 
24  //Doxygen class description below:
45 class TriggerTower {
46 
47 public:
48 
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);
66  virtual ~TriggerTower();
67 
69  void addEM(const std::vector<int>& digits, const std::vector<int>& et,
70  const std::vector<int>& digits_bcid, const std::vector<int>& bcid,
71  int error, int peak, int adc_peak);
72  void addHad(const std::vector<int>& digits, const std::vector<int>& et,
73  const std::vector<int>& digits_bcid, const std::vector<int>& bcid,
74  int error, int peak, int adc_peak);
76  void setCoord(double eta, double phi);
77  void setKey(unsigned int key);
78 
80  int emEnergy() const;
81  int hadEnergy() const;
82 
86  const std::vector<int> & emLUT() const;
87  const std::vector<int> & hadLUT() const;
88 
90  const std::vector<int> & emADC() const;
91  const std::vector<int> & hadADC() const;
92 
94  double eta() const {return m_eta;};
95 
97  double phi() const {return m_phi;};
98 
100  Coordinate coord() const;
101 
104  unsigned int key() const { return m_key;};
105 
107  int emPeak() const {return m_em_peak;};
108  int emADCPeak() const {return m_em_adc_peak;};
109  int hadPeak() const {return m_had_peak;};
110  int hadADCPeak() const {return m_had_adc_peak;};
111 
113  bool isEMSaturated() const;
114  bool isHadSaturated() const;
115  int emError() const {return m_em_error;};
116  int hadError() const {return m_had_error;};
117  int emBCID() const;
118  int hadBCID() const;
119  const std::vector<int> & emBCIDvec() const;
120  const std::vector<int> & hadBCIDvec() const;
121  const std::vector<int> & emBCIDext() const;
122  const std::vector<int> & hadBCIDext() const;
123 
125  private:
126  std::vector <int> m_em_energy;
127  std::vector <int> m_had_energy;
128  std::vector <int> m_em_adc;
129  std::vector <int> m_had_adc;
130  std::vector <int> m_em_BCID;
131  std::vector <int> m_had_BCID;
132  std::vector <int> m_em_extBCID;
133  std::vector <int> m_had_extBCID;
134  double m_phi;
135  double m_eta;
136  unsigned int m_key;
143 
144  static const int m_saturation = 255;
145 
146  };
147 
148  typedef std::map<int, const TriggerTower*> TriggerTowerMap_t;
149  } // end of namespace
150 
151 #ifndef TriggerTower_ClassDEF_H
153 #endif
154 
155 #endif
LVL1::TriggerTower::emADC
const std::vector< int > & emADC() const
return references to the vectors containing the ADC digits
Definition: TriggerTower.cxx:118
LVL1::TriggerTower::emPeak
int emPeak() const
return peak positions in LUT and ADC vectors
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:107
LVL1::TriggerTower::m_had_peak
int m_had_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:141
LVL1::TriggerTower::m_em_adc_peak
int m_em_adc_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:140
LVL1::TriggerTower::phi
double phi() const
returns phi coord of tower
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:97
LVL1::TriggerTower::emEnergy
int emEnergy() const
return the final energy values using the in algorithms
Definition: TriggerTower.cxx:100
et
Extra patterns decribing particle interation process.
LVL1::TriggerTower::key
unsigned int key() const
returns TT key - that is the key the TT had when it was created.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:104
LVL1::TriggerTower::isEMSaturated
bool isEMSaturated() const
Utilities to report on status of tower.
Definition: TriggerTower.cxx:201
LVL1::TriggerTower::m_em_adc
std::vector< int > m_em_adc
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:128
LVL1::TriggerTower::hadBCID
int hadBCID() const
returns BCID word for peak had sample
Definition: TriggerTower.cxx:135
LVL1::TriggerTower::emBCIDext
const std::vector< int > & emBCIDext() const
returns vector of BCID words for all EM ADC samples
Definition: TriggerTower.cxx:150
LVL1::TriggerTower::hadADCPeak
int hadADCPeak() const
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:110
LVL1::TriggerTower::m_eta
double m_eta
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:135
LVL1::TriggerTower::emBCID
int emBCID() const
returns BCID word for peak EM sample
Definition: TriggerTower.cxx:126
LVL1::TriggerTower::hadError
int hadError() const
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:116
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::TriggerTower::m_phi
double m_phi
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:134
LVL1::TriggerTower::m_em_BCID
std::vector< int > m_em_BCID
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:130
LVL1::TriggerTower::emError
int emError() const
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:115
LVL1::TriggerTower::hadBCIDext
const std::vector< int > & hadBCIDext() const
returns vector of BCID words for all Had ADC samples
Definition: TriggerTower.cxx:154
LVL1::TriggerTower::TriggerTower
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)
LVL1::TriggerTower::m_had_energy
std::vector< int > m_had_energy
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:127
LVL1::TriggerTower::addHad
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.
Definition: TriggerTower.cxx:173
LVL1::TriggerTower::m_key
unsigned int m_key
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:136
LVL1::TriggerTower::emLUT
const std::vector< int > & emLUT() const
return references to the vectors containing the final calubrated ET values.
Definition: TriggerTower.cxx:110
LVL1::TriggerTower::m_em_error
int m_em_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:137
LVL1::Coordinate
Coordinate class declaration.
Definition: TrigT1/TrigT1Interfaces/TrigT1Interfaces/Coordinate.h:50
LVL1::TriggerTower::m_had_extBCID
std::vector< int > m_had_extBCID
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:133
LVL1::TriggerTower::hadBCIDvec
const std::vector< int > & hadBCIDvec() const
returns vector of BCID words for all Had LUT samples
Definition: TriggerTower.cxx:147
LVL1::TriggerTower::m_had_adc
std::vector< int > m_had_adc
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:129
LVL1::TriggerTower::isHadSaturated
bool isHadSaturated() const
returns TRUE or FALSE depending on whether the TriggerTower's hadronic energy is greater than it's ha...
Definition: TriggerTower.cxx:212
LVL1::TriggerTower::m_em_peak
int m_em_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:139
LVL1::TriggerTower::hadPeak
int hadPeak() const
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:109
LVL1::TriggerTower::m_had_adc_peak
int m_had_adc_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:142
LVL1::TriggerTower::hadLUT
const std::vector< int > & hadLUT() const
returns had LUT ET
Definition: TriggerTower.cxx:114
LVL1::TriggerTower::setKey
void setKey(unsigned int key)
Method to set or update key.
Definition: TriggerTower.cxx:194
LVL1::TriggerTower::m_had_BCID
std::vector< int > m_had_BCID
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:131
LVL1::TriggerTower::hadADC
const std::vector< int > & hadADC() const
returns had adc digits
Definition: TriggerTower.cxx:122
LVL1::TriggerTower::hadEnergy
int hadEnergy() const
Definition: TriggerTower.cxx:105
Coordinate.h
LVL1::TriggerTower::setCoord
void setCoord(double eta, double phi)
Methods to specify location of tower.
Definition: TriggerTower.cxx:187
LVL1::TriggerTower
Trigger towers are the inputs to all other parts of the calorimeter trigger.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:45
LVL1::TriggerTower::emBCIDvec
const std::vector< int > & emBCIDvec() const
returns vector of BCID words for all EM LUT samples
Definition: TriggerTower.cxx:143
TriggerTower_ClassDEF.h
xAOD::bcid
setEventNumber setTimeStamp bcid
Definition: EventInfo_v1.cxx:133
LVL1::TriggerTower::m_saturation
static const int m_saturation
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:144
LVL1::TriggerTower::m_had_error
int m_had_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:138
LVL1::TriggerTower::TriggerTower
TriggerTower(double phi, double eta, unsigned int key)
LVL1::TriggerTower::addEM
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.
Definition: TriggerTower.cxx:158
DataVector.h
An STL vector of pointers that by default owns its pointed-to elements.
LVL1::TriggerTowerMap_t
std::map< int, const TriggerTower * > TriggerTowerMap_t
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:148
LVL1::TriggerTower::TriggerTower
TriggerTower()
Constructors.
LVL1::TriggerTower::~TriggerTower
virtual ~TriggerTower()
Destructor.
Definition: TriggerTower.cxx:96
LVL1::TriggerTower::m_em_extBCID
std::vector< int > m_em_extBCID
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:132
LVL1::TriggerTower::m_em_energy
std::vector< int > m_em_energy
Internal data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:126
LVL1::TriggerTower::emADCPeak
int emADCPeak() const
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:108
error
Definition: IImpactPoint3dEstimator.h:70
LVL1::TriggerTower::eta
double eta() const
returns eta coord
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/TriggerTower.h:94
CLASS_DEF.h
macros to associate a CLID to a type
LVL1::TriggerTower::coord
Coordinate coord() const
returns coordinate of TT
Definition: TriggerTower.cxx:218