CMS 3D CMS Logo

L1GtEtaPhiConversions.h
Go to the documentation of this file.
1 #ifndef GlobalTrigger_L1GtEtaPhiConversions_h
2 #define GlobalTrigger_L1GtEtaPhiConversions_h
3 
18 // system include files
19 #include <cmath>
20 #include <iostream>
21 #include <utility>
22 #include <vector>
23 
24 // user include files
25 
26 // base class
27 
28 //
30 
31 // forward declarations
32 class L1CaloGeometry;
33 class L1MuTriggerScales;
34 
35 // class interface
37 public:
40 
42  virtual ~L1GtEtaPhiConversions();
43 
44 public:
47  const unsigned int gtObjectPairIndex(const L1GtObject &, const L1GtObject &) const;
48 
53  const bool convertPhiIndex(const unsigned int pairIndex,
54  const unsigned int positionPair,
55  const unsigned int initialIndex,
56  unsigned int &convertedIndex) const;
57 
62  const bool convertEtaIndex(const L1GtObject &, const unsigned int initialIndex, unsigned int &convertedIndex) const;
63 
65  const unsigned int gtObjectNrBinsPhi(const L1GtObject &) const;
66 
69  const unsigned int gtObjectNrBinsPhi(const L1GtObject &, const L1GtObject &) const;
70 
73  const unsigned int gtObjectNrBinsPhi(const unsigned int) const;
74 
76  void convertL1Scales(const L1CaloGeometry *, const L1MuTriggerScales *, const int, const int);
77 
78  inline void setVerbosity(const int verbosity) { m_verbosity = verbosity; }
79 
81  virtual void print(std::ostream &myCout) const;
82 
83 private:
86  static const unsigned int badIndex;
87 
89  static const double PiConversion;
90 
92  const double rad2deg(const double &) const;
93 
94 private:
96  std::vector<std::pair<L1GtObject, L1GtObject>> m_gtObjectPairVec;
97 
102  std::vector<bool> m_pairConvertPhiFirstGtObject;
103 
108  std::vector<const unsigned int *> m_pairNrPhiBinsVec;
109 
114  std::vector<const std::vector<unsigned int> *> m_pairPhiConvVec;
115 
116 private:
119 
122 
123 private:
125  unsigned int m_nrBinsPhiMu;
126 
128  unsigned int m_nrBinsPhiJetEg;
129 
131  unsigned int m_nrBinsPhiEtm;
132 
134  unsigned int m_nrBinsPhiHtm;
135 
137  unsigned int m_nrBinsEtaCommon;
138 
139 private:
141  std::vector<unsigned int> m_lutPhiMuToJetEg;
142 
144  std::vector<unsigned int> m_lutPhiMuToEtm;
145 
147  std::vector<unsigned int> m_lutPhiMuToHtm;
148 
150  std::vector<unsigned int> m_lutPhiEtmToJetEg;
151 
153  std::vector<unsigned int> m_lutPhiEtmToHtm;
154 
156  std::vector<unsigned int> m_lutPhiHtmToJetEg;
157 
161  std::vector<unsigned int> m_lutPhiJetEgToJetEg;
162 
163 private:
166  std::vector<unsigned int> m_lutEtaCentralToCommonCalo;
167 
170  std::vector<unsigned int> m_lutEtaForJetToCommonCalo;
171 
173  std::vector<unsigned int> m_lutEtaMuToCommonCalo;
174 
175 private:
178 
181 };
182 
183 #endif
L1GtEtaPhiConversions::m_pairNrPhiBinsVec
std::vector< const unsigned int * > m_pairNrPhiBinsVec
Definition: L1GtEtaPhiConversions.h:108
HIPAlignmentAlgorithm_cfi.verbosity
verbosity
Definition: HIPAlignmentAlgorithm_cfi.py:7
L1GtEtaPhiConversions::gtObjectPairIndex
const unsigned int gtObjectPairIndex(const L1GtObject &, const L1GtObject &) const
Definition: L1GtEtaPhiConversions.cc:452
L1GtEtaPhiConversions::m_lutEtaCentralToCommonCalo
std::vector< unsigned int > m_lutEtaCentralToCommonCalo
Definition: L1GtEtaPhiConversions.h:166
L1GtEtaPhiConversions::m_lutPhiMuToEtm
std::vector< unsigned int > m_lutPhiMuToEtm
phi conversion for Mu to ETM
Definition: L1GtEtaPhiConversions.h:144
L1GtEtaPhiConversions::setVerbosity
void setVerbosity(const int verbosity)
Definition: L1GtEtaPhiConversions.h:78
L1GtEtaPhiConversions::gtObjectNrBinsPhi
const unsigned int gtObjectNrBinsPhi(const L1GtObject &) const
return the number of phi bins for a GT object
Definition: L1GtEtaPhiConversions.cc:758
L1GtObject.h
L1GtEtaPhiConversions::m_l1MuTriggerScales
const L1MuTriggerScales * m_l1MuTriggerScales
pointer to muon scales - updated in convertl1Scales method
Definition: L1GtEtaPhiConversions.h:121
L1GtEtaPhiConversions::m_lutPhiEtmToJetEg
std::vector< unsigned int > m_lutPhiEtmToJetEg
phi conversion for ETM to (*Jet, EG)
Definition: L1GtEtaPhiConversions.h:150
L1GtEtaPhiConversions::m_lutEtaMuToCommonCalo
std::vector< unsigned int > m_lutEtaMuToCommonCalo
eta conversion of Mu to the common calorimeter eta scale defined before
Definition: L1GtEtaPhiConversions.h:173
L1GtEtaPhiConversions::convertEtaIndex
const bool convertEtaIndex(const L1GtObject &, const unsigned int initialIndex, unsigned int &convertedIndex) const
Definition: L1GtEtaPhiConversions.cc:596
L1GtEtaPhiConversions::convertL1Scales
void convertL1Scales(const L1CaloGeometry *, const L1MuTriggerScales *, const int, const int)
perform all scale conversions
Definition: L1GtEtaPhiConversions.cc:841
L1GtEtaPhiConversions::m_pairPhiConvVec
std::vector< const std::vector< unsigned int > * > m_pairPhiConvVec
Definition: L1GtEtaPhiConversions.h:114
L1GtEtaPhiConversions
Definition: L1GtEtaPhiConversions.h:36
L1GtEtaPhiConversions::convertPhiIndex
const bool convertPhiIndex(const unsigned int pairIndex, const unsigned int positionPair, const unsigned int initialIndex, unsigned int &convertedIndex) const
Definition: L1GtEtaPhiConversions.cc:481
L1GtEtaPhiConversions::L1GtEtaPhiConversions
L1GtEtaPhiConversions()
constructor
Definition: L1GtEtaPhiConversions.cc:38
L1GtEtaPhiConversions::m_verbosity
int m_verbosity
verbosity level
Definition: L1GtEtaPhiConversions.h:177
L1GtEtaPhiConversions::rad2deg
const double rad2deg(const double &) const
convert phi from rad (-pi, pi] to deg (0, 360)
Definition: L1GtEtaPhiConversions.cc:1622
L1GtEtaPhiConversions::m_nrBinsPhiHtm
unsigned int m_nrBinsPhiHtm
number of phi bins for HTM
Definition: L1GtEtaPhiConversions.h:134
L1GtEtaPhiConversions::m_nrBinsPhiMu
unsigned int m_nrBinsPhiMu
number of phi bins for muons
Definition: L1GtEtaPhiConversions.h:125
L1CaloGeometry
Definition: L1CaloGeometry.h:33
L1GtEtaPhiConversions::m_lutPhiJetEgToJetEg
std::vector< unsigned int > m_lutPhiJetEgToJetEg
Definition: L1GtEtaPhiConversions.h:161
L1GtEtaPhiConversions::m_lutPhiMuToHtm
std::vector< unsigned int > m_lutPhiMuToHtm
phi conversion for Mu to HTM
Definition: L1GtEtaPhiConversions.h:147
L1GtEtaPhiConversions::m_nrBinsPhiJetEg
unsigned int m_nrBinsPhiJetEg
number of phi bins for calorimeter objects (*Jet, *EG)
Definition: L1GtEtaPhiConversions.h:128
L1GtEtaPhiConversions::m_nrBinsEtaCommon
unsigned int m_nrBinsEtaCommon
number of eta bins for common scale
Definition: L1GtEtaPhiConversions.h:137
L1GtEtaPhiConversions::m_lutPhiHtmToJetEg
std::vector< unsigned int > m_lutPhiHtmToJetEg
phi conversion for HTM to (*Jet, EG)
Definition: L1GtEtaPhiConversions.h:156
L1MuTriggerScales
Definition: L1MuTriggerScales.h:33
L1GtEtaPhiConversions::m_isDebugEnabled
bool m_isDebugEnabled
cached edm::isDebugEnabled()
Definition: L1GtEtaPhiConversions.h:180
L1GtEtaPhiConversions::m_lutPhiEtmToHtm
std::vector< unsigned int > m_lutPhiEtmToHtm
phi conversion for ETM to HTM
Definition: L1GtEtaPhiConversions.h:153
L1GtEtaPhiConversions::m_nrBinsPhiEtm
unsigned int m_nrBinsPhiEtm
number of phi bins for ETM
Definition: L1GtEtaPhiConversions.h:131
L1GtEtaPhiConversions::m_lutEtaForJetToCommonCalo
std::vector< unsigned int > m_lutEtaForJetToCommonCalo
Definition: L1GtEtaPhiConversions.h:170
L1GtEtaPhiConversions::PiConversion
static const double PiConversion
Definition: L1GtEtaPhiConversions.h:89
L1GtEtaPhiConversions::m_pairConvertPhiFirstGtObject
std::vector< bool > m_pairConvertPhiFirstGtObject
Definition: L1GtEtaPhiConversions.h:102
L1GtEtaPhiConversions::m_gtObjectPairVec
std::vector< std::pair< L1GtObject, L1GtObject > > m_gtObjectPairVec
vector of all L1GtObject pairs
Definition: L1GtEtaPhiConversions.h:96
L1GtEtaPhiConversions::m_lutPhiMuToJetEg
std::vector< unsigned int > m_lutPhiMuToJetEg
phi conversion for Mu to (*Jet, EG)
Definition: L1GtEtaPhiConversions.h:141
L1GtEtaPhiConversions::badIndex
static const unsigned int badIndex
Definition: L1GtEtaPhiConversions.h:86
L1GtEtaPhiConversions::print
virtual void print(std::ostream &myCout) const
print all the performed conversions
Definition: L1GtEtaPhiConversions.cc:1195
L1GtObject
L1GtEtaPhiConversions::m_l1CaloGeometry
const L1CaloGeometry * m_l1CaloGeometry
pointer to calorimetry scales - updated in convertl1Scales method
Definition: L1GtEtaPhiConversions.h:118
L1GtEtaPhiConversions::~L1GtEtaPhiConversions
virtual ~L1GtEtaPhiConversions()
destructor
Definition: L1GtEtaPhiConversions.cc:446