1 #ifndef HLTriggerOffline_Egamma_EmDQMReco_H 2 #define HLTriggerOffline_Egamma_EmDQMReco_H 21 #include "HepMC/GenParticle.h" 22 #include "TDirectory.h" 25 #include <boost/ptr_container/ptr_vector.hpp> 26 #include <boost/scoped_ptr.hpp> 39 std::vector<reco::Particle> &sortedReco,
42 std::vector<edm::EDGetTokenT<edm::AssociationMap<edm::OneToValue<T, float>>>>
isoNameTokens_;
88 explicit
EmDQMReco(const edm::ParameterSet &pset);
94 void
analyze(const edm::Event &event, const edm::EventSetup &) override;
95 void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override;
96 void
bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
102 std::vector<edm::InputTag> theHLTCollectionLabels;
104 unsigned
int numOfHLTCollectionLabels;
107 std::vector<std::string> theHLTCollectionHumanNames;
110 std::vector<bool> plotiso;
111 std::vector<std::vector<edm::InputTag>> isoNames;
112 std::vector<std::pair<double, double>> plotBounds;
165 boost::ptr_vector<FourVectorMonitorElements> standardHist;
170 boost::ptr_vector<FourVectorMonitorElements> histMatchReco;
175 boost::ptr_vector<FourVectorMonitorElements> histMatchRecoMonPath;
180 boost::ptr_vector<FourVectorMonitorElements> histHltObjMatchToReco;
186 std::vector<MonitorElement *> etahistiso;
187 std::vector<MonitorElement *> ethistiso;
188 std::vector<MonitorElement *> phiHistIso;
190 std::vector<MonitorElement *> etahistisomatchreco;
191 std::vector<MonitorElement *> ethistisomatchreco;
192 std::vector<MonitorElement *> phiHistIsoMatchReco;
194 std::vector<MonitorElement *> histEtIsoOfHltObjMatchToReco;
195 std::vector<MonitorElement *> histEtaIsoOfHltObjMatchToReco;
196 std::vector<MonitorElement *> histPhiIsoOfHltObjMatchToReco;
209 boost::scoped_ptr<FourVectorMonitorElements> histReco;
214 boost::scoped_ptr<FourVectorMonitorElements> histRecoMonpath;
219 boost::scoped_ptr<FourVectorMonitorElements> histMonpath;
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)
useHumanReadableHistTitles
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