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);
94 void analyze(const edm::Event & event, const edm::EventSetup&) override;
98 void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
212 boost::scoped_ptr<FourVectorMonitorElements>
histReco;
void fill(const math::XYZTLorentzVector &momentum)
boost::ptr_vector< FourVectorMonitorElements > standardHist
std::vector< std::vector< edm::InputTag > > isoNames
HistoFillerReco< reco::RecoEcalCandidateCollection > * histoFillerPho
HistoFillerReco< reco::ElectronCollection > * histoFillerEle
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
boost::ptr_vector< FourVectorMonitorElements > histMatchReco
std::vector< MonitorElement * > histEtIsoOfHltObjMatchToReco
std::vector< int > theHLTOutputTypes
void fillHistos(edm::Handle< trigger::TriggerEventWithRefs > &triggerObj, const edm::Event &iEvent, unsigned int n, std::vector< reco::Particle > &sortedReco, bool plotReco, bool plotMonpath)
edm::EDGetTokenT< std::vector< reco::SuperCluster > > recoObjectsEET
std::vector< MonitorElement * > phiHistIso
std::vector< MonitorElement * > histEtaIsoOfHltObjMatchToReco
bool isHltConfigInitialized_
HLTConfigProvider hltConfig_
FourVectorMonitorElements(EmDQMReco *_parent, DQMStore::IBooker &iBooker, const std::string &histogramNameTemplate, const std::string &histogramTitleTemplate)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
boost::ptr_vector< FourVectorMonitorElements > histMatchRecoMonPath
GreaterByPt< reco::Particle > pTComparator_
std::vector< std::string > theHLTCollectionHumanNames
unsigned int numOfHLTCollectionLabels
HistoFillerReco< l1extra::L1EmParticleCollection > * histoFillerL1Iso
MonitorElement * totalreco
MonitorElement * etaMonitorElement
edm::EDGetTokenT< std::vector< reco::SuperCluster > > recoObjectsEBT
void analyze(const edm::Event &event, const edm::EventSetup &) override
HistoFillerReco(EmDQMReco *d)
MonitorElement * totalmatchreco
std::vector< MonitorElement * > ethistisomatchreco
std::vector< Electron > ElectronCollection
collectin of Electron objects
std::string triggerNameRecoMonPath
std::vector< bool > plotiso
edm::EDGetTokenT< reco::GsfElectronCollection > recoElectronsInput
bool useHumanReadableHistTitles
edm::EDGetTokenT< trigger::TriggerEventWithRefs > triggerObjT
HistoFillerReco< l1extra::L1EmParticleCollection > * histoFillerL1NonIso
MonitorElement * phiMonitorElement
boost::scoped_ptr< FourVectorMonitorElements > histRecoMonpath
std::vector< MonitorElement * > etahistiso
boost::scoped_ptr< FourVectorMonitorElements > histMonpath
std::vector< MonitorElement * > etahistisomatchreco
std::vector< std::pair< double, double > > plotBounds
std::vector< edm::EDGetTokenT< edm::AssociationMap< edm::OneToValue< T, float > > > > isoNameTokens_
std::vector< edm::InputTag > theHLTCollectionLabels
MonitorElement * etMonitorElement
GreaterByPt< reco::GsfElectron > pTRecoComparator_
edm::EDGetTokenT< edm::TriggerResults > hltResultsT
boost::ptr_vector< FourVectorMonitorElements > histHltObjMatchToReco
std::vector< MonitorElement * > ethistiso
std::string processNameRecoMonPath
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
boost::scoped_ptr< FourVectorMonitorElements > histReco
std::vector< MonitorElement * > phiHistIsoMatchReco
std::vector< MonitorElement * > histPhiIsoOfHltObjMatchToReco
HistoFillerReco< reco::RecoEcalCandidateCollection > * histoFillerClu