CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PlotMakerReco.h
Go to the documentation of this file.
1 #ifndef PlotMakerReco_h
2 #define PlotMakerReco_h
3 
4 /* \class PlotMakerReco
5 *
6 * Class to produce some plots of Off-line variables in the TriggerValidation Code
7 *
8 * Author: Massimiliano Chiorboli Date: September 2007
9 // Maurizio Pierini
10 // Maria Spiropulu
11 *
12 */
13 #include <memory>
14 #include <string>
15 #include <iostream>
16 
20 
21 
33 
34 
35 //l1extra
44 
45 //#include "DataFormats/L1Trigger/interface/L1ParticleMap.h"
46 
47 //included for DQM
52 
53 
54 
56 
57  public:
58  PlotMakerReco(edm::ParameterSet objectList);
59  virtual ~PlotMakerReco(){};
60 
61  void handleObjects(const edm::Event&);
62  void fillPlots(const edm::Event&);
63  void bookHistos(DQMStore *, std::vector<int>*, std::vector<int>*,std::vector<std::string>*,std::vector<std::string>*);
64  // void writeHistos();
65 
66 
67  private:
68 
69  std::string dirname_;
70 
71  void setBits(std::vector<int>* l1bits, std::vector<int>* hltbits) {l1bits_=l1bits; hltbits_=hltbits;}
73  std::vector<int>* l1bits_;
74  std::vector<int>* hltbits_;
75 
76 
77 
78  // Define the parameters
79  std::string m_electronSrc;
80  std::string m_muonSrc;
81  std::string m_jetsSrc;
82  std::string m_photonSrc;
83  std::string m_photonProducerSrc;
84  std::string m_calometSrc;
85 
86 
88  double def_muonPtMin ;
89  double def_jetPtMin ;
90  double def_photonPtMin ;
91 
92  int binFactor;
93 
99 
100  //histos
101 
102  //Jets
104  std::vector<MonitorElement*> hJetMultAfterL1;
105  std::vector<MonitorElement*> hJetMultAfterHLT;
107  std::vector<MonitorElement*> hJet1PtAfterL1;
108  std::vector<MonitorElement*> hJet1PtAfterHLT;
110  std::vector<MonitorElement*> hJet2PtAfterL1;
111  std::vector<MonitorElement*> hJet2PtAfterHLT;
113  std::vector<MonitorElement*> hJet1EtaAfterL1;
114  std::vector<MonitorElement*> hJet1EtaAfterHLT;
116  std::vector<MonitorElement*> hJet2EtaAfterL1;
117  std::vector<MonitorElement*> hJet2EtaAfterHLT;
119  std::vector<MonitorElement*> hJet1PhiAfterL1;
120  std::vector<MonitorElement*> hJet1PhiAfterHLT;
122  std::vector<MonitorElement*> hJet2PhiAfterL1;
123  std::vector<MonitorElement*> hJet2PhiAfterHLT;
124 
126  std::vector<MonitorElement*> hDiJetInvMassAfterL1;
127  std::vector<MonitorElement*> hDiJetInvMassAfterHLT;
128 
129 
130 
131 
132  //Electrons
134  std::vector<MonitorElement*> hElecMultAfterL1;
135  std::vector<MonitorElement*> hElecMultAfterHLT;
137  std::vector<MonitorElement*> hElec1PtAfterL1;
138  std::vector<MonitorElement*> hElec1PtAfterHLT;
140  std::vector<MonitorElement*> hElec2PtAfterL1;
141  std::vector<MonitorElement*> hElec2PtAfterHLT;
143  std::vector<MonitorElement*> hElec1EtaAfterL1;
144  std::vector<MonitorElement*> hElec1EtaAfterHLT;
146  std::vector<MonitorElement*> hElec2EtaAfterL1;
147  std::vector<MonitorElement*> hElec2EtaAfterHLT;
149  std::vector<MonitorElement*> hElec1PhiAfterL1;
150  std::vector<MonitorElement*> hElec1PhiAfterHLT;
152  std::vector<MonitorElement*> hElec2PhiAfterL1;
153  std::vector<MonitorElement*> hElec2PhiAfterHLT;
154 
156  std::vector<MonitorElement*> hDiElecInvMassAfterL1;
157  std::vector<MonitorElement*> hDiElecInvMassAfterHLT;
158 
159 
160  //Muons
162  std::vector<MonitorElement*> hMuonMultAfterL1;
163  std::vector<MonitorElement*> hMuonMultAfterHLT;
165  std::vector<MonitorElement*> hMuon1PtAfterL1;
166  std::vector<MonitorElement*> hMuon1PtAfterHLT;
168  std::vector<MonitorElement*> hMuon2PtAfterL1;
169  std::vector<MonitorElement*> hMuon2PtAfterHLT;
171  std::vector<MonitorElement*> hMuon1EtaAfterL1;
172  std::vector<MonitorElement*> hMuon1EtaAfterHLT;
174  std::vector<MonitorElement*> hMuon2EtaAfterL1;
175  std::vector<MonitorElement*> hMuon2EtaAfterHLT;
177  std::vector<MonitorElement*> hMuon1PhiAfterL1;
178  std::vector<MonitorElement*> hMuon1PhiAfterHLT;
180  std::vector<MonitorElement*> hMuon2PhiAfterL1;
181  std::vector<MonitorElement*> hMuon2PhiAfterHLT;
182 
184  std::vector<MonitorElement*> hDiMuonInvMassAfterL1;
185  std::vector<MonitorElement*> hDiMuonInvMassAfterHLT;
186 
187 
188  //Photons
190  std::vector<MonitorElement*> hPhotonMultAfterL1;
191  std::vector<MonitorElement*> hPhotonMultAfterHLT;
193  std::vector<MonitorElement*> hPhoton1PtAfterL1;
194  std::vector<MonitorElement*> hPhoton1PtAfterHLT;
196  std::vector<MonitorElement*> hPhoton2PtAfterL1;
197  std::vector<MonitorElement*> hPhoton2PtAfterHLT;
199  std::vector<MonitorElement*> hPhoton1EtaAfterL1;
200  std::vector<MonitorElement*> hPhoton1EtaAfterHLT;
202  std::vector<MonitorElement*> hPhoton2EtaAfterL1;
203  std::vector<MonitorElement*> hPhoton2EtaAfterHLT;
205  std::vector<MonitorElement*> hPhoton1PhiAfterL1;
206  std::vector<MonitorElement*> hPhoton1PhiAfterHLT;
208  std::vector<MonitorElement*> hPhoton2PhiAfterL1;
209  std::vector<MonitorElement*> hPhoton2PhiAfterHLT;
210 
212  std::vector<MonitorElement*> hDiPhotonInvMassAfterL1;
213  std::vector<MonitorElement*> hDiPhotonInvMassAfterHLT;
214 
215 
216  //MET
223 
224  std::vector<MonitorElement*> hMETAfterL1;
225  std::vector<MonitorElement*> hMETAfterHLT;
226  std::vector<MonitorElement*> hMETphiAfterL1;
227  std::vector<MonitorElement*> hMETphiAfterHLT;
228  std::vector<MonitorElement*> hMETxAfterL1;
229  std::vector<MonitorElement*> hMETxAfterHLT;
230  std::vector<MonitorElement*> hMETyAfterL1;
231  std::vector<MonitorElement*> hMETyAfterHLT;
232  std::vector<MonitorElement*> hSumEtAfterL1;
233  std::vector<MonitorElement*> hSumEtAfterHLT;
234  std::vector<MonitorElement*> hMETSignificanceAfterL1;
235  std::vector<MonitorElement*> hMETSignificanceAfterHLT;
236 
237 
238 
239 
240 
241  std::string myHistoName;
242  std::string myHistoTitle;
243 
244 };
245 
246 
247 #endif
std::vector< MonitorElement * > hDiPhotonInvMassAfterHLT
double invariantMass(reco::Candidate *, reco::Candidate *)
std::vector< MonitorElement * > hElec1EtaAfterHLT
MonitorElement * hJet2Eta
std::vector< MonitorElement * > hMETyAfterL1
std::vector< MonitorElement * > hDiElecInvMassAfterL1
std::vector< MonitorElement * > hJet2PhiAfterHLT
reco::GsfElectronCollection theElectronCollection
Definition: PlotMakerReco.h:94
reco::CaloJetCollection theCaloJetCollection
Definition: PlotMakerReco.h:97
std::vector< MonitorElement * > hElec2PtAfterHLT
MonitorElement * hJet2Pt
std::vector< MonitorElement * > hMuon2EtaAfterHLT
std::vector< MonitorElement * > hMETSignificanceAfterHLT
MonitorElement * hJet1Eta
std::vector< MonitorElement * > hMETAfterHLT
std::vector< MonitorElement * > hPhoton2PtAfterL1
std::vector< MonitorElement * > hJetMultAfterL1
std::vector< MonitorElement * > hDiMuonInvMassAfterHLT
MonitorElement * hPhotonMult
std::vector< MonitorElement * > hElec1PhiAfterHLT
std::vector< MonitorElement * > hDiJetInvMassAfterL1
std::vector< MonitorElement * > hJet1EtaAfterHLT
std::vector< int > * l1bits_
Definition: PlotMakerReco.h:73
std::vector< MonitorElement * > hElec1PhiAfterL1
std::vector< MonitorElement * > hElec2PtAfterL1
std::vector< MonitorElement * > hElec2EtaAfterHLT
std::vector< MonitorElement * > hSumEtAfterL1
MonitorElement * hElec1Eta
MonitorElement * hJet1Pt
std::string m_muonSrc
Definition: PlotMakerReco.h:80
MonitorElement * hElec2Phi
MonitorElement * hPhoton2Eta
std::vector< MonitorElement * > hMuon2PtAfterHLT
std::vector< MonitorElement * > hMuonMultAfterL1
MonitorElement * hPhoton1Eta
std::vector< MonitorElement * > hJetMultAfterHLT
std::vector< int > * hltbits_
Definition: PlotMakerReco.h:74
MonitorElement * hElec1Phi
std::vector< MonitorElement * > hElec1PtAfterL1
std::vector< MonitorElement * > hMETyAfterHLT
std::string m_photonSrc
Definition: PlotMakerReco.h:82
std::vector< MonitorElement * > hPhoton2PhiAfterL1
std::string m_electronSrc
Definition: PlotMakerReco.h:79
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
std::vector< MonitorElement * > hJet2PhiAfterL1
MonitorElement * hMETphi
std::vector< MonitorElement * > hJet2PtAfterHLT
std::vector< Muon > MuonCollection
collection of Muon objects
Definition: MuonFwd.h:9
MonitorElement * hMuonMult
void setBits(std::vector< int > *l1bits, std::vector< int > *hltbits)
Definition: PlotMakerReco.h:71
std::string dirname_
Definition: PlotMakerReco.h:69
std::vector< MonitorElement * > hDiPhotonInvMassAfterL1
std::vector< MonitorElement * > hSumEtAfterHLT
std::string myHistoName
MonitorElement * hPhoton2Pt
std::vector< MonitorElement * > hJet1PhiAfterL1
PlotMakerReco(edm::ParameterSet objectList)
MonitorElement * hElec1Pt
std::vector< MonitorElement * > hElecMultAfterHLT
void handleObjects(const edm::Event &)
MonitorElement * hPhoton1Phi
std::vector< MonitorElement * > hMETSignificanceAfterL1
MonitorElement * hMETy
std::string m_photonProducerSrc
Definition: PlotMakerReco.h:83
std::vector< MonitorElement * > hElec1PtAfterHLT
std::vector< MonitorElement * > hMETxAfterL1
std::vector< MonitorElement * > hJet1PhiAfterHLT
std::vector< MonitorElement * > hMETAfterL1
double def_electronPtMin
Definition: PlotMakerReco.h:87
std::vector< MonitorElement * > hPhotonMultAfterL1
MonitorElement * hPhoton2Phi
std::vector< MonitorElement * > hPhoton2PhiAfterHLT
std::vector< MonitorElement * > hPhoton1EtaAfterHLT
reco::PhotonCollection thePhotonCollection
Definition: PlotMakerReco.h:96
std::vector< MonitorElement * > hPhoton1PhiAfterHLT
void fillPlots(const edm::Event &)
MonitorElement * hJet1Phi
std::vector< MonitorElement * > hJet1EtaAfterL1
std::vector< MonitorElement * > hElec1EtaAfterL1
std::vector< MonitorElement * > hDiElecInvMassAfterHLT
std::vector< MonitorElement * > hMuon1PtAfterHLT
std::vector< MonitorElement * > hJet1PtAfterHLT
MonitorElement * hElecMult
std::vector< MonitorElement * > hMETxAfterHLT
std::vector< MonitorElement * > hPhoton1PhiAfterL1
std::vector< MonitorElement * > hMuon2PhiAfterHLT
std::vector< MonitorElement * > hElec2EtaAfterL1
std::vector< MonitorElement * > hPhoton1PtAfterL1
std::vector< MonitorElement * > hDiMuonInvMassAfterL1
std::vector< MonitorElement * > hMuon2PhiAfterL1
virtual ~PlotMakerReco()
Definition: PlotMakerReco.h:59
MonitorElement * hSumEt
double def_jetPtMin
Definition: PlotMakerReco.h:89
MonitorElement * hDiPhotonInvMass
MonitorElement * hPhoton1Pt
void bookHistos(DQMStore *, std::vector< int > *, std::vector< int > *, std::vector< std::string > *, std::vector< std::string > *)
std::vector< reco::CaloMET > CaloMETCollection
collection of CaloMET objects
std::vector< MonitorElement * > hJet2EtaAfterL1
std::vector< MonitorElement * > hMuon1EtaAfterHLT
std::vector< MonitorElement * > hPhoton2PtAfterHLT
MonitorElement * hMuon2Eta
std::vector< MonitorElement * > hMuon2PtAfterL1
std::string m_jetsSrc
Definition: PlotMakerReco.h:81
std::vector< MonitorElement * > hMuon1PhiAfterHLT
std::vector< MonitorElement * > hMETphiAfterL1
std::vector< Photon > PhotonCollection
collectin of Photon objects
Definition: PhotonFwd.h:9
std::vector< MonitorElement * > hJet1PtAfterL1
std::vector< MonitorElement * > hPhoton1PtAfterHLT
std::vector< MonitorElement * > hPhoton2EtaAfterHLT
MonitorElement * hDiJetInvMass
MonitorElement * hElec2Pt
MonitorElement * hJet2Phi
std::vector< MonitorElement * > hElec2PhiAfterHLT
std::vector< MonitorElement * > hElecMultAfterL1
MonitorElement * hDiElecInvMass
std::vector< MonitorElement * > hMuon2EtaAfterL1
reco::MuonCollection theMuonCollection
Definition: PlotMakerReco.h:95
MonitorElement * hMuon2Phi
MonitorElement * hJetMult
std::vector< MonitorElement * > hMuon1EtaAfterL1
std::vector< MonitorElement * > hMETphiAfterHLT
MonitorElement * hMET
MonitorElement * hMuon1Eta
std::vector< MonitorElement * > hMuon1PtAfterL1
reco::CaloMETCollection theCaloMETCollection
Definition: PlotMakerReco.h:98
std::vector< MonitorElement * > hDiJetInvMassAfterHLT
std::vector< MonitorElement * > hJet2PtAfterL1
std::string m_calometSrc
Definition: PlotMakerReco.h:84
MonitorElement * hDiMuonInvMass
MonitorElement * hElec2Eta
MonitorElement * hMuon1Phi
std::string myHistoTitle
std::vector< MonitorElement * > hMuonMultAfterHLT
MonitorElement * hMETSignificance
MonitorElement * hMuon2Pt
std::vector< MonitorElement * > hPhoton2EtaAfterL1
std::vector< MonitorElement * > hElec2PhiAfterL1
MonitorElement * hMuon1Pt
std::vector< MonitorElement * > hMuon1PhiAfterL1
double def_muonPtMin
Definition: PlotMakerReco.h:88
double def_photonPtMin
Definition: PlotMakerReco.h:90
std::vector< MonitorElement * > hPhoton1EtaAfterL1
MonitorElement * hMETx
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
std::vector< MonitorElement * > hPhotonMultAfterHLT
std::vector< MonitorElement * > hJet2EtaAfterHLT