55 edm::LogWarning(
"TopDiLeptonHLTValidation") <<
"Electrons collection not found \n";
56 unsigned int nGoodE = 0;
60 if ((
e->dr03TkSumPt()+
e->dr03EcalRecHitSumEt()+
e->dr03HcalTowerSumEt())/
e->pt() >
isoElectrons_ )
continue;
62 if (nGoodE == 1)
elec1_ = &(*e);
63 if (nGoodE == 2)
elec2_ = &(*e);
68 edm::LogWarning(
"TopDiLeptonHLTValidation") <<
"Muons collection not found \n";
69 unsigned int nGoodM = 0;
71 if (!
m->isPFMuon() || (!
m->isGlobalMuon() && !
m->isTrackerMuon()))
continue;
74 if (((
m->pfIsolationR04()).sumChargedHadronPt+(
m->pfIsolationR04()).sumPhotonEt+(
m->pfIsolationR04()).sumNeutralHadronEt)/
m->pt() >
isoMuons_ )
continue;
76 if (nGoodM == 1)
mu1_ = &(*m);
77 if (nGoodM == 2)
mu2_ = &(*m);
82 edm::LogWarning(
"TopDiLeptonHLTValidation") <<
"Jets collection not found \n";
83 unsigned int nGoodJ = 0;
96 edm::LogWarning(
"TopDiLeptonHLTValidation") <<
"Trigger collection not found \n";
98 for (
unsigned int i=0;
i<triggerNames.triggerNames().size(); ++
i) {
100 TString
name = triggerNames.triggerNames()[
i].c_str();
101 bool isInteresting =
false;
103 if (name.Contains(TString(
vsPaths_[
j]), TString::kIgnoreCase)) isInteresting =
true;
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
MonitorElement * hNumLeptonPt
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
MonitorElement * hNumLeptonEta
virtual float pt() const
transverse momentum
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const reco::GsfElectron * elec2_
edm::EDGetTokenT< edm::TriggerResults > tokTrigger_
MonitorElement * hDenLeptonPt
MonitorElement * hDenJetEta
void addDefault(ParameterSetDescription const &psetDescription)
MonitorElement * hNumJetPt
MonitorElement * hDenJetPt
MonitorElement * hDenLeptonEta
virtual float eta() const
momentum pseudorapidity
const reco::GsfElectron * elec1_
edm::EDGetTokenT< edm::View< reco::Jet > > tokJets_
MonitorElement * book1D(Args &&...args)
unsigned int minElectrons_
edm::EDGetTokenT< edm::View< reco::Muon > > tokMuons_
void setCurrentFolder(const std::string &fullpath)
std::vector< std::string > vsPaths_
edm::EDGetTokenT< edm::View< reco::GsfElectron > > tokElectrons_
virtual void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * hNumJetEta