ATLAS Offline Software
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.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 // JetElement.h - description
7 // -------------------
8 // begin : Mon Sep 25 2000
9 // email : e.moyse@qmw.ac.uk
10 // ***************************************************************************/
11 
12 
13 #ifndef JetElement_H
14 #define JetElement_H
15 
16 #include "AthenaKernel/CLASS_DEF.h"
17 
18 
19 #include <vector>
20 #include <map>
21 #ifndef TRIGGERSPACE
23 #else
24 #include "Coordinate.h"
25 #endif
26 
27 namespace LVL1 {
28 
29  //Doxygen class description below:
43  class JetElement {
44  public:
45 
47  JetElement() = default;
49  JetElement(double phi, double eta, int emEnergy, int hadEnergy,
50  unsigned int key, int emError, int hadError, int linkError);
52  JetElement(double phi, double eta, const std::vector<int>& emEnergy,
53  const std::vector<int>& hadEnergy, unsigned int key,
54  const std::vector<int>& emError,
55  const std::vector<int>& hadError,
56  const std::vector<int>& linkError, int peak);
57 
58 
60  void addEnergy(int emEnergy, int hadEnergy);
61  /* Add ET values to specified slice */
62  void addSlice(int slice, int emEnergy, int hadEnergy,
63  int emError, int hadError, int linkError);
64 
66  double eta() const;
68  double phi() const;
69 
71  int emEnergy() const;
72  int hadEnergy() const;
73  int energy() const;
74 
76  int emSliceEnergy(int slice) const;
77  int hadSliceEnergy(int slice) const;
78  int sliceEnergy(int slice) const;
79 
81  unsigned int key() const;
82  bool isSaturated() const;
83  bool isEmSaturated() const;
84  bool isHadSaturated() const;
85  int emError() const;
86  int hadError() const;
87  int linkError() const;
88  int peak() const;
89 
91  const std::vector<int>& emEnergyVec() const;
92  const std::vector<int>& hadEnergyVec() const;
93  const std::vector<int>& emErrorVec() const;
94  const std::vector<int>& hadErrorVec() const;
95  const std::vector<int>& linkErrorVec() const;
96 
98  Coordinate coord() const;
99 
101  private:
102  double m_phi{};
103  double m_eta{};
104  unsigned int m_key{};
105  int m_peak{};
106  std::vector<int> m_emEnergy{0};
107  std::vector<int> m_hadEnergy{0};
108  std::vector<int> m_em_error{0};
109  std::vector<int> m_had_error{0};
110  std::vector<int> m_link_error{0};
111 
112  static const int m_saturationThreshold = 1023;
113  static const int m_layerSaturationThreshold = 511;
114 
115  };
116 
117  typedef std::map<int, const JetElement*> JetElementMap_t;
118  } // end of namespace
119 
120 #ifndef JetElement_ClassDEF_H
122 #endif
123 
124 #endif
LVL1::JetElement::m_saturationThreshold
static const int m_saturationThreshold
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:112
LVL1::JetElement::emEnergy
int emEnergy() const
Return ET for peak slice.
Definition: JetElement.cxx:78
JetElement_ClassDEF.h
LVL1::JetElement::hadError
int hadError() const
return Had error
Definition: JetElement.cxx:216
LVL1::JetElement::emEnergyVec
const std::vector< int > & emEnergyVec() const
Return data for all slices.
Definition: JetElement.cxx:231
LVL1::JetElement::addSlice
void addSlice(int slice, int emEnergy, int hadEnergy, int emError, int hadError, int linkError)
add data for one timeslice.
Definition: JetElement.cxx:160
LVL1::JetElement::isEmSaturated
bool isEmSaturated() const
returns TRUE if the Em layer of the JetElement is saturated
Definition: JetElement.cxx:193
LVL1::JetElement::energy
int energy() const
returns jet element ET The LVL1 Calo trigger uses a 10 bit integer i.e.
Definition: JetElement.cxx:101
LVL1::JetElement::peak
int peak() const
return triggered slice offset
Definition: JetElement.cxx:226
LVL1::JetElement::emSliceEnergy
int emSliceEnergy(int slice) const
return the ET values for a specified slice
Definition: JetElement.cxx:112
LVL1::JetElement::JetElement
JetElement()=default
Default constructor.
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::JetElement::emError
int emError() const
return Em error
Definition: JetElement.cxx:211
LVL1::JetElementMap_t
std::map< int, const JetElement * > JetElementMap_t
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:117
LVL1::JetElement::hadEnergyVec
const std::vector< int > & hadEnergyVec() const
return Had energy vector reference (all timeslices)
Definition: JetElement.cxx:236
LVL1::JetElement::m_phi
double m_phi
Internal data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:102
LVL1::JetElement
Jet elements are the inputs to the Jet, ETmiss and ETsum triggers.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:43
LVL1::JetElement::m_hadEnergy
std::vector< int > m_hadEnergy
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:107
LVL1::JetElement::m_layerSaturationThreshold
static const int m_layerSaturationThreshold
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:113
LVL1::Coordinate
Coordinate class declaration.
Definition: TrigT1/TrigT1Interfaces/TrigT1Interfaces/Coordinate.h:50
perfmonmt-refit.slice
slice
Definition: perfmonmt-refit.py:52
LVL1::JetElement::key
unsigned int key() const
Error codes and utility information.
Definition: JetElement.cxx:174
LVL1::JetElement::m_eta
double m_eta
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:103
LVL1::JetElement::m_emEnergy
std::vector< int > m_emEnergy
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:106
Coordinate.h
Coordinate policies.
LVL1::JetElement::m_peak
int m_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:105
LVL1::JetElement::eta
double eta() const
Eta of centre of JetElement.
Definition: JetElement.cxx:68
LVL1::JetElement::m_em_error
std::vector< int > m_em_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:108
Coordinate.h
LVL1::JetElement::addEnergy
void addEnergy(int emEnergy, int hadEnergy)
Add ET to triggered time slice.
Definition: JetElement.cxx:149
LVL1::JetElement::linkError
int linkError() const
return link error
Definition: JetElement.cxx:221
LVL1::JetElement::m_had_error
std::vector< int > m_had_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:109
LVL1::JetElement::m_link_error
std::vector< int > m_link_error
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:110
LVL1::JetElement::hadEnergy
int hadEnergy() const
returns had ET
Definition: JetElement.cxx:88
LVL1::JetElement::hadErrorVec
const std::vector< int > & hadErrorVec() const
return Had error vector reference (all timeslices)
Definition: JetElement.cxx:246
LVL1::JetElement::isHadSaturated
bool isHadSaturated() const
returns TRUE if the Had layer of the JetElement is saturated
Definition: JetElement.cxx:202
LVL1::JetElement::m_key
unsigned int m_key
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JetElement.h:104
LVL1::JetElement::phi
double phi() const
Phi of centre of JetElement.
Definition: JetElement.cxx:73
LVL1::JetElement::hadSliceEnergy
int hadSliceEnergy(int slice) const
Definition: JetElement.cxx:124
LVL1::JetElement::emErrorVec
const std::vector< int > & emErrorVec() const
return Em error vector reference (all timeslices)
Definition: JetElement.cxx:241
LVL1::JetElement::sliceEnergy
int sliceEnergy(int slice) const
Definition: JetElement.cxx:136
LVL1::JetElement::linkErrorVec
const std::vector< int > & linkErrorVec() const
return link error vector reference (all timeslices)
Definition: JetElement.cxx:251
LVL1::JetElement::isSaturated
bool isSaturated() const
returns TRUE if the JetElement is saturated (i.e.
Definition: JetElement.cxx:181
CLASS_DEF.h
macros to associate a CLID to a type
LVL1::JetElement::coord
Coordinate coord() const
return coord of JE
Definition: JetElement.cxx:256