00001 #ifndef EwkMuDQM_H 00002 #define EwkMuDQM_H 00003 00010 #include "FWCore/Framework/interface/Frameworkfwd.h" 00011 #include "FWCore/Framework/interface/MakerMacros.h" 00012 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h" 00013 00014 #include "FWCore/Framework/interface/EDAnalyzer.h" 00015 #include "FWCore/Utilities/interface/InputTag.h" 00016 00017 class DQMStore; 00018 class MonitorElement; 00019 class EwkMuDQM : public edm::EDAnalyzer { 00020 public: 00021 EwkMuDQM (const edm::ParameterSet &); 00022 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00023 virtual void beginJob(); 00024 virtual void endJob(); 00025 virtual void beginRun(const edm::Run&, const edm::EventSetup&); 00026 virtual void endRun(const edm::Run&, const edm::EventSetup&); 00027 00028 void init_histograms(); 00029 private: 00030 00031 edm::InputTag trigTag_; 00032 edm::InputTag muonTag_; 00033 edm::InputTag metTag_; 00034 //bool metIncludesMuons_; plain met not supported anymore, default is pfMet 00035 edm::InputTag jetTag_; 00036 edm::InputTag vertexTag_; 00037 00038 double ptCut_; 00039 double etaCut_; 00040 bool isRelativeIso_; 00041 bool isCombinedIso_; 00042 double isoCut03_; 00043 double mtMin_; 00044 double mtMax_; 00045 double metMin_; 00046 double metMax_; 00047 double acopCut_; 00048 00049 double dxyCut_; 00050 double normalizedChi2Cut_; 00051 int trackerHitsCut_; 00052 int pixelHitsCut_; 00053 int muonHitsCut_; 00054 bool isAlsoTrackerMuon_; 00055 int nMatchesCut_; 00056 00057 double ptThrForZ1_; 00058 double ptThrForZ2_; 00059 00060 double eJetMin_; 00061 int nJetMax_; 00062 00063 bool isValidHltConfig_; 00064 HLTConfigProvider hltConfigProvider_; 00065 00066 00067 unsigned int nall; 00068 unsigned int nrec; 00069 unsigned int niso; 00070 unsigned int nhlt; 00071 unsigned int nmet; 00072 unsigned int nsel; 00073 00074 00075 DQMStore* theDbe; 00076 00077 MonitorElement* pt_before_; 00078 MonitorElement* pt_after_; 00079 00080 MonitorElement* eta_before_; 00081 MonitorElement* eta_after_; 00082 00083 MonitorElement* dxy_before_; 00084 MonitorElement* dxy_after_; 00085 00086 MonitorElement* chi2_before_; 00087 MonitorElement* chi2_after_; 00088 00089 MonitorElement* nhits_before_; 00090 MonitorElement* nhits_after_; 00091 00092 MonitorElement* muonhits_before_; 00093 MonitorElement* muonhits_after_; 00094 00095 MonitorElement* goodewkmuon_before_; 00096 MonitorElement* goodewkmuon_after_; 00097 00098 MonitorElement* tkmu_before_; 00099 MonitorElement* tkmu_after_; 00100 00101 MonitorElement* iso_before_; 00102 MonitorElement* iso_after_; 00103 00104 MonitorElement* trig_before_; 00105 MonitorElement* trig_after_; 00106 00107 MonitorElement* mt_before_; 00108 MonitorElement* mt_after_; 00109 00110 MonitorElement* met_before_; 00111 MonitorElement* met_after_; 00112 00113 MonitorElement* acop_before_; 00114 MonitorElement* acop_after_; 00115 00116 MonitorElement* nz1_before_; 00117 MonitorElement* nz1_after_; 00118 00119 MonitorElement* nz2_before_; 00120 MonitorElement* nz2_after_; 00121 00122 MonitorElement* njets_before_; 00123 MonitorElement* njets_after_; 00124 00125 MonitorElement* dimuonmass_before_; 00126 MonitorElement* dimuonmass_after_; 00127 00128 MonitorElement* dimuonSAmass_before_; 00129 MonitorElement* dimuonSAmass_after_; 00130 00131 MonitorElement* dimuonSASAmass_before_; 00132 MonitorElement* dimuonSASAmass_after_; 00133 00134 MonitorElement* npvs_before_; 00135 MonitorElement* npvs_after_; 00136 00137 MonitorElement* muoncharge_before_; 00138 MonitorElement* muoncharge_after_; 00139 00140 MonitorElement* ptmuonZ_after_; 00141 }; 00142 00143 #endif