00001
00002
00003
00004
00005
00006
00007
00008 #ifndef JetMETHLTOfflineSource_H
00009 #define JetMETHLTOfflineSource_H
00010
00011
00012 #include <memory>
00013 #include <unistd.h>
00014
00015
00016 #include "DQMServices/Core/interface/DQMStore.h"
00017 #include "DQMServices/Core/interface/MonitorElement.h"
00018
00019 #include "FWCore/Common/interface/TriggerNames.h"
00020 #include "FWCore/Framework/interface/Frameworkfwd.h"
00021 #include "FWCore/Framework/interface/EDAnalyzer.h"
00022 #include "FWCore/Framework/interface/Event.h"
00023 #include "FWCore/Framework/interface/MakerMacros.h"
00024 #include "FWCore/ServiceRegistry/interface/Service.h"
00025 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00027
00028 #include "DataFormats/Common/interface/TriggerResults.h"
00029 #include "DataFormats/HLTReco/interface/TriggerEvent.h"
00030 #include "DataFormats/HLTReco/interface/TriggerObject.h"
00031 #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h"
00032
00033 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
00034
00035 #include "RecoJets/JetProducers/interface/JetIDHelper.h"
00036
00037 #include "DataFormats/JetReco/interface/Jet.h"
00038 #include "DataFormats/JetReco/interface/CaloJetCollection.h"
00039 #include "DataFormats/JetReco/interface/CaloJet.h"
00040 #include "DataFormats/JetReco/interface/PFJetCollection.h"
00041 #include "DataFormats/JetReco/interface/PFJet.h"
00042
00043 #include "DataFormats/METReco/interface/MET.h"
00044 #include "DataFormats/METReco/interface/CaloMETCollection.h"
00045 #include "DataFormats/METReco/interface/CaloMET.h"
00046 #include "DataFormats/METReco/interface/PFMETCollection.h"
00047 #include "DataFormats/METReco/interface/PFMET.h"
00048
00049 #include "DataFormats/VertexReco/interface/Vertex.h"
00050 #include "DataFormats/VertexReco/interface/VertexFwd.h"
00051
00052 #include <iostream>
00053 #include <fstream>
00054 #include <vector>
00055
00056 class PtSorter {
00057 public:
00058 template <class T> bool operator() ( const T& a, const T& b ) {
00059 return ( a.pt() > b.pt() );
00060 }
00061 };
00062
00063 class JetMETHLTOfflineSource : public edm::EDAnalyzer {
00064 public:
00065 explicit JetMETHLTOfflineSource(const edm::ParameterSet&);
00066 ~JetMETHLTOfflineSource();
00067
00068 private:
00069 virtual void beginJob() ;
00070 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00071 virtual void endJob() ;
00072 void beginRun(const edm::Run& run, const edm::EventSetup& c);
00073 void histobooking( const edm::EventSetup& c);
00074 void endRun(const edm::Run& run, const edm::EventSetup& c);
00075 void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00076 const edm::EventSetup& c);
00078 void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00079 const edm::EventSetup& c);
00080
00081 virtual bool isBarrel(double eta);
00082 virtual bool isEndCap(double eta);
00083 virtual bool isForward(double eta);
00084 virtual bool validPathHLT(std::string path);
00085 virtual bool isHLTPathAccepted(std::string pathName);
00086 virtual bool isTriggerObjectFound(std::string objectName);
00087 virtual double TriggerPosition(std::string trigName);
00088 virtual void fillMEforMonTriggerSummary(const edm::Event & iEvent, const edm::EventSetup&);
00089 virtual void fillMEforMonAllTrigger(const edm::Event & iEvent, const edm::EventSetup&);
00090 virtual void fillMEforMonAllTriggerwrtMuonTrigger(const edm::Event & iEvent, const edm::EventSetup&);
00091 virtual void fillMEforEffAllTrigger(const edm::Event & iEvent, const edm::EventSetup&);
00092 virtual void fillMEforEffWrtMuTrigger(const edm::Event & iEvent, const edm::EventSetup&);
00093 virtual void fillMEforEffWrtMBTrigger(const edm::Event & iEvent, const edm::EventSetup&);
00094 virtual void fillMEforTriggerNTfired();
00095
00096 const std::string getL1ConditionModuleName(const std::string& pathname);
00097
00098
00099 int nev_;
00100 DQMStore * dbe;
00101
00102 MonitorElement* total_;
00103
00104 std::vector<std::string> MuonTrigPaths_;
00105 std::vector<std::string> MBTrigPaths_;
00106 std::vector<int> prescUsed_;
00107
00108 std::string dirname_;
00109 std::string processname_;
00110
00111 reco::helper::JetIDHelper *jetID;
00112
00113 bool verbose_;
00114 bool runStandalone_;
00115 bool plotAll_;
00116 bool plotAllwrtMu_;
00117 bool plotEff_ ;
00118 bool plotEffwrtMu_;
00119 bool plotEffwrtMB_;
00120
00121 bool isSetup_;
00122 bool nameForEff_;
00123
00124 double _fEMF;
00125 double _feta;
00126 double _fHPD;
00127 double _n90Hits;
00128 double _pfMHT;
00129 double _min_NHEF;
00130 double _max_NHEF;
00131 double _min_CHEF;
00132 double _max_CHEF;
00133 double _min_NEMF;
00134 double _max_NEMF;
00135 double _min_CEMF;
00136 double _max_CEMF;
00137
00138 edm::InputTag triggerSummaryLabel_;
00139 edm::InputTag triggerResultsLabel_;
00140 edm::InputTag caloJetsTag_;
00141 edm::InputTag caloMETTag_;
00142 edm::InputTag pfJetsTag_;
00143 edm::InputTag pfMETTag_;
00144
00145 edm::Handle<reco::CaloJetCollection> calojetColl_;
00146 edm::Handle<reco::CaloMETCollection> calometColl_;
00147 edm::Handle<reco::PFJetCollection> pfjetColl_;
00148 edm::Handle<reco::PFMETCollection> pfmetColl_;
00149
00150 std::string CaloJetCorService_;
00151 std::string PFJetCorService_;
00152
00153 std::vector<std::string> pathFilter_;
00154 std::vector<std::string> pathRejectKeyword_;
00155 std::vector<std::pair<std::string, std::string> > custompathnamepairs_;
00156
00157 reco::CaloJetCollection calojet;
00158 reco::PFJetCollection pfjet;
00159 HLTConfigProvider hltConfig_;
00160 edm::Handle<edm::TriggerResults> triggerResults_;
00161 edm::TriggerNames triggerNames_;
00162 edm::Handle<trigger::TriggerEvent> triggerObj_;
00163
00164 double CaloJetPx[2];
00165 double CaloJetPy[2];
00166 double CaloJetPt[2];
00167 double CaloJetEta[2];
00168 double CaloJetPhi[2];
00169 double CaloJetEMF[2];
00170 double CaloJetfHPD[2];
00171 double CaloJetn90[2];
00172
00173 double PFJetPx[2];
00174 double PFJetPy[2];
00175 double PFJetPt[2];
00176 double PFJetEta[2];
00177 double PFJetPhi[2];
00178 double PFJetNHEF[2];
00179 double PFJetCHEF[2];
00180 double PFJetNEMF[2];
00181 double PFJetCEMF[2];
00182
00183 double pfMHTx_All;
00184 double pfMHTy_All;
00185
00186
00187
00188 MonitorElement* scalersSelect;
00189
00190
00191 class PathInfo {
00192 PathInfo():
00193 pathIndex_(-1),
00194 prescaleUsed_(-1),
00195 denomPathName_("unset"),
00196 pathName_("unset"),
00197 l1pathName_("unset"),
00198 filterName_("unset"),
00199 DenomfilterName_("unset"),
00200 processName_("unset"),
00201 objectType_(-1),
00202 triggerType_("unset")
00203 {};
00204 public:
00205 void setHistos(MonitorElement* const N,
00206 MonitorElement* const Pt,
00207 MonitorElement* const PtBarrel,
00208 MonitorElement* const PtEndcap,
00209 MonitorElement* const PtForward,
00210 MonitorElement* const Eta,
00211 MonitorElement* const Phi,
00212 MonitorElement* const EtaPhi,
00213
00214 MonitorElement* const N_L1,
00215 MonitorElement* const Pt_L1,
00216 MonitorElement* const PtBarrel_L1,
00217 MonitorElement* const PtEndcap_L1,
00218 MonitorElement* const PtForward_L1,
00219 MonitorElement* const Eta_L1,
00220 MonitorElement* const Phi_L1,
00221 MonitorElement* const EtaPhi_L1,
00222 MonitorElement* const N_HLT,
00223 MonitorElement* const Pt_HLT,
00224 MonitorElement* const PtBarrel_HLT,
00225 MonitorElement* const PtEndcap_HLT,
00226 MonitorElement* const PtForward_HLT,
00227 MonitorElement* const Eta_HLT,
00228 MonitorElement* const Phi_HLT,
00229 MonitorElement* const EtaPhi_HLT,
00230
00231 MonitorElement* const PtResolution_L1HLT,
00232 MonitorElement* const EtaResolution_L1HLT,
00233 MonitorElement* const PhiResolution_L1HLT,
00234 MonitorElement* const PtResolution_HLTRecObj,
00235 MonitorElement* const EtaResolution_HLTRecObj,
00236 MonitorElement* const PhiResolution_HLTRecObj,
00237
00238 MonitorElement* const PtCorrelation_L1HLT,
00239 MonitorElement* const EtaCorrelation_L1HLT,
00240 MonitorElement* const PhiCorrelation_L1HLT,
00241 MonitorElement* const PtCorrelation_HLTRecObj,
00242 MonitorElement* const EtaCorrelation_HLTRecObj,
00243 MonitorElement* const PhiCorrelation_HLTRecObj,
00244
00245 MonitorElement* const JetAveragePt,
00246 MonitorElement* const JetAverageEta,
00247 MonitorElement* const JetPhiDifference,
00248 MonitorElement* const HLTAveragePt,
00249 MonitorElement* const HLTAverageEta,
00250 MonitorElement* const HLTPhiDifference,
00251 MonitorElement* const L1AveragePt,
00252 MonitorElement* const L1AverageEta,
00253 MonitorElement* const L1PhiDifference
00254
00255
00256
00257 )
00258
00259 {
00260 N_ = N;
00261 Pt_ = Pt;
00262 PtBarrel_ = PtBarrel;
00263 PtEndcap_ = PtEndcap;
00264 PtForward_ = PtForward;
00265 Eta_ = Eta;
00266 Phi_ = Phi;
00267 EtaPhi_ = EtaPhi;
00268 N_L1_ = N_L1;
00269 Pt_L1_ = Pt_L1;
00270 PtBarrel_L1_ = PtBarrel_L1;
00271 PtEndcap_L1_ = PtEndcap_L1;
00272 PtForward_L1_ = PtForward_L1;
00273 Eta_L1_ = Eta_L1;
00274 Phi_L1_ = Phi_L1;
00275 EtaPhi_L1_ = EtaPhi_L1 ;
00276 N_HLT_ = N_HLT;
00277 Pt_HLT_ = Pt_HLT;
00278 PtBarrel_HLT_ = PtBarrel_HLT;
00279 PtEndcap_HLT_ = PtEndcap_HLT;
00280 PtForward_HLT_ = PtForward_HLT;
00281 Eta_HLT_ = Eta_HLT;
00282 Phi_HLT_ = Phi_HLT;
00283 EtaPhi_HLT_ = EtaPhi_HLT ;
00284
00285 PtResolution_L1HLT_ = PtResolution_L1HLT;
00286 EtaResolution_L1HLT_ = EtaResolution_L1HLT;
00287 PhiResolution_L1HLT_ = PhiResolution_L1HLT;
00288 PtResolution_HLTRecObj_ = PtResolution_HLTRecObj;
00289 EtaResolution_HLTRecObj_ = EtaResolution_HLTRecObj;
00290 PhiResolution_HLTRecObj_ = PhiResolution_HLTRecObj;
00291
00292 PtCorrelation_L1HLT_ = PtCorrelation_L1HLT;
00293 EtaCorrelation_L1HLT_ = EtaCorrelation_L1HLT;
00294 PhiCorrelation_L1HLT_ = PhiCorrelation_L1HLT;
00295 PtCorrelation_HLTRecObj_ = PtCorrelation_HLTRecObj;
00296 EtaCorrelation_HLTRecObj_ = EtaCorrelation_HLTRecObj;
00297 PhiCorrelation_HLTRecObj_ = PhiCorrelation_HLTRecObj;
00298
00299 JetAveragePt_ = JetAveragePt;
00300 JetAverageEta_ = JetAverageEta;
00301 JetPhiDifference_ = JetPhiDifference;
00302 HLTAveragePt_ = HLTAveragePt;
00303 HLTAverageEta_ = HLTAverageEta;
00304 HLTPhiDifference_ = HLTPhiDifference;
00305 L1AveragePt_ = L1AveragePt;
00306 L1AverageEta_ = L1AverageEta;
00307 L1PhiDifference_ = L1PhiDifference;
00308 };
00309
00310 void setDgnsHistos(MonitorElement* const TriggerSummary,
00311 MonitorElement* const JetSize,
00312 MonitorElement* const JetPt,
00313 MonitorElement* const EtavsPt,
00314 MonitorElement* const PhivsPt,
00315 MonitorElement* const Pt12,
00316 MonitorElement* const Eta12,
00317 MonitorElement* const Phi12,
00318 MonitorElement* const Pt3,
00319 MonitorElement* const Pt12Pt3,
00320 MonitorElement* const Pt12Phi12
00321 )
00322 {
00323 TriggerSummary_ = TriggerSummary;
00324 JetSize_ = JetSize;
00325 JetPt_ = JetPt;
00326 EtavsPt_ = EtavsPt;
00327 PhivsPt_ = PhivsPt;
00328 Pt12_ = Pt12;
00329 Eta12_ = Eta12;
00330 Phi12_ = Phi12;
00331 Pt3_ = Pt3;
00332 Pt12Pt3_ = Pt12Pt3;
00333 Pt12Phi12_ = Pt12Phi12;
00334 };
00335
00336 void setEffHistos(MonitorElement* const NumeratorPt,
00337 MonitorElement* const NumeratorPtBarrel,
00338 MonitorElement* const NumeratorPtEndcap,
00339 MonitorElement* const NumeratorPtForward,
00340 MonitorElement* const NumeratorEta,
00341 MonitorElement* const NumeratorPhi,
00342 MonitorElement* const NumeratorEtaPhi,
00343
00344 MonitorElement* const NumeratorEtaBarrel,
00345 MonitorElement* const NumeratorPhiBarrel,
00346 MonitorElement* const NumeratorEtaEndcap,
00347 MonitorElement* const NumeratorPhiEndcap,
00348 MonitorElement* const NumeratorEtaForward,
00349 MonitorElement* const NumeratorPhiForward,
00350 MonitorElement* const NumeratorEta_LowpTcut,
00351 MonitorElement* const NumeratorPhi_LowpTcut,
00352 MonitorElement* const NumeratorEtaPhi_LowpTcut,
00353 MonitorElement* const NumeratorEta_MedpTcut,
00354 MonitorElement* const NumeratorPhi_MedpTcut,
00355 MonitorElement* const NumeratorEtaPhi_MedpTcut,
00356 MonitorElement* const NumeratorEta_HighpTcut,
00357 MonitorElement* const NumeratorPhi_HighpTcut,
00358 MonitorElement* const NumeratorEtaPhi_HighpTcut,
00359
00360 MonitorElement* const DenominatorPt,
00361 MonitorElement* const DenominatorPtBarrel,
00362 MonitorElement* const DenominatorPtEndcap,
00363 MonitorElement* const DenominatorPtForward,
00364 MonitorElement* const DenominatorEta,
00365 MonitorElement* const DenominatorPhi,
00366 MonitorElement* const DenominatorEtaPhi,
00367
00368 MonitorElement* const DenominatorEtaBarrel,
00369 MonitorElement* const DenominatorPhiBarrel,
00370 MonitorElement* const DenominatorEtaEndcap,
00371 MonitorElement* const DenominatorPhiEndcap,
00372 MonitorElement* const DenominatorEtaForward,
00373 MonitorElement* const DenominatorPhiForward,
00374 MonitorElement* const DenominatorEta_LowpTcut,
00375 MonitorElement* const DenominatorPhi_LowpTcut,
00376 MonitorElement* const DenominatorEtaPhi_LowpTcut,
00377 MonitorElement* const DenominatorEta_MedpTcut,
00378 MonitorElement* const DenominatorPhi_MedpTcut,
00379 MonitorElement* const DenominatorEtaPhi_MedpTcut,
00380 MonitorElement* const DenominatorEta_HighpTcut,
00381 MonitorElement* const DenominatorPhi_HighpTcut,
00382 MonitorElement* const DenominatorEtaPhi_HighpTcut,
00383
00384 MonitorElement* const DeltaR,
00385 MonitorElement* const DeltaPhi,
00386
00387 MonitorElement* const NumeratorPFPt,
00388 MonitorElement* const NumeratorPFMHT,
00389 MonitorElement* const NumeratorPFPtBarrel,
00390 MonitorElement* const NumeratorPFPtEndcap,
00391 MonitorElement* const NumeratorPFPtForward,
00392 MonitorElement* const NumeratorPFEta,
00393 MonitorElement* const NumeratorPFPhi,
00394 MonitorElement* const NumeratorPFEtaPhi,
00395
00396 MonitorElement* const NumeratorPFEtaBarrel,
00397 MonitorElement* const NumeratorPFPhiBarrel,
00398 MonitorElement* const NumeratorPFEtaEndcap,
00399 MonitorElement* const NumeratorPFPhiEndcap,
00400 MonitorElement* const NumeratorPFEtaForward,
00401 MonitorElement* const NumeratorPFPhiForward,
00402 MonitorElement* const NumeratorPFEta_LowpTcut,
00403 MonitorElement* const NumeratorPFPhi_LowpTcut,
00404 MonitorElement* const NumeratorPFEtaPhi_LowpTcut,
00405 MonitorElement* const NumeratorPFEta_MedpTcut,
00406 MonitorElement* const NumeratorPFPhi_MedpTcut,
00407 MonitorElement* const NumeratorPFEtaPhi_MedpTcut,
00408 MonitorElement* const NumeratorPFEta_HighpTcut,
00409 MonitorElement* const NumeratorPFPhi_HighpTcut,
00410 MonitorElement* const NumeratorPFEtaPhi_HighpTcut,
00411
00412 MonitorElement* const DenominatorPFPt,
00413 MonitorElement* const DenominatorPFMHT,
00414 MonitorElement* const DenominatorPFPtBarrel,
00415 MonitorElement* const DenominatorPFPtEndcap,
00416 MonitorElement* const DenominatorPFPtForward,
00417 MonitorElement* const DenominatorPFEta,
00418 MonitorElement* const DenominatorPFPhi,
00419 MonitorElement* const DenominatorPFEtaPhi,
00420
00421 MonitorElement* const DenominatorPFEtaBarrel,
00422 MonitorElement* const DenominatorPFPhiBarrel,
00423 MonitorElement* const DenominatorPFEtaEndcap,
00424 MonitorElement* const DenominatorPFPhiEndcap,
00425 MonitorElement* const DenominatorPFEtaForward,
00426 MonitorElement* const DenominatorPFPhiForward,
00427 MonitorElement* const DenominatorPFEta_LowpTcut,
00428 MonitorElement* const DenominatorPFPhi_LowpTcut,
00429 MonitorElement* const DenominatorPFEtaPhi_LowpTcut,
00430 MonitorElement* const DenominatorPFEta_MedpTcut,
00431 MonitorElement* const DenominatorPFPhi_MedpTcut,
00432 MonitorElement* const DenominatorPFEtaPhi_MedpTcut,
00433 MonitorElement* const DenominatorPFEta_HighpTcut,
00434 MonitorElement* const DenominatorPFPhi_HighpTcut,
00435 MonitorElement* const DenominatorPFEtaPhi_HighpTcut,
00436
00437 MonitorElement* const PFDeltaR,
00438 MonitorElement* const PFDeltaPhi
00439 )
00440 {
00441 NumeratorPt_ = NumeratorPt;
00442 NumeratorPtBarrel_ = NumeratorPtBarrel;
00443 NumeratorPtEndcap_ = NumeratorPtEndcap;
00444 NumeratorPtForward_ = NumeratorPtForward;
00445 NumeratorEta_ = NumeratorEta;
00446 NumeratorPhi_ = NumeratorPhi;
00447 NumeratorEtaPhi_ = NumeratorEtaPhi;
00448
00449 NumeratorEtaBarrel_ = NumeratorEtaBarrel;
00450 NumeratorPhiBarrel_ = NumeratorPhiBarrel;
00451 NumeratorEtaEndcap_ = NumeratorEtaEndcap;
00452 NumeratorPhiEndcap_ = NumeratorPhiEndcap;
00453 NumeratorEtaForward_ = NumeratorEtaForward;
00454 NumeratorPhiForward_ = NumeratorPhiForward;
00455 NumeratorEta_LowpTcut_ = NumeratorEta_LowpTcut;
00456 NumeratorPhi_LowpTcut_ = NumeratorPhi_LowpTcut;
00457 NumeratorEtaPhi_LowpTcut_ = NumeratorEtaPhi_LowpTcut;
00458 NumeratorEta_MedpTcut_ = NumeratorEta_MedpTcut;
00459 NumeratorPhi_MedpTcut_ = NumeratorPhi_MedpTcut;
00460 NumeratorEtaPhi_MedpTcut_ = NumeratorEtaPhi_MedpTcut;
00461 NumeratorEta_HighpTcut_ = NumeratorEta_HighpTcut;
00462 NumeratorPhi_HighpTcut_ = NumeratorPhi_HighpTcut;
00463 NumeratorEtaPhi_HighpTcut_ = NumeratorEtaPhi_HighpTcut;
00464
00465 DenominatorPt_ = DenominatorPt;
00466 DenominatorPtBarrel_ = DenominatorPtBarrel;
00467 DenominatorPtEndcap_ = DenominatorPtEndcap;
00468 DenominatorPtForward_ = DenominatorPtForward;
00469 DenominatorEta_ = DenominatorEta;
00470 DenominatorPhi_ = DenominatorPhi;
00471 DenominatorEtaPhi_ = DenominatorEtaPhi;
00472
00473 DenominatorEtaBarrel_ = DenominatorEtaBarrel;
00474 DenominatorPhiBarrel_ = DenominatorPhiBarrel;
00475 DenominatorEtaEndcap_ = DenominatorEtaEndcap;
00476 DenominatorPhiEndcap_ = DenominatorPhiEndcap;
00477 DenominatorEtaForward_ = DenominatorEtaForward;
00478 DenominatorPhiForward_ = DenominatorPhiForward;
00479 DenominatorEta_LowpTcut_ = DenominatorEta_LowpTcut;
00480 DenominatorPhi_LowpTcut_ = DenominatorPhi_LowpTcut;
00481 DenominatorEtaPhi_LowpTcut_ = DenominatorEtaPhi_LowpTcut;
00482 DenominatorEta_MedpTcut_ = DenominatorEta_MedpTcut;
00483 DenominatorPhi_MedpTcut_ = DenominatorPhi_MedpTcut;
00484 DenominatorEtaPhi_MedpTcut_ = DenominatorEtaPhi_MedpTcut;
00485 DenominatorEta_HighpTcut_ = DenominatorEta_HighpTcut;
00486 DenominatorPhi_HighpTcut_ = DenominatorPhi_HighpTcut;
00487 DenominatorEtaPhi_HighpTcut_ = DenominatorEtaPhi_HighpTcut;
00488
00489 DeltaR_ = DeltaR;
00490 DeltaPhi_ = DeltaPhi;
00491
00492 NumeratorPFPt_ = NumeratorPFPt;
00493 NumeratorPFMHT_ = NumeratorPFMHT;
00494 NumeratorPFPtBarrel_ = NumeratorPFPtBarrel;
00495 NumeratorPFPtEndcap_ = NumeratorPFPtEndcap;
00496 NumeratorPFPtForward_ = NumeratorPFPtForward;
00497 NumeratorPFEta_ = NumeratorPFEta;
00498 NumeratorPFPhi_ = NumeratorPFPhi;
00499 NumeratorPFEtaPhi_ = NumeratorPFEtaPhi;
00500
00501 NumeratorPFEtaBarrel_ = NumeratorPFEtaBarrel;
00502 NumeratorPFPhiBarrel_ = NumeratorPFPhiBarrel;
00503 NumeratorPFEtaEndcap_ = NumeratorPFEtaEndcap;
00504 NumeratorPFPhiEndcap_ = NumeratorPFPhiEndcap;
00505 NumeratorPFEtaForward_ = NumeratorPFEtaForward;
00506 NumeratorPFPhiForward_ = NumeratorPFPhiForward;
00507 NumeratorPFEta_LowpTcut_ = NumeratorPFEta_LowpTcut;
00508 NumeratorPFPhi_LowpTcut_ = NumeratorPFPhi_LowpTcut;
00509 NumeratorPFEtaPhi_LowpTcut_ = NumeratorPFEtaPhi_LowpTcut;
00510 NumeratorPFEta_MedpTcut_ = NumeratorPFEta_MedpTcut;
00511 NumeratorPFPhi_MedpTcut_ = NumeratorPFPhi_MedpTcut;
00512 NumeratorPFEtaPhi_MedpTcut_ = NumeratorPFEtaPhi_MedpTcut;
00513 NumeratorPFEta_HighpTcut_ = NumeratorPFEta_HighpTcut;
00514 NumeratorPFPhi_HighpTcut_ = NumeratorPFPhi_HighpTcut;
00515 NumeratorPFEtaPhi_HighpTcut_ = NumeratorPFEtaPhi_HighpTcut;
00516
00517 DenominatorPFPt_ = DenominatorPFPt;
00518 DenominatorPFMHT_ = DenominatorPFMHT;
00519 DenominatorPFPtBarrel_ = DenominatorPFPtBarrel;
00520 DenominatorPFPtEndcap_ = DenominatorPFPtEndcap;
00521 DenominatorPFPtForward_ = DenominatorPFPtForward;
00522 DenominatorPFEta_ = DenominatorPFEta;
00523 DenominatorPFPhi_ = DenominatorPFPhi;
00524 DenominatorPFEtaPhi_ = DenominatorPFEtaPhi;
00525
00526 DenominatorPFEtaBarrel_ = DenominatorPFEtaBarrel;
00527 DenominatorPFPhiBarrel_ = DenominatorPFPhiBarrel;
00528 DenominatorPFEtaEndcap_ = DenominatorPFEtaEndcap;
00529 DenominatorPFPhiEndcap_ = DenominatorPFPhiEndcap;
00530 DenominatorPFEtaForward_ = DenominatorPFEtaForward;
00531 DenominatorPFPhiForward_ = DenominatorPFPhiForward;
00532 DenominatorPFEta_LowpTcut_ = DenominatorPFEta_LowpTcut;
00533 DenominatorPFPhi_LowpTcut_ = DenominatorPFPhi_LowpTcut;
00534 DenominatorPFEtaPhi_LowpTcut_ = DenominatorPFEtaPhi_LowpTcut;
00535 DenominatorPFEta_MedpTcut_ = DenominatorPFEta_MedpTcut;
00536 DenominatorPFPhi_MedpTcut_ = DenominatorPFPhi_MedpTcut;
00537 DenominatorPFEtaPhi_MedpTcut_ = DenominatorPFEtaPhi_MedpTcut;
00538 DenominatorPFEta_HighpTcut_ = DenominatorPFEta_HighpTcut;
00539 DenominatorPFPhi_HighpTcut_ = DenominatorPFPhi_HighpTcut;
00540 DenominatorPFEtaPhi_HighpTcut_ = DenominatorPFEtaPhi_HighpTcut;
00541
00542 PFDeltaR_ = PFDeltaR;
00543 PFDeltaPhi_ = PFDeltaPhi;
00544
00545
00546 };
00547 ~PathInfo() {};
00548 PathInfo(int prescaleUsed,
00549 std::string denomPathName,
00550 std::string pathName,
00551 std::string l1pathName,
00552 std::string filterName,
00553 std::string DenomfilterName,
00554 std::string processName,
00555 size_t type,
00556 std::string triggerType):
00557 prescaleUsed_(prescaleUsed),
00558 denomPathName_(denomPathName),
00559 pathName_(pathName),
00560 l1pathName_(l1pathName),
00561 filterName_(filterName),
00562 DenomfilterName_(DenomfilterName),
00563 processName_(processName),
00564 objectType_(type),
00565 triggerType_(triggerType){};
00566
00567 MonitorElement * getMEhisto_N() { return N_;}
00568 MonitorElement * getMEhisto_Pt() { return Pt_;}
00569 MonitorElement * getMEhisto_PtBarrel() { return PtBarrel_;}
00570 MonitorElement * getMEhisto_PtEndcap() { return PtEndcap_;}
00571 MonitorElement * getMEhisto_PtForward() { return PtForward_;}
00572 MonitorElement * getMEhisto_Eta() { return Eta_; }
00573 MonitorElement * getMEhisto_Phi() { return Phi_; }
00574 MonitorElement * getMEhisto_EtaPhi() { return EtaPhi_; }
00575
00576 MonitorElement * getMEhisto_N_L1() { return N_L1_;}
00577 MonitorElement * getMEhisto_Pt_L1() { return Pt_L1_;}
00578 MonitorElement * getMEhisto_PtBarrel_L1() { return PtBarrel_L1_;}
00579 MonitorElement * getMEhisto_PtEndcap_L1() { return PtEndcap_L1_;}
00580 MonitorElement * getMEhisto_PtForward_L1() { return PtForward_L1_;}
00581 MonitorElement * getMEhisto_Eta_L1() { return Eta_L1_; }
00582 MonitorElement * getMEhisto_Phi_L1() { return Phi_L1_; }
00583 MonitorElement * getMEhisto_EtaPhi_L1() { return EtaPhi_L1_; }
00584
00585 MonitorElement * getMEhisto_N_HLT() { return N_HLT_;}
00586 MonitorElement * getMEhisto_Pt_HLT() { return Pt_HLT_;}
00587 MonitorElement * getMEhisto_PtBarrel_HLT() { return PtBarrel_HLT_;}
00588 MonitorElement * getMEhisto_PtEndcap_HLT() { return PtEndcap_HLT_;}
00589 MonitorElement * getMEhisto_PtForward_HLT() { return PtForward_HLT_;}
00590 MonitorElement * getMEhisto_Eta_HLT() { return Eta_HLT_; }
00591 MonitorElement * getMEhisto_Phi_HLT() { return Phi_HLT_; }
00592 MonitorElement * getMEhisto_EtaPhi_HLT() { return EtaPhi_HLT_; }
00593
00594 MonitorElement * getMEhisto_PtResolution_L1HLT() { return PtResolution_L1HLT_;}
00595 MonitorElement * getMEhisto_EtaResolution_L1HLT() { return EtaResolution_L1HLT_;}
00596 MonitorElement * getMEhisto_PhiResolution_L1HLT() { return PhiResolution_L1HLT_;}
00597 MonitorElement * getMEhisto_PtResolution_HLTRecObj() { return PtResolution_HLTRecObj_;}
00598 MonitorElement * getMEhisto_EtaResolution_HLTRecObj() { return EtaResolution_HLTRecObj_;}
00599 MonitorElement * getMEhisto_PhiResolution_HLTRecObj() { return PhiResolution_HLTRecObj_;}
00600
00601 MonitorElement * getMEhisto_PtCorrelation_L1HLT() { return PtCorrelation_L1HLT_;}
00602 MonitorElement * getMEhisto_EtaCorrelation_L1HLT() { return EtaCorrelation_L1HLT_;}
00603 MonitorElement * getMEhisto_PhiCorrelation_L1HLT() { return PhiCorrelation_L1HLT_;}
00604 MonitorElement * getMEhisto_PtCorrelation_HLTRecObj() { return PtCorrelation_HLTRecObj_;}
00605 MonitorElement * getMEhisto_EtaCorrelation_HLTRecObj() { return EtaCorrelation_HLTRecObj_;}
00606 MonitorElement * getMEhisto_PhiCorrelation_HLTRecObj() { return PhiCorrelation_HLTRecObj_;}
00607
00608 MonitorElement * getMEhisto_AveragePt_RecObj() {return JetAveragePt_;}
00609 MonitorElement * getMEhisto_AverageEta_RecObj() {return JetAverageEta_;}
00610 MonitorElement * getMEhisto_DeltaPhi_RecObj() {return JetPhiDifference_;}
00611 MonitorElement * getMEhisto_AveragePt_HLTObj() {return HLTAveragePt_;}
00612 MonitorElement * getMEhisto_AverageEta_HLTObj() {return HLTAverageEta_;}
00613 MonitorElement * getMEhisto_DeltaPhi_HLTObj() {return HLTPhiDifference_;}
00614 MonitorElement * getMEhisto_AveragePt_L1Obj() {return L1AveragePt_;}
00615 MonitorElement * getMEhisto_AverageEta_L1Obj() {return L1AverageEta_;}
00616 MonitorElement * getMEhisto_DeltaPhi_L1Obj() {return L1PhiDifference_;}
00617
00618 MonitorElement * getMEhisto_NumeratorPt() { return NumeratorPt_;}
00619 MonitorElement * getMEhisto_NumeratorPtBarrel() { return NumeratorPtBarrel_;}
00620 MonitorElement * getMEhisto_NumeratorPtEndcap() { return NumeratorPtEndcap_;}
00621 MonitorElement * getMEhisto_NumeratorPtForward() { return NumeratorPtForward_;}
00622 MonitorElement * getMEhisto_NumeratorEta() { return NumeratorEta_; }
00623 MonitorElement * getMEhisto_NumeratorPhi() { return NumeratorPhi_; }
00624 MonitorElement * getMEhisto_NumeratorEtaPhi() { return NumeratorEtaPhi_; }
00625
00626
00627 MonitorElement * getMEhisto_NVertices() { return NVertices_; }
00628 MonitorElement * getMEhisto_PVZ() { return PVZ_; }
00629
00630 MonitorElement * getMEhisto_NumeratorEtaBarrel() { return NumeratorEtaBarrel_; }
00631 MonitorElement * getMEhisto_NumeratorPhiBarrel() { return NumeratorPhiBarrel_; }
00632 MonitorElement * getMEhisto_NumeratorEtaEndcap() { return NumeratorEtaEndcap_; }
00633 MonitorElement * getMEhisto_NumeratorPhiEndcap() { return NumeratorPhiEndcap_; }
00634 MonitorElement * getMEhisto_NumeratorEtaForward() { return NumeratorEtaForward_; }
00635 MonitorElement * getMEhisto_NumeratorPhiForward() { return NumeratorPhiForward_; }
00636 MonitorElement * getMEhisto_NumeratorEta_LowpTcut() { return NumeratorEta_LowpTcut_; }
00637 MonitorElement * getMEhisto_NumeratorPhi_LowpTcut() { return NumeratorPhi_LowpTcut_; }
00638 MonitorElement * getMEhisto_NumeratorEtaPhi_LowpTcut() { return NumeratorEtaPhi_LowpTcut_; }
00639 MonitorElement * getMEhisto_NumeratorEta_MedpTcut() { return NumeratorEta_MedpTcut_; }
00640 MonitorElement * getMEhisto_NumeratorPhi_MedpTcut() { return NumeratorPhi_MedpTcut_; }
00641 MonitorElement * getMEhisto_NumeratorEtaPhi_MedpTcut() { return NumeratorEtaPhi_MedpTcut_; }
00642 MonitorElement * getMEhisto_NumeratorEta_HighpTcut() { return NumeratorEta_HighpTcut_; }
00643 MonitorElement * getMEhisto_NumeratorPhi_HighpTcut() { return NumeratorPhi_HighpTcut_; }
00644 MonitorElement * getMEhisto_NumeratorEtaPhi_HighpTcut() { return NumeratorEtaPhi_HighpTcut_; }
00645
00646
00647 MonitorElement * getMEhisto_DenominatorPt() { return DenominatorPt_;}
00648 MonitorElement * getMEhisto_DenominatorPtBarrel() { return DenominatorPtBarrel_;}
00649 MonitorElement * getMEhisto_DenominatorPtEndcap() { return DenominatorPtEndcap_;}
00650 MonitorElement * getMEhisto_DenominatorPtForward() { return DenominatorPtForward_;}
00651 MonitorElement * getMEhisto_DenominatorEta() { return DenominatorEta_; }
00652 MonitorElement * getMEhisto_DenominatorPhi() { return DenominatorPhi_; }
00653 MonitorElement * getMEhisto_DenominatorEtaPhi() { return DenominatorEtaPhi_; }
00654
00655
00656 MonitorElement * getMEhisto_DenominatorEtaBarrel() { return DenominatorEtaBarrel_; }
00657 MonitorElement * getMEhisto_DenominatorPhiBarrel() { return DenominatorPhiBarrel_; }
00658 MonitorElement * getMEhisto_DenominatorEtaEndcap() { return DenominatorEtaEndcap_; }
00659 MonitorElement * getMEhisto_DenominatorPhiEndcap() { return DenominatorPhiEndcap_; }
00660 MonitorElement * getMEhisto_DenominatorEtaForward() { return DenominatorEtaForward_; }
00661 MonitorElement * getMEhisto_DenominatorPhiForward() { return DenominatorPhiForward_; }
00662
00663 MonitorElement * getMEhisto_DenominatorEta_LowpTcut() { return DenominatorEta_LowpTcut_; }
00664 MonitorElement * getMEhisto_DenominatorPhi_LowpTcut() { return DenominatorPhi_LowpTcut_; }
00665 MonitorElement * getMEhisto_DenominatorEtaPhi_LowpTcut() { return DenominatorEtaPhi_LowpTcut_; }
00666 MonitorElement * getMEhisto_DenominatorEta_MedpTcut() { return DenominatorEta_MedpTcut_; }
00667 MonitorElement * getMEhisto_DenominatorPhi_MedpTcut() { return DenominatorPhi_MedpTcut_; }
00668 MonitorElement * getMEhisto_DenominatorEtaPhi_MedpTcut() { return DenominatorEtaPhi_MedpTcut_; }
00669 MonitorElement * getMEhisto_DenominatorEta_HighpTcut() { return DenominatorEta_HighpTcut_; }
00670 MonitorElement * getMEhisto_DenominatorPhi_HighpTcut() { return DenominatorPhi_HighpTcut_; }
00671 MonitorElement * getMEhisto_DenominatorEtaPhi_HighpTcut() { return DenominatorEtaPhi_HighpTcut_; }
00672
00673 MonitorElement * getMEhisto_NumeratorPFPt() { return NumeratorPFPt_;}
00674 MonitorElement * getMEhisto_NumeratorPFMHT() { return NumeratorPFMHT_;}
00675
00676 MonitorElement * getMEhisto_NumeratorPFPtBarrel() { return NumeratorPFPtBarrel_;}
00677 MonitorElement * getMEhisto_NumeratorPFPtEndcap() { return NumeratorPFPtEndcap_;}
00678 MonitorElement * getMEhisto_NumeratorPFPtForward() { return NumeratorPFPtForward_;}
00679 MonitorElement * getMEhisto_NumeratorPFEta() { return NumeratorPFEta_; }
00680 MonitorElement * getMEhisto_NumeratorPFPhi() { return NumeratorPFPhi_; }
00681 MonitorElement * getMEhisto_NumeratorPFEtaPhi() { return NumeratorPFEtaPhi_; }
00682
00683 MonitorElement * getMEhisto_NumeratorPFEtaBarrel() { return NumeratorPFEtaBarrel_; }
00684 MonitorElement * getMEhisto_NumeratorPFPhiBarrel() { return NumeratorPFPhiBarrel_; }
00685 MonitorElement * getMEhisto_NumeratorPFEtaEndcap() { return NumeratorPFEtaEndcap_; }
00686 MonitorElement * getMEhisto_NumeratorPFPhiEndcap() { return NumeratorPFPhiEndcap_; }
00687 MonitorElement * getMEhisto_NumeratorPFEtaForward() { return NumeratorPFEtaForward_; }
00688 MonitorElement * getMEhisto_NumeratorPFPhiForward() { return NumeratorPFPhiForward_; }
00689 MonitorElement * getMEhisto_NumeratorPFEta_LowpTcut() { return NumeratorPFEta_LowpTcut_; }
00690 MonitorElement * getMEhisto_NumeratorPFPhi_LowpTcut() { return NumeratorPFPhi_LowpTcut_; }
00691 MonitorElement * getMEhisto_NumeratorPFEtaPhi_LowpTcut() { return NumeratorPFEtaPhi_LowpTcut_; }
00692 MonitorElement * getMEhisto_NumeratorPFEta_MedpTcut() { return NumeratorPFEta_MedpTcut_; }
00693 MonitorElement * getMEhisto_NumeratorPFPhi_MedpTcut() { return NumeratorPFPhi_MedpTcut_; }
00694 MonitorElement * getMEhisto_NumeratorPFEtaPhi_MedpTcut() { return NumeratorPFEtaPhi_MedpTcut_; }
00695 MonitorElement * getMEhisto_NumeratorPFEta_HighpTcut() { return NumeratorPFEta_HighpTcut_; }
00696 MonitorElement * getMEhisto_NumeratorPFPhi_HighpTcut() { return NumeratorPFPhi_HighpTcut_; }
00697 MonitorElement * getMEhisto_NumeratorPFEtaPhi_HighpTcut() { return NumeratorPFEtaPhi_HighpTcut_; }
00698 MonitorElement * getMEhisto_DenominatorPFPt() { return DenominatorPFPt_;}
00699 MonitorElement * getMEhisto_DenominatorPFMHT() { return DenominatorPFMHT_;}
00700 MonitorElement * getMEhisto_DenominatorPFPtBarrel() { return DenominatorPFPtBarrel_;}
00701 MonitorElement * getMEhisto_DenominatorPFPtEndcap() { return DenominatorPFPtEndcap_;}
00702 MonitorElement * getMEhisto_DenominatorPFPtForward() { return DenominatorPFPtForward_;}
00703 MonitorElement * getMEhisto_DenominatorPFEta() { return DenominatorPFEta_; }
00704 MonitorElement * getMEhisto_DenominatorPFPhi() { return DenominatorPFPhi_; }
00705 MonitorElement * getMEhisto_DenominatorPFEtaPhi() { return DenominatorPFEtaPhi_; }
00706
00707 MonitorElement * getMEhisto_DenominatorPFEtaBarrel() { return DenominatorPFEtaBarrel_; }
00708 MonitorElement * getMEhisto_DenominatorPFPhiBarrel() { return DenominatorPFPhiBarrel_; }
00709 MonitorElement * getMEhisto_DenominatorPFEtaEndcap() { return DenominatorPFEtaEndcap_; }
00710 MonitorElement * getMEhisto_DenominatorPFPhiEndcap() { return DenominatorPFPhiEndcap_; }
00711 MonitorElement * getMEhisto_DenominatorPFEtaForward() { return DenominatorPFEtaForward_; }
00712 MonitorElement * getMEhisto_DenominatorPFPhiForward() { return DenominatorPFPhiForward_; }
00713
00714 MonitorElement * getMEhisto_DenominatorPFEta_LowpTcut() { return DenominatorPFEta_LowpTcut_; }
00715 MonitorElement * getMEhisto_DenominatorPFPhi_LowpTcut() { return DenominatorPFPhi_LowpTcut_; }
00716 MonitorElement * getMEhisto_DenominatorPFEtaPhi_LowpTcut() { return DenominatorPFEtaPhi_LowpTcut_; }
00717 MonitorElement * getMEhisto_DenominatorPFEta_MedpTcut() { return DenominatorPFEta_MedpTcut_; }
00718 MonitorElement * getMEhisto_DenominatorPFPhi_MedpTcut() { return DenominatorPFPhi_MedpTcut_; }
00719 MonitorElement * getMEhisto_DenominatorPFEtaPhi_MedpTcut() { return DenominatorPFEtaPhi_MedpTcut_; }
00720 MonitorElement * getMEhisto_DenominatorPFEta_HighpTcut() { return DenominatorPFEta_HighpTcut_; }
00721 MonitorElement * getMEhisto_DenominatorPFPhi_HighpTcut() { return DenominatorPFPhi_HighpTcut_; }
00722 MonitorElement * getMEhisto_DenominatorPFEtaPhi_HighpTcut() { return DenominatorPFEtaPhi_HighpTcut_; }
00723
00724 MonitorElement * getMEhisto_DeltaR() { return DeltaR_; }
00725 MonitorElement * getMEhisto_DeltaPhi() { return DeltaPhi_; }
00726 MonitorElement * getMEhisto_PFDeltaR() { return PFDeltaR_; }
00727 MonitorElement * getMEhisto_PFDeltaPhi() { return PFDeltaPhi_; }
00728
00729 MonitorElement * getMEhisto_TriggerSummary() {return TriggerSummary_;}
00730 MonitorElement * getMEhisto_JetSize() {return JetSize_;}
00731 MonitorElement * getMEhisto_JetPt() {return JetPt_;}
00732 MonitorElement * getMEhisto_EtavsPt(){return EtavsPt_;}
00733 MonitorElement * getMEhisto_PhivsPt(){return PhivsPt_;}
00734 MonitorElement * getMEhisto_Pt12() {return Pt12_;}
00735 MonitorElement * getMEhisto_Eta12() {return Eta12_;}
00736 MonitorElement * getMEhisto_Phi12() {return Phi12_;}
00737 MonitorElement * getMEhisto_Pt3() {return Pt3_;}
00738 MonitorElement * getMEhisto_Pt12Pt3() {return Pt12Pt3_;}
00739 MonitorElement * getMEhisto_Pt12Phi12() {return Pt12Phi12_;}
00740
00741 const std::string getLabel(void ) const {
00742 return filterName_;
00743 }
00744 const std::string getDenomLabel(void ) const {
00745 return DenomfilterName_;
00746 }
00747
00748 void setLabel(std::string labelName){
00749 filterName_ = labelName;
00750 return;
00751 }
00752 void setDenomLabel(std::string labelName){
00753 DenomfilterName_ = labelName;
00754 return;
00755 }
00756 const std::string getPath(void ) const {
00757 return pathName_;
00758 }
00759 const std::string getl1Path(void ) const {
00760 return l1pathName_;
00761 }
00762 const std::string getDenomPath(void ) const {
00763 return denomPathName_;
00764 }
00765 const int getprescaleUsed(void) const {
00766 return prescaleUsed_;
00767 }
00768 const std::string getProcess(void ) const {
00769 return processName_;
00770 }
00771 const int getObjectType(void ) const {
00772 return objectType_;
00773 }
00774 const std::string getTriggerType(void ) const {
00775 return triggerType_;
00776 }
00777 const edm::InputTag getTag(void) const{
00778 edm::InputTag tagName(filterName_,"",processName_);
00779 return tagName;
00780 }
00781 const edm::InputTag getDenomTag(void) const{
00782 edm::InputTag tagName(DenomfilterName_,"",processName_);
00783 return tagName;
00784 }
00785 bool operator==(const std::string v)
00786 {
00787 return v==pathName_;
00788 }
00789
00790 private:
00791 int pathIndex_;
00792 int prescaleUsed_;
00793 std::string denomPathName_;
00794 std::string pathName_;
00795 std::string l1pathName_;
00796 std::string filterName_;
00797 std::string DenomfilterName_;
00798 std::string processName_;
00799 int objectType_;
00800 std::string triggerType_;
00801
00802 MonitorElement* N_;
00803 MonitorElement* Pt_;
00804 MonitorElement* PtBarrel_;
00805 MonitorElement* PtEndcap_;
00806 MonitorElement* PtForward_;
00807 MonitorElement* Eta_;
00808 MonitorElement* Phi_;
00809 MonitorElement* EtaPhi_;
00810 MonitorElement* N_L1_;
00811 MonitorElement* Pt_L1_;
00812 MonitorElement* PtBarrel_L1_;
00813 MonitorElement* PtEndcap_L1_;
00814 MonitorElement* PtForward_L1_;
00815 MonitorElement* Eta_L1_;
00816 MonitorElement* Phi_L1_;
00817 MonitorElement* EtaPhi_L1_;
00818 MonitorElement* N_HLT_;
00819 MonitorElement* Pt_HLT_;
00820 MonitorElement* PtBarrel_HLT_;
00821 MonitorElement* PtEndcap_HLT_;
00822 MonitorElement* PtForward_HLT_;
00823 MonitorElement* Eta_HLT_;
00824 MonitorElement* Phi_HLT_;
00825 MonitorElement* EtaPhi_HLT_;
00826 MonitorElement* DeltaR_HLT_;
00827 MonitorElement* DeltaPhi_HLT_;
00828
00829 MonitorElement* PtResolution_L1HLT_;
00830 MonitorElement* EtaResolution_L1HLT_;
00831 MonitorElement* PhiResolution_L1HLT_;
00832 MonitorElement* PtResolution_HLTRecObj_;
00833 MonitorElement* EtaResolution_HLTRecObj_;
00834 MonitorElement* PhiResolution_HLTRecObj_;
00835 MonitorElement* PtCorrelation_L1HLT_;
00836 MonitorElement* EtaCorrelation_L1HLT_;
00837 MonitorElement* PhiCorrelation_L1HLT_;
00838 MonitorElement* PtCorrelation_HLTRecObj_;
00839 MonitorElement* EtaCorrelation_HLTRecObj_;
00840 MonitorElement* PhiCorrelation_HLTRecObj_;
00841
00842 MonitorElement* JetAveragePt_;
00843 MonitorElement* JetAverageEta_;
00844 MonitorElement* JetPhiDifference_;
00845 MonitorElement* HLTAveragePt_;
00846 MonitorElement* HLTAverageEta_;
00847 MonitorElement* HLTPhiDifference_;
00848 MonitorElement* L1AveragePt_;
00849 MonitorElement* L1AverageEta_;
00850 MonitorElement* L1PhiDifference_;
00851
00852 MonitorElement* NumeratorPt_;
00853 MonitorElement* NumeratorPtBarrel_;
00854 MonitorElement* NumeratorPtEndcap_;
00855 MonitorElement* NumeratorPtForward_;
00856 MonitorElement* NumeratorEta_;
00857 MonitorElement* NumeratorPhi_;
00858 MonitorElement* NumeratorEtaPhi_;
00859
00860
00861 MonitorElement* PVZ_;
00862 MonitorElement* NVertices_;
00863
00864 MonitorElement* NumeratorEtaBarrel_;
00865 MonitorElement* NumeratorPhiBarrel_;
00866 MonitorElement* NumeratorEtaEndcap_;
00867 MonitorElement* NumeratorPhiEndcap_;
00868 MonitorElement* NumeratorEtaForward_;
00869 MonitorElement* NumeratorPhiForward_;
00870
00871 MonitorElement* NumeratorEta_LowpTcut_;
00872 MonitorElement* NumeratorPhi_LowpTcut_;
00873 MonitorElement* NumeratorEtaPhi_LowpTcut_;
00874 MonitorElement* NumeratorEta_MedpTcut_;
00875 MonitorElement* NumeratorPhi_MedpTcut_;
00876 MonitorElement* NumeratorEtaPhi_MedpTcut_;
00877 MonitorElement* NumeratorEta_HighpTcut_;
00878 MonitorElement* NumeratorPhi_HighpTcut_;
00879 MonitorElement* NumeratorEtaPhi_HighpTcut_;
00880
00881
00882 MonitorElement* DenominatorPt_;
00883 MonitorElement* DenominatorPtBarrel_;
00884 MonitorElement* DenominatorPtEndcap_;
00885 MonitorElement* DenominatorPtForward_;
00886 MonitorElement* DenominatorEta_;
00887 MonitorElement* DenominatorPhi_;
00888 MonitorElement* DenominatorEtaPhi_;
00889
00890 MonitorElement* DenominatorEtaBarrel_;
00891 MonitorElement* DenominatorPhiBarrel_;
00892 MonitorElement* DenominatorEtaEndcap_;
00893 MonitorElement* DenominatorPhiEndcap_;
00894 MonitorElement* DenominatorEtaForward_;
00895 MonitorElement* DenominatorPhiForward_;
00896
00897 MonitorElement* DenominatorEta_LowpTcut_;
00898 MonitorElement* DenominatorPhi_LowpTcut_;
00899 MonitorElement* DenominatorEtaPhi_LowpTcut_;
00900 MonitorElement* DenominatorEta_MedpTcut_;
00901 MonitorElement* DenominatorPhi_MedpTcut_;
00902 MonitorElement* DenominatorEtaPhi_MedpTcut_;
00903 MonitorElement* DenominatorEta_HighpTcut_;
00904 MonitorElement* DenominatorPhi_HighpTcut_;
00905 MonitorElement* DenominatorEtaPhi_HighpTcut_;
00906
00907 MonitorElement* DeltaR_;
00908 MonitorElement* DeltaPhi_;
00909
00910
00911 MonitorElement* NumeratorPFPt_;
00912 MonitorElement* NumeratorPFMHT_;
00913 MonitorElement* NumeratorPFPtBarrel_;
00914 MonitorElement* NumeratorPFPtEndcap_;
00915 MonitorElement* NumeratorPFPtForward_;
00916 MonitorElement* NumeratorPFEta_;
00917 MonitorElement* NumeratorPFPhi_;
00918 MonitorElement* NumeratorPFEtaPhi_;
00919 MonitorElement* NumeratorPFEtaBarrel_;
00920 MonitorElement* NumeratorPFPhiBarrel_;
00921 MonitorElement* NumeratorPFEtaEndcap_;
00922 MonitorElement* NumeratorPFPhiEndcap_;
00923 MonitorElement* NumeratorPFEtaForward_;
00924 MonitorElement* NumeratorPFPhiForward_;
00925
00926 MonitorElement* NumeratorPFEta_LowpTcut_;
00927 MonitorElement* NumeratorPFPhi_LowpTcut_;
00928 MonitorElement* NumeratorPFEtaPhi_LowpTcut_;
00929 MonitorElement* NumeratorPFEta_MedpTcut_;
00930 MonitorElement* NumeratorPFPhi_MedpTcut_;
00931 MonitorElement* NumeratorPFEtaPhi_MedpTcut_;
00932 MonitorElement* NumeratorPFEta_HighpTcut_;
00933 MonitorElement* NumeratorPFPhi_HighpTcut_;
00934 MonitorElement* NumeratorPFEtaPhi_HighpTcut_;
00935
00936 MonitorElement* DenominatorPFPt_;
00937 MonitorElement* DenominatorPFMHT_;
00938 MonitorElement* DenominatorPFPtBarrel_;
00939 MonitorElement* DenominatorPFPtEndcap_;
00940 MonitorElement* DenominatorPFPtForward_;
00941 MonitorElement* DenominatorPFEta_;
00942 MonitorElement* DenominatorPFPhi_;
00943 MonitorElement* DenominatorPFEtaPhi_;
00944
00945 MonitorElement* DenominatorPFEtaBarrel_;
00946 MonitorElement* DenominatorPFPhiBarrel_;
00947 MonitorElement* DenominatorPFEtaEndcap_;
00948 MonitorElement* DenominatorPFPhiEndcap_;
00949 MonitorElement* DenominatorPFEtaForward_;
00950 MonitorElement* DenominatorPFPhiForward_;
00951
00952 MonitorElement* DenominatorPFEta_LowpTcut_;
00953 MonitorElement* DenominatorPFPhi_LowpTcut_;
00954 MonitorElement* DenominatorPFEtaPhi_LowpTcut_;
00955 MonitorElement* DenominatorPFEta_MedpTcut_;
00956 MonitorElement* DenominatorPFPhi_MedpTcut_;
00957 MonitorElement* DenominatorPFEtaPhi_MedpTcut_;
00958 MonitorElement* DenominatorPFEta_HighpTcut_;
00959 MonitorElement* DenominatorPFPhi_HighpTcut_;
00960 MonitorElement* DenominatorPFEtaPhi_HighpTcut_;
00961 MonitorElement* PFDeltaR_;
00962 MonitorElement* PFDeltaPhi_;
00963
00964 MonitorElement* TriggerSummary_;
00965 MonitorElement* JetSize_;
00966 MonitorElement* JetPt_;
00967 MonitorElement* EtavsPt_;
00968 MonitorElement* PhivsPt_;
00969 MonitorElement* Pt12_;
00970 MonitorElement* Eta12_;
00971 MonitorElement* Phi12_;
00972 MonitorElement* Pt3_;
00973 MonitorElement* Pt12Pt3_;
00974 MonitorElement* Pt12Phi12_;
00975 };
00976
00977
00978 class PathInfoCollection: public std::vector<PathInfo> {
00979 public:
00980 PathInfoCollection(): std::vector<PathInfo>()
00981 {};
00982 std::vector<PathInfo>::iterator find(std::string pathName) {
00983 return std::find(begin(), end(), pathName);
00984 }
00985 };
00986 PathInfoCollection hltPathsAllTriggerSummary_;
00987 PathInfoCollection hltPathsAll_;
00988 PathInfoCollection hltPathsAllWrtMu_;
00989 PathInfoCollection hltPathsEff_;
00990 PathInfoCollection hltPathsEffWrtMu_;
00991 PathInfoCollection hltPathsEffWrtMB_;
00992
00993 MonitorElement* rate_All;
00994 MonitorElement* rate_AllWrtMu;
00995 MonitorElement* rate_AllWrtMB;
00996
00997 MonitorElement* correlation_All;
00998 MonitorElement* correlation_AllWrtMu;
00999 MonitorElement* correlation_AllWrtMB;
01000 MonitorElement* PVZ;
01001 MonitorElement* NVertices;
01002 };
01003 #endif