CMS 3D CMS Logo

L1GetHistLimits.h
Go to the documentation of this file.
1 #ifndef L1Trigger_GlobalTriggerAnalyzer_L1GetHistLimits_h
2 #define L1Trigger_GlobalTriggerAnalyzer_L1GetHistLimits_h
3 
18 // system include files
19 #include <iosfwd>
20 #include <memory>
21 #include <vector>
22 #include <string>
23 
24 // user include files
25 //
27 
31 
32 // scales
35 
43 
48 
49 // forward declarations
50 
51 // class declaration
53 public:
54  struct Tokens {
55  Tokens(edm::ConsumesCollector, bool doEtaOrPhi);
56 
65  };
66 
67  // constructor(s)
68  explicit L1GetHistLimits(const Tokens&, const edm::EventSetup& evSetup);
69 
70  // destructor
71  virtual ~L1GetHistLimits();
72 
78  struct L1HistLimits {
79  int nrBins;
80  double lowerBinValue;
81  double upperBinValue;
82  std::vector<float> binThresholds;
83  };
84 
85 public:
88  const L1HistLimits& l1HistLimits(const L1GtObject& l1GtObject, const std::string& quantity);
89 
92  const L1HistLimits& l1HistLimits(const L1GtObject& l1GtObject,
93  const std::string& quantity,
94  const double histMinValue,
95  const double histMaxValue);
96 
99  const int l1HistNrBins(const L1GtObject& l1GtObject, const std::string& quantity);
100 
103  const double l1HistLowerBinValue(const L1GtObject& l1GtObject, const std::string& quantity);
104 
107  const double l1HistUpperBinValue(const L1GtObject& l1GtObject, const std::string& quantity);
108 
111  const std::vector<float>& l1HistBinThresholds(const L1GtObject& l1GtObject, const std::string& quantity);
112 
113 private:
117  void getHistLimits(const L1GtObject& l1GtObject, const std::string& quantity);
118 
119 private:
120  const Tokens& m_tokens;
122 
125 };
126 
127 #endif
const edm::ESGetToken< L1MuTriggerPtScale, L1MuTriggerPtScaleRcd > m_muPTScaleToken
const edm::ESGetToken< L1GctJetFinderParams, L1GctJetFinderParamsRcd > m_jetFinderParamsToken
void getHistLimits(const L1GtObject &l1GtObject, const std::string &quantity)
const edm::EventSetup & m_evSetup
L1HistLimits m_l1HistLimits
all limits for a histogram
const edm::ESGetToken< L1CaloEtScale, L1HfRingEtScaleRcd > m_hfRingEtScaleToken
const double l1HistUpperBinValue(const L1GtObject &l1GtObject, const std::string &quantity)
Tokens(edm::ConsumesCollector, bool doEtaOrPhi)
edm::ESGetToken< L1CaloGeometry, L1CaloGeometryRecord > m_caloGeomESHToken
const std::vector< float > & l1HistBinThresholds(const L1GtObject &l1GtObject, const std::string &quantity)
const int l1HistNrBins(const L1GtObject &l1GtObject, const std::string &quantity)
virtual ~L1GetHistLimits()
L1GetHistLimits(const Tokens &, const edm::EventSetup &evSetup)
edm::ESGetToken< L1MuTriggerScales, L1MuTriggerScalesRcd > m_muScalesToken
std::vector< float > binThresholds
const Tokens & m_tokens
const edm::ESGetToken< L1CaloEtScale, L1HtMissScaleRcd > m_htMissScaleToken
const double l1HistLowerBinValue(const L1GtObject &l1GtObject, const std::string &quantity)
const edm::ESGetToken< L1CaloEtScale, L1EmEtScaleRcd > m_etScaleToken
const L1HistLimits & l1HistLimits(const L1GtObject &l1GtObject, const std::string &quantity)
const edm::ESGetToken< L1CaloEtScale, L1JetEtScaleRcd > m_jetScaleToken