1 #ifndef HLTriggerOffline_Egamma_EmDQMReco_H 2 #define HLTriggerOffline_Egamma_EmDQMReco_H 20 #include "TDirectory.h" 21 #include "HepMC/GenParticle.h" 26 #include <boost/ptr_container/ptr_vector.hpp> 27 #include <boost/scoped_ptr.hpp> 38 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;
101 std::vector<edm::InputTag> theHLTCollectionLabels;
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;
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;
virtual example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
void fillHistos(edm::Handle< trigger::TriggerEventWithRefs > &triggerObj, const edm::Event &iEvent, unsigned int n, std::vector< reco::Particle > &sortedReco, bool plotReco, bool plotMonpath)
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
std::vector< edm::EDGetTokenT< edm::AssociationMap< edm::OneToValue< T, float > > > > isoNameTokens_
MonitorElement * etMonitorElement
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override