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
53 
54 
55 
56 
58 
59  public:
61  virtual ~PlotMakerReco(){};
62 
63  void handleObjects(const edm::Event&);
64  void fillPlots(const edm::Event&);
65  void bookHistos(DQMStore *, std::vector<int>*, std::vector<int>*,std::vector<std::string>*,std::vector<std::string>*);
66  // void writeHistos();
67 
68 
69  private:
70 
72 
73  void setBits(std::vector<int>* l1bits, std::vector<int>* hltbits) {l1bits_=l1bits; hltbits_=hltbits;}
75  std::vector<int>* l1bits_;
76  std::vector<int>* hltbits_;
77 
78 
79 
80  // Define the parameters
88 
89 
91  double def_muonPtMin ;
92  double def_jetPtMin ;
93  double def_photonPtMin ;
94 
95  int binFactor;
96 
102 
103  //histos
104 
105  //Jets
107  std::vector<MonitorElement*> hJetMultAfterL1;
108  std::vector<MonitorElement*> hJetMultAfterHLT;
110  std::vector<MonitorElement*> hJet1PtAfterL1;
111  std::vector<MonitorElement*> hJet1PtAfterHLT;
113  std::vector<MonitorElement*> hJet2PtAfterL1;
114  std::vector<MonitorElement*> hJet2PtAfterHLT;
116  std::vector<MonitorElement*> hJet1EtaAfterL1;
117  std::vector<MonitorElement*> hJet1EtaAfterHLT;
119  std::vector<MonitorElement*> hJet2EtaAfterL1;
120  std::vector<MonitorElement*> hJet2EtaAfterHLT;
122  std::vector<MonitorElement*> hJet1PhiAfterL1;
123  std::vector<MonitorElement*> hJet1PhiAfterHLT;
125  std::vector<MonitorElement*> hJet2PhiAfterL1;
126  std::vector<MonitorElement*> hJet2PhiAfterHLT;
127 
129  std::vector<MonitorElement*> hDiJetInvMassAfterL1;
130  std::vector<MonitorElement*> hDiJetInvMassAfterHLT;
131 
132 
133 
134 
135  //Electrons
137  std::vector<MonitorElement*> hElecMultAfterL1;
138  std::vector<MonitorElement*> hElecMultAfterHLT;
140  std::vector<MonitorElement*> hElec1PtAfterL1;
141  std::vector<MonitorElement*> hElec1PtAfterHLT;
143  std::vector<MonitorElement*> hElec2PtAfterL1;
144  std::vector<MonitorElement*> hElec2PtAfterHLT;
146  std::vector<MonitorElement*> hElec1EtaAfterL1;
147  std::vector<MonitorElement*> hElec1EtaAfterHLT;
149  std::vector<MonitorElement*> hElec2EtaAfterL1;
150  std::vector<MonitorElement*> hElec2EtaAfterHLT;
152  std::vector<MonitorElement*> hElec1PhiAfterL1;
153  std::vector<MonitorElement*> hElec1PhiAfterHLT;
155  std::vector<MonitorElement*> hElec2PhiAfterL1;
156  std::vector<MonitorElement*> hElec2PhiAfterHLT;
157 
159  std::vector<MonitorElement*> hDiElecInvMassAfterL1;
160  std::vector<MonitorElement*> hDiElecInvMassAfterHLT;
161 
162 
163  //Muons
165  std::vector<MonitorElement*> hMuonMultAfterL1;
166  std::vector<MonitorElement*> hMuonMultAfterHLT;
168  std::vector<MonitorElement*> hMuon1PtAfterL1;
169  std::vector<MonitorElement*> hMuon1PtAfterHLT;
171  std::vector<MonitorElement*> hMuon2PtAfterL1;
172  std::vector<MonitorElement*> hMuon2PtAfterHLT;
174  std::vector<MonitorElement*> hMuon1EtaAfterL1;
175  std::vector<MonitorElement*> hMuon1EtaAfterHLT;
177  std::vector<MonitorElement*> hMuon2EtaAfterL1;
178  std::vector<MonitorElement*> hMuon2EtaAfterHLT;
180  std::vector<MonitorElement*> hMuon1PhiAfterL1;
181  std::vector<MonitorElement*> hMuon1PhiAfterHLT;
183  std::vector<MonitorElement*> hMuon2PhiAfterL1;
184  std::vector<MonitorElement*> hMuon2PhiAfterHLT;
185 
187  std::vector<MonitorElement*> hDiMuonInvMassAfterL1;
188  std::vector<MonitorElement*> hDiMuonInvMassAfterHLT;
189 
190 
191  //Photons
193  std::vector<MonitorElement*> hPhotonMultAfterL1;
194  std::vector<MonitorElement*> hPhotonMultAfterHLT;
196  std::vector<MonitorElement*> hPhoton1PtAfterL1;
197  std::vector<MonitorElement*> hPhoton1PtAfterHLT;
199  std::vector<MonitorElement*> hPhoton2PtAfterL1;
200  std::vector<MonitorElement*> hPhoton2PtAfterHLT;
202  std::vector<MonitorElement*> hPhoton1EtaAfterL1;
203  std::vector<MonitorElement*> hPhoton1EtaAfterHLT;
205  std::vector<MonitorElement*> hPhoton2EtaAfterL1;
206  std::vector<MonitorElement*> hPhoton2EtaAfterHLT;
208  std::vector<MonitorElement*> hPhoton1PhiAfterL1;
209  std::vector<MonitorElement*> hPhoton1PhiAfterHLT;
211  std::vector<MonitorElement*> hPhoton2PhiAfterL1;
212  std::vector<MonitorElement*> hPhoton2PhiAfterHLT;
213 
215  std::vector<MonitorElement*> hDiPhotonInvMassAfterL1;
216  std::vector<MonitorElement*> hDiPhotonInvMassAfterHLT;
217 
218 
219  //MET
226 
227  std::vector<MonitorElement*> hMETAfterL1;
228  std::vector<MonitorElement*> hMETAfterHLT;
229  std::vector<MonitorElement*> hMETphiAfterL1;
230  std::vector<MonitorElement*> hMETphiAfterHLT;
231  std::vector<MonitorElement*> hMETxAfterL1;
232  std::vector<MonitorElement*> hMETxAfterHLT;
233  std::vector<MonitorElement*> hMETyAfterL1;
234  std::vector<MonitorElement*> hMETyAfterHLT;
235  std::vector<MonitorElement*> hSumEtAfterL1;
236  std::vector<MonitorElement*> hSumEtAfterHLT;
237  std::vector<MonitorElement*> hMETSignificanceAfterL1;
238  std::vector<MonitorElement*> hMETSignificanceAfterHLT;
239 
240 
241 
242 
243 
246 
247 };
248 
249 
250 #endif
edm::EDGetTokenT< reco::CaloJetCollection > m_jetsSrc
Definition: PlotMakerReco.h:83
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:97
reco::CaloJetCollection theCaloJetCollection
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:75
std::vector< MonitorElement * > hElec1PhiAfterL1
std::vector< MonitorElement * > hElec2PtAfterL1
std::vector< MonitorElement * > hElec2EtaAfterHLT
std::vector< MonitorElement * > hSumEtAfterL1
MonitorElement * hElec1Eta
MonitorElement * hJet1Pt
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:76
MonitorElement * hElec1Phi
std::vector< MonitorElement * > hElec1PtAfterL1
std::vector< MonitorElement * > hMETyAfterHLT
std::string m_photonSrc
Definition: PlotMakerReco.h:85
std::vector< MonitorElement * > hPhoton2PhiAfterL1
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:73
std::string dirname_
Definition: PlotMakerReco.h:71
std::vector< MonitorElement * > hDiPhotonInvMassAfterL1
std::vector< MonitorElement * > hSumEtAfterHLT
std::string myHistoName
MonitorElement * hPhoton2Pt
std::vector< MonitorElement * > hJet1PhiAfterL1
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:84
std::vector< MonitorElement * > hElec1PtAfterHLT
std::vector< MonitorElement * > hMETxAfterL1
std::vector< MonitorElement * > hJet1PhiAfterHLT
std::vector< MonitorElement * > hMETAfterL1
double def_electronPtMin
Definition: PlotMakerReco.h:90
std::vector< MonitorElement * > hPhotonMultAfterL1
MonitorElement * hPhoton2Phi
std::vector< MonitorElement * > hPhoton2PhiAfterHLT
std::vector< MonitorElement * > hPhoton1EtaAfterHLT
reco::PhotonCollection thePhotonCollection
Definition: PlotMakerReco.h:99
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:61
MonitorElement * hSumEt
double def_jetPtMin
Definition: PlotMakerReco.h:92
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::vector< Photon > PhotonCollection
collectin of Photon objects
Definition: PhotonFwd.h:9
std::vector< MonitorElement * > hMuon1PhiAfterHLT
std::vector< MonitorElement * > hMETphiAfterL1
std::vector< MonitorElement * > hJet1PtAfterL1
std::vector< MonitorElement * > hPhoton1PtAfterHLT
std::vector< MonitorElement * > hPhoton2EtaAfterHLT
MonitorElement * hDiJetInvMass
MonitorElement * hElec2Pt
MonitorElement * hJet2Phi
std::vector< MonitorElement * > hElec2PhiAfterHLT
edm::EDGetTokenT< reco::MuonCollection > m_muonSrc
Definition: PlotMakerReco.h:82
std::vector< MonitorElement * > hElecMultAfterL1
MonitorElement * hDiElecInvMass
std::vector< MonitorElement * > hMuon2EtaAfterL1
reco::MuonCollection theMuonCollection
Definition: PlotMakerReco.h:98
MonitorElement * hMuon2Phi
MonitorElement * hJetMult
std::vector< MonitorElement * > hMuon1EtaAfterL1
std::vector< MonitorElement * > hMETphiAfterHLT
MonitorElement * hMET
MonitorElement * hMuon1Eta
std::vector< MonitorElement * > hMuon1PtAfterL1
reco::CaloMETCollection theCaloMETCollection
std::vector< MonitorElement * > hDiJetInvMassAfterHLT
edm::EDGetTokenT< reco::GsfElectronCollection > m_electronSrc
Definition: PlotMakerReco.h:81
edm::EDGetTokenT< reco::CaloMETCollection > m_calometSrc
Definition: PlotMakerReco.h:87
std::vector< MonitorElement * > hJet2PtAfterL1
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:91
double def_photonPtMin
Definition: PlotMakerReco.h:93
std::vector< MonitorElement * > hPhoton1EtaAfterL1
MonitorElement * hMETx
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
std::vector< MonitorElement * > hPhotonMultAfterHLT
std::vector< MonitorElement * > hJet2EtaAfterHLT
edm::EDGetTokenT< reco::PhotonCollection > m_photon_token_
Definition: PlotMakerReco.h:86
PlotMakerReco(const edm::ParameterSet &objectList, edm::ConsumesCollector &&iC)