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