CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HLTJetMETValidation.h
Go to the documentation of this file.
1 /* HLTJetMET Path Validation Analyzer
2  Migrated to use DQMEDAnalyzer by: Jyothsna Rani Komaragiri, Oct 2014
3 */
4 
5 #ifndef HLTJetMETValidation_h
6 #define HLTJetMETValidation_h
7 
8 
15 
16 
20 
27 
33 
36 
39 
42 //Include DQM core
46 
48 
49 #include <vector>
50 #include <string>
51 #include "TPRegexp.h"
52 
53 using namespace std;
54 using namespace edm;
55 using namespace reco;
56 using namespace l1extra;
57 using namespace trigger;
58 
59 namespace edm {
60  class TriggerNames;
61 }
62 
64 
65  public:
66  explicit HLTJetMETValidation(const edm::ParameterSet&);
68 
69  private:
70  virtual void analyze(const edm::Event&, const edm::EventSetup&) override;
71  virtual void bookHistograms(DQMStore::IBooker &, edm::Run const & iRun, edm::EventSetup const & iSetup) override;
72  virtual void dqmBeginRun(edm::Run const& iRun,edm::EventSetup const& iSetup) override;
73 
74  void getHLTResults(const edm::TriggerResults&,
75  const edm::TriggerNames & triggerNames);
76 
84 
85  //Just a tag for better file organization
86  std::string triggerTag_, patternJetTrg_, patternMetTrg_, patternMuTrg_;
87 
88  std::vector<MonitorElement*> _meHLTJetPt;
89  std::vector<MonitorElement*> _meHLTJetPtTrgMC;
90  std::vector<MonitorElement*> _meHLTJetPtTrg;
91  std::vector<MonitorElement*> _meHLTJetPtTrgLow;
92  std::vector<MonitorElement*> _meHLTJetEta;
93  std::vector<MonitorElement*> _meHLTJetEtaTrgMC;
94  std::vector<MonitorElement*> _meHLTJetEtaTrg;
95  std::vector<MonitorElement*> _meHLTJetEtaTrgLow;
96  std::vector<MonitorElement*> _meHLTJetPhi;
97  std::vector<MonitorElement*> _meHLTJetPhiTrgMC;
98  std::vector<MonitorElement*> _meHLTJetPhiTrg;
99  std::vector<MonitorElement*> _meHLTJetPhiTrgLow;
100 
101  std::vector<MonitorElement*> _meGenJetPt;
102  std::vector<MonitorElement*> _meGenJetPtTrgMC;
103  std::vector<MonitorElement*> _meGenJetPtTrg;
104  std::vector<MonitorElement*> _meGenJetPtTrgLow;
105  std::vector<MonitorElement*> _meGenJetEta;
106  std::vector<MonitorElement*> _meGenJetEtaTrgMC;
107  std::vector<MonitorElement*> _meGenJetEtaTrg;
108  std::vector<MonitorElement*> _meGenJetEtaTrgLow;
109  std::vector<MonitorElement*> _meGenJetPhi;
110  std::vector<MonitorElement*> _meGenJetPhiTrgMC;
111  std::vector<MonitorElement*> _meGenJetPhiTrg;
112  std::vector<MonitorElement*> _meGenJetPhiTrgLow;
113 
114  std::vector<MonitorElement*> _meHLTMET;
115  std::vector<MonitorElement*> _meHLTMETTrgMC;
116  std::vector<MonitorElement*> _meHLTMETTrg;
117  std::vector<MonitorElement*> _meHLTMETTrgLow;
118  std::vector<MonitorElement*> _meGenMET;
119  std::vector<MonitorElement*> _meGenMETTrgMC;
120  std::vector<MonitorElement*> _meGenMETTrg;
121  std::vector<MonitorElement*> _meGenMETTrgLow;
122 
124 
125  //Define Numbers
126  int evtCnt;
127 
129  std::vector<std::string> hltTrgJet;
130  std::vector<std::string> hltTrgJetLow;
131  std::vector<std::string> hltTrgMet;
132  std::vector<std::string> hltTrgMetLow;
133 
134  // store hlt information in a map
135  std::vector<bool> hlttrigs;
136  std::map <std::string,bool> hltTriggerMap;
137  std::map<std::string,bool>::iterator trig_iter;
138 
139  bool HLTinit_;
140 
142 };
143 #endif
std::vector< MonitorElement * > _meHLTMETTrgMC
std::vector< std::string > hltTrgMet
std::vector< MonitorElement * > _meGenJetEtaTrgMC
std::vector< MonitorElement * > _meGenJetPt
std::vector< MonitorElement * > _meGenJetPhiTrg
std::vector< std::string > hltTrgJet
std::vector< MonitorElement * > _meHLTJetPtTrg
std::map< std::string, bool > hltTriggerMap
edm::EDGetTokenT< TriggerEventWithRefs > triggerEventObject_
InputTag of TriggerEventWithRefs to analyze.
MonitorElement * _triggerResults
edm::EDGetTokenT< GenMETCollection > GenMETColl
std::vector< bool > hlttrigs
std::vector< MonitorElement * > _meHLTJetPhiTrgLow
edm::EDGetTokenT< GenJetCollection > GenJetAlgorithm
std::vector< MonitorElement * > _meGenMET
std::vector< MonitorElement * > _meHLTMETTrgLow
std::vector< MonitorElement * > _meGenJetPtTrgMC
std::vector< MonitorElement * > _meGenMETTrgMC
edm::EDGetTokenT< CaloMETCollection > CaloMETColl
std::vector< std::string > hltTrgMetLow
std::vector< MonitorElement * > _meGenJetPhiTrgMC
std::vector< MonitorElement * > _meGenMETTrgLow
std::vector< MonitorElement * > _meHLTJetPtTrgLow
void bookHistograms(fwlite::EventContainer &eventCont)
std::vector< MonitorElement * > _meHLTJetEta
std::vector< MonitorElement * > _meHLTJetPhiTrgMC
edm::EDGetTokenT< edm::TriggerResults > HLTriggerResults
std::vector< MonitorElement * > _meHLTJetEtaTrg
std::vector< MonitorElement * > _meHLTJetEtaTrgLow
edm::EDGetTokenT< PFJetCollection > PFJetAlgorithm
std::vector< MonitorElement * > _meGenJetEtaTrg
std::vector< MonitorElement * > _meGenJetPtTrg
std::vector< MonitorElement * > _meGenMETTrg
std::vector< MonitorElement * > _meGenJetEtaTrgLow
std::vector< MonitorElement * > _meHLTJetPt
std::vector< MonitorElement * > _meHLTJetPhi
std::vector< MonitorElement * > _meGenJetEta
std::vector< MonitorElement * > _meGenJetPhi
std::vector< MonitorElement * > _meGenJetPtTrgLow
HLTConfigProvider hltConfig_
std::vector< MonitorElement * > _meHLTJetPtTrgMC
std::vector< MonitorElement * > _meHLTMETTrg
std::vector< MonitorElement * > _meHLTJetPhiTrg
std::vector< std::string > hltTrgJetLow
std::vector< MonitorElement * > _meGenJetPhiTrgLow
std::map< std::string, bool >::iterator trig_iter
std::vector< MonitorElement * > _meHLTJetEtaTrgMC
Definition: Run.h:41
std::vector< MonitorElement * > _meHLTMET