CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFMETAnalyzer.h
Go to the documentation of this file.
1 #ifndef PFMETAnalyzer_H
2 #define PFMETAnalyzer_H
3 
4 
16 #include <memory>
17 #include <fstream>
18 #include "TMath.h"
27 //
29 //
30 //#include "DataFormats/METReco/interface/PFMETCollection.h"
31 //#include "DataFormats/METReco/interface/PFMET.h"
33 
38 
40 
45 
48 
50 
52  public:
53 
56 
58  virtual ~PFMETAnalyzer();
59 
61  void beginJob(DQMStore * dbe);
62 
64  void endJob();
65 
66  // Book MonitorElements
67  void bookMESet(std::string);
68  void bookMonitorElement(std::string, bool);
69 
71  void analyze(const edm::Event&, const edm::EventSetup&,
72  const edm::TriggerResults&);
73 
75  void beginRun(const edm::Run&, const edm::EventSetup&);
76 
78  void endRun(const edm::Run& iRun, const edm::EventSetup& iSetup, DQMStore *dbe);
79 
80  // Fill MonitorElements
81  void fillMESet(const edm::Event&, std::string, const reco::PFMET&);
82  void fillMonitorElement(const edm::Event&, std::string, std::string, const reco::PFMET&, bool);
83  void makeRatePlot(std::string, double);
84 
86 
87  bool selectHighPtJetEvent(const edm::Event&);
88  bool selectLowPtJetEvent(const edm::Event&);
89  bool selectWElectronEvent(const edm::Event&);
90  bool selectWMuonEvent(const edm::Event&);
91 
92  void setSource(std::string source) {
93  _source = source;
94  }
95 
97 
98  private:
99  // ----------member data ---------------------------
100 
102  // Switch for verbosity
103  int _verbose;
104 
105  std::string metname;
106  std::string _source;
107 
117 
118  // list of Jet or MB HLT triggers
119  std::vector<std::string > HLTPathsJetMBByName_;
120 
128 
129  std::string _hlt_HighPtJet;
130  std::string _hlt_LowPtJet;
131  std::string _hlt_MinBias;
132  std::string _hlt_HighMET;
133  std::string _hlt_LowMET;
134  std::string _hlt_Ele;
135  std::string _hlt_Muon;
136 
138  std::string _hlt_PhysDec;
139 
140  std::vector<unsigned > _techTrigsAND;
141  std::vector<unsigned > _techTrigsOR;
142  std::vector<unsigned > _techTrigsNOT;
143 
146 
150 
154  double _vtxchi2_max;
155  double _vtxz_max;
156 
166 
167 
172 
173  // Et threshold for MET plots
174  double _etThreshold;
175 
176  // HF calibration factor (in 31X applied by PFProducer)
177  double hfCalibFactor_; //
178 
179  // JetID helper
181 
182  // DCS filter
184 
185  //
186  bool _allhist;
189 
190  //
191  std::vector<std::string> _FolderNames;
192 
193  //
195 
196  //the histos
198 
207 
213 
224 
227 
231 
233 
234 
235 };
236 #endif
std::string _hlt_HighPtJet
double _highPFMETThreshold
MonitorElement * mePfChargedHadFraction
MonitorElement * meTriggerName_HighPtJet
double _highPtPFJetThreshold
std::string metname
GenericTriggerEventFlag * _MuonEventFlag
MonitorElement * meTriggerName_Muon
int _tightJetIDFiltering
JetMETDQMDCSFilter * DCSFilter
MonitorElement * meTriggerName_MinBias
std::string _source
edm::ParameterSet parameters
virtual ~PFMETAnalyzer()
Destructor.
MonitorElement * mePfMETHPDNoise
GenericTriggerEventFlag * _HighPtJetEventFlag
void validateMET(const reco::PFMET &, edm::Handle< edm::View< reco::PFCandidate > >)
edm::InputTag gtTag
MonitorElement * mePfMExLS
bool selectWMuonEvent(const edm::Event &)
void fillMESet(const edm::Event &, std::string, const reco::PFMET &)
std::vector< unsigned > _techTrigsAND
MonitorElement * meTriggerName_LowPtJet
std::string _hlt_MinBias
std::string _hlt_Muon
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
void setSource(std::string source)
Definition: PFMETAnalyzer.h:92
void endJob()
Finish up a job.
edm::ParameterSet theCleaningParameters
MonitorElement * mePfSumET
MonitorElement * mePfMEy
GenericTriggerEventFlag * _LowPtJetEventFlag
void fillMonitorElement(const edm::Event &, std::string, std::string, const reco::PFMET &, bool)
GenericTriggerEventFlag * _LowMETEventFlag
double _vtxchi2_max
DQMStore * _dbe
MonitorElement * mePfMEyLS
MonitorElement * mePfNeutralHadFraction
edm::InputTag BeamHaloSummaryTag
MonitorElement * mePfNeutralEMFraction
PFMETAnalyzer(const edm::ParameterSet &)
Constructor.
GenericTriggerEventFlag * _EleEventFlag
MonitorElement * meTriggerName_Ele
std::string _hlt_PhysDec
reco::helper::JetIDHelper * jetID
double _lowPtPFJetThreshold
void beginRun(const edm::Run &, const edm::EventSetup &)
Initialize run-based parameters.
std::vector< unsigned > _techTrigsOR
void analyze(const edm::Event &, const edm::EventSetup &, const edm::TriggerResults &)
Get the analysis.
GenericTriggerEventFlag * _HighMETEventFlag
void makeRatePlot(std::string, double)
edm::InputTag thePfMETCollectionLabel
MonitorElement * meTriggerName_PhysDec
MonitorElement * mePfMETSig
MonitorElement * mePfMEx
edm::InputTag thePfJetCollectionLabel
void bookMESet(std::string)
bool selectLowPtJetEvent(const edm::Event &)
edm::InputTag PFCandidatesTag
MonitorElement * meTriggerName_LowMET
MonitorElement * mePfMETRate
std::string _hlt_HighMET
void bookMonitorElement(std::string, bool)
MonitorElement * mePfMuonFraction
void beginJob(DQMStore *dbe)
Inizialize parameters for histo binning.
MonitorElement * mePfSumET_logx
MonitorElement * mePfChargedEMFraction
bool _tightBHFiltering
double _lowPFMETThreshold
double _etThreshold
std::vector< std::string > _FolderNames
MonitorElement * mePfMETIonFeedbck
bool selectHighPtJetEvent(const edm::Event &)
MonitorElement * mePfMET_logx
MonitorElement * meTriggerName_HighMET
void endRun(const edm::Run &iRun, const edm::EventSetup &iSetup, DQMStore *dbe)
Finish up a run.
MonitorElement * meNevents
edm::InputTag theJetCollectionLabel
MonitorElement * mePfMETPhi
bool _tightHcalFiltering
bool selectWElectronEvent(const edm::Event &)
MonitorElement * metME
GenericTriggerEventFlag * _MinBiasEventFlag
MonitorElement * mePfMETRBXNoise
edm::InputTag HcalNoiseSummaryTag
edm::InputTag HcalNoiseRBXCollectionTag
bool _cleanupSelection
MonitorElement * mePfMET
MonitorElement * mePfEz
std::vector< unsigned > _techTrigsNOT
std::string _hlt_Ele
std::string _hlt_LowMET
std::vector< std::string > HLTPathsJetMBByName_
edm::InputTag vertexTag
double hfCalibFactor_
std::string _hlt_LowPtJet
Definition: Run.h:31