CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HGCalTriggerTowerGeometryHelper.h
Go to the documentation of this file.
1 #ifndef __L1Trigger_L1THGCal_HGCalTriggerTowerGeometryHelper_h__
2 #define __L1Trigger_L1THGCal_HGCalTriggerTowerGeometryHelper_h__
3 
18 
19 #include <vector>
20 #include <unordered_map>
21 
22 namespace l1t {
23  class HGCalTowerID;
24  struct HGCalTowerCoord;
25 } // namespace l1t
26 
28 public:
30 
32 
34 
35  const std::vector<l1t::HGCalTowerCoord>& getTowerCoordinates() const;
36 
37  unsigned short getTriggerTowerFromEtaPhi(const float& eta, const float& phi) const;
38  unsigned short getTriggerTower(const l1t::HGCalTriggerCell&) const;
39  unsigned short getTriggerTower(const l1t::HGCalTriggerSums&) const;
40 
41  const bool isNose() { return doNose_; }
42 
43 private:
44  std::vector<l1t::HGCalTowerCoord> tower_coords_;
45  std::unordered_map<unsigned, short> cells_to_trigger_towers_;
46 
47  bool doNose_;
48  double minEta_;
49  double maxEta_;
50  double minPhi_;
51  double maxPhi_;
52  unsigned int nBinsEta_;
53  unsigned int nBinsPhi_;
54 
55  std::vector<double> binsEta_;
56  std::vector<double> binsPhi_;
57 
59 };
60 
61 #endif
void setGeometry(const HGCalTriggerGeometryBase *const geom)
unsigned short getTriggerTower(const l1t::HGCalTriggerCell &) const
const std::vector< l1t::HGCalTowerCoord > & getTowerCoordinates() const
void setGeometry(const HGCalTriggerGeometryBase *const)
unsigned short getTriggerTowerFromEtaPhi(const float &eta, const float &phi) const
std::vector< l1t::HGCalTowerCoord > tower_coords_
std::unordered_map< unsigned, short > cells_to_trigger_towers_
HGCalTriggerTowerGeometryHelper(const edm::ParameterSet &conf)