1 #ifndef HLTriggerOffline_Egamma_EmDQMReco_H 2 #define HLTriggerOffline_Egamma_EmDQMReco_H 20 #include "HepMC/GenParticle.h" 21 #include "TDirectory.h" 24 #include <boost/ptr_container/ptr_vector.hpp> 25 #include <boost/scoped_ptr.hpp> 38 std::vector<reco::Particle> &sortedReco,
41 std::vector<edm::EDGetTokenT<edm::AssociationMap<edm::OneToValue<T, float>>>>
isoNameTokens_;
87 explicit
EmDQMReco(const edm::ParameterSet &pset);
93 void
analyze(const edm::Event &event, const edm::EventSetup &) override;
94 void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override;
95 void
bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
103 unsigned
int numOfHLTCollectionLabels;
106 std::vector<std::string> theHLTCollectionHumanNames;
109 std::vector<bool> plotiso;
110 std::vector<std::vector<edm::InputTag>> isoNames;
111 std::vector<std::pair<double, double>> plotBounds;
164 boost::ptr_vector<FourVectorMonitorElements> standardHist;
169 boost::ptr_vector<FourVectorMonitorElements> histMatchReco;
174 boost::ptr_vector<FourVectorMonitorElements> histMatchRecoMonPath;
179 boost::ptr_vector<FourVectorMonitorElements> histHltObjMatchToReco;
185 std::vector<MonitorElement *> etahistiso;
186 std::vector<MonitorElement *> ethistiso;
187 std::vector<MonitorElement *> phiHistIso;
189 std::vector<MonitorElement *> etahistisomatchreco;
190 std::vector<MonitorElement *> ethistisomatchreco;
191 std::vector<MonitorElement *> phiHistIsoMatchReco;
193 std::vector<MonitorElement *> histEtIsoOfHltObjMatchToReco;
194 std::vector<MonitorElement *> histEtaIsoOfHltObjMatchToReco;
195 std::vector<MonitorElement *> histPhiIsoOfHltObjMatchToReco;
208 boost::scoped_ptr<FourVectorMonitorElements> histReco;
213 boost::scoped_ptr<FourVectorMonitorElements> histRecoMonpath;
218 boost::scoped_ptr<FourVectorMonitorElements> histMonpath;
useHumanReadableHistTitles
void fillHistos(edm::Handle< trigger::TriggerEventWithRefs > &triggerObj, const edm::Event &iEvent, unsigned int n, std::vector< reco::Particle > &sortedReco, bool plotReco, bool plotMonpath)
std::vector< edm::EDGetTokenT< edm::AssociationMap< edm::OneToValue< T, float > > > > isoNameTokens_
example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
MonitorElement * etaMonitorElement
HistoFillerReco(EmDQMReco *d)
std::vector< Electron > ElectronCollection
collectin of Electron objects
MonitorElement * phiMonitorElement
example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
MonitorElement * etMonitorElement