CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
LeptonRecoSkim Class Reference

#include <Configuration/Skimming/src/LeptonRecoSkim.cc>

Inheritance diagram for LeptonRecoSkim:
edm::one::EDFilter<> edm::one::EDFilterBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 LeptonRecoSkim (const edm::ParameterSet &)
 
 ~LeptonRecoSkim () override
 
- Public Member Functions inherited from edm::one::EDFilter<>
 EDFilter ()=default
 
 EDFilter (const EDFilter &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDFilteroperator= (const EDFilter &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDFilterBase
 EDFilterBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDFilterBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void beginJob () override
 
void endJob () override
 
bool filter (edm::Event &, const edm::EventSetup &) override
 
void handleObjects (const edm::Event &, const edm::EventSetup &iSetup)
 

Private Attributes

edm::EDGetTokenT< reco::CaloJetCollectioncaloJetCollectionToken_
 
edm::EDGetTokenT< EcalRecHitCollectionebRecHitCollectionToken_
 
edm::EDGetTokenT< EcalRecHitCollectioneeRecHitCollectionToken_
 
bool ElectronCutPassed
 
std::string filterName
 
bool firstEvent
 
edm::EDGetTokenT< reco::GsfElectronCollectiongsfElectronCollectionToken_
 
edm::InputTag hltLabel
 
bool HtCutPassed
 
double htJetThreshold
 
double htMin
 
const edm::ESGetToken< CaloGeometry, CaloGeometryRecordm_CaloGeoToken
 
const edm::ESGetToken< CaloTopology, CaloTopologyRecordm_CaloTopoToken
 
edm::EDGetTokenT< reco::MuonCollectionmuonCollectionToken_
 
bool MuonCutPassed
 
int NeventsFiltered
 
int NeventsTotal
 
int NHltDiMu3
 
int NHltMu9
 
int NmvaElectrons
 
int nSelectedElectrons
 
int nSelectedMuons
 
int nSelectedPfElectrons
 
int NtotalElectrons
 
edm::EDGetTokenT< reco::PFCandidateCollectionpfCandidateCollectionToken_
 
bool PfElectronCutPassed
 
bool PFHtCutPassed
 
double pfHtJetThreshold
 
double pfHtMin
 
edm::EDGetTokenT< reco::PFJetCollectionpfJetCollectionToken_
 
double ptElecMin
 
double ptGlobalMuonMin
 
double ptPfElecMin
 
double ptTrackerMuonMin
 
const CaloGeometrytheCaloGeometry
 
const reco::CaloJetCollectiontheCaloJetCollection
 
const CaloTopologytheCaloTopology
 
const EcalRecHitCollectiontheEcalBarrelCollection
 
const EcalRecHitCollectiontheEcalEndcapCollection
 
const reco::GsfElectronCollectiontheElectronCollection
 
const reco::MuonCollectiontheMuonCollection
 
const reco::PFCandidateCollectionthePfCandidateCollection
 
const reco::PFJetCollectionthePFJetCollection
 
bool useElectronSelection
 
bool useHtSelection
 
bool useMuonSelection
 
bool usePfElectronSelection
 
bool usePFHtSelection
 

Additional Inherited Members

- Public Types inherited from edm::one::EDFilterBase
typedef EDFilterBase ModuleType
 
- Public Types inherited from edm::ProducerBase
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDFilterBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Description: [one line class summary]

Implementation: [Notes on implementation]

Definition at line 55 of file LeptonRecoSkim.h.

Constructor & Destructor Documentation

◆ LeptonRecoSkim()

LeptonRecoSkim::LeptonRecoSkim ( const edm::ParameterSet iConfig)
explicit

Definition at line 30 of file LeptonRecoSkim.cc.

References NeventsFiltered, NeventsTotal, NHltDiMu3, NHltMu9, NmvaElectrons, and NtotalElectrons.

33  hltLabel(iConfig.getParameter<edm::InputTag>("HltLabel")),
34  filterName(iConfig.getParameter<std::string>("@module_label")),
35  gsfElectronCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("electronCollection"))),
36  pfCandidateCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("pfElectronCollection"))),
37  muonCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("muonCollection"))),
38  caloJetCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("caloJetCollection"))),
39  pfJetCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("PFJetCollection"))),
40  ebRecHitCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("ecalBarrelRecHitsCollection"))),
41  eeRecHitCollectionToken_(consumes(iConfig.getParameter<edm::InputTag>("ecalEndcapRecHitsCollection"))),
42  useElectronSelection(iConfig.getParameter<bool>("UseElectronSelection")),
43  usePfElectronSelection(iConfig.getParameter<bool>("UsePfElectronSelection")),
44  useMuonSelection(iConfig.getParameter<bool>("UseMuonSelection")),
45  useHtSelection(iConfig.getParameter<bool>("UseHtSelection")),
46  usePFHtSelection(iConfig.getParameter<bool>("UsePFHtSelection")),
47  ptElecMin(iConfig.getParameter<double>("electronPtMin")),
48  ptPfElecMin(iConfig.getParameter<double>("pfElectronPtMin")),
49  nSelectedElectrons(iConfig.getParameter<int>("electronN")),
50  nSelectedPfElectrons(iConfig.getParameter<int>("pfElectronN")),
51  ptGlobalMuonMin(iConfig.getParameter<double>("globalMuonPtMin")),
52  ptTrackerMuonMin(iConfig.getParameter<double>("trackerMuonPtMin")),
53  nSelectedMuons(iConfig.getParameter<int>("muonN")),
54  htMin(iConfig.getParameter<double>("HtMin")),
55  pfHtMin(iConfig.getParameter<double>("PFHtMin")),
56  htJetThreshold(iConfig.getParameter<double>("HtJetThreshold")),
57  pfHtJetThreshold(iConfig.getParameter<double>("PFHtJetThreshold")) {
58  NeventsTotal = 0;
59  NeventsFiltered = 0;
60  NHltMu9 = 0;
61  NHltDiMu3 = 0;
62 
63  NtotalElectrons = 0;
64  NmvaElectrons = 0;
65 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
std::string filterName
edm::EDGetTokenT< reco::GsfElectronCollection > gsfElectronCollectionToken_
edm::EDGetTokenT< reco::CaloJetCollection > caloJetCollectionToken_
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > m_CaloGeoToken
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidateCollectionToken_
bool usePfElectronSelection
edm::InputTag hltLabel
edm::EDGetTokenT< EcalRecHitCollection > eeRecHitCollectionToken_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
double ptTrackerMuonMin
bool useElectronSelection
edm::EDGetTokenT< reco::MuonCollection > muonCollectionToken_
edm::EDGetTokenT< EcalRecHitCollection > ebRecHitCollectionToken_
const edm::ESGetToken< CaloTopology, CaloTopologyRecord > m_CaloTopoToken
double ptGlobalMuonMin
edm::EDGetTokenT< reco::PFJetCollection > pfJetCollectionToken_
double pfHtJetThreshold

◆ ~LeptonRecoSkim()

LeptonRecoSkim::~LeptonRecoSkim ( )
override

Definition at line 67 of file LeptonRecoSkim.cc.

67  {
68  // do anything here that needs to be done at desctruction time
69  // (e.g. close files, deallocate resources etc.)
70 }

Member Function Documentation

◆ beginJob()

void LeptonRecoSkim::beginJob ( )
overrideprivatevirtual

Reimplemented from edm::one::EDFilterBase.

Definition at line 205 of file LeptonRecoSkim.cc.

References firstEvent.

205 { firstEvent = true; }

◆ endJob()

void LeptonRecoSkim::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDFilterBase.

Definition at line 208 of file LeptonRecoSkim.cc.

References filterName, nano_mu_digi_cff::float, NeventsFiltered, NeventsTotal, NHltDiMu3, NHltMu9, NmvaElectrons, and NtotalElectrons.

208  {
209  edm::LogPrint("LeptonRecoSkim") << "Filter Name = " << filterName << endl;
210  edm::LogPrint("LeptonRecoSkim") << "Total number of events = " << NeventsTotal << endl;
211  edm::LogPrint("LeptonRecoSkim") << "Total HLT_Mu9 = " << NHltMu9 << endl;
212  edm::LogPrint("LeptonRecoSkim") << "Total HLT_DoubleMu3 = " << NHltDiMu3 << endl;
213  edm::LogPrint("LeptonRecoSkim") << "Filtered events = " << NeventsFiltered << endl;
214  edm::LogPrint("LeptonRecoSkim") << "Filter Efficiency = " << (float)NeventsFiltered / (float)NeventsTotal
215  << endl;
216  edm::LogPrint("LeptonRecoSkim") << endl;
217  edm::LogPrint("LeptonRecoSkim") << "N total electrons = " << NtotalElectrons << endl;
218  edm::LogPrint("LeptonRecoSkim") << "N mva>-0.1 electrons = " << NmvaElectrons << endl;
219  edm::LogPrint("LeptonRecoSkim") << endl;
220  edm::LogPrint("LeptonRecoSkim") << endl;
221 }
std::string filterName
Log< level::Warning, true > LogPrint

◆ filter()

bool LeptonRecoSkim::filter ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::one::EDFilterBase.

Definition at line 77 of file LeptonRecoSkim.cc.

References accept(), reco::PFCandidate::e, HPSPFTauProducerPuppi_cfi::electron, ElectronCutPassed, firstEvent, cutBasedMuonId_MuonPOG_V0_cff::globalTrack, reco::PFCandidate::gsfTrackRef(), handleObjects(), HtCutPassed, htJetThreshold, htMin, mps_fire::i, edm::Ref< C, T, F >::isNull(), LogDebug, SiStripPI::max, MuonCutPassed, NeventsFiltered, NeventsTotal, NmvaElectrons, nSelectedElectrons, nSelectedMuons, nSelectedPfElectrons, NtotalElectrons, reco::PFCandidate::particleId(), PfElectronCutPassed, PFHtCutPassed, pfHtJetThreshold, pfHtMin, reco::LeafCandidate::pt(), ptElecMin, ptGlobalMuonMin, ptPfElecMin, ptTrackerMuonMin, theCaloJetCollection, theElectronCollection, theMuonCollection, thePfCandidateCollection, thePFJetCollection, useElectronSelection, useHtSelection, useMuonSelection, usePfElectronSelection, and usePFHtSelection.

77  {
78  bool accept = false;
79 
80  NeventsTotal++;
81 
82  ElectronCutPassed = false;
83  PfElectronCutPassed = false;
84  MuonCutPassed = false;
85  HtCutPassed = false;
86  PFHtCutPassed = false;
87 
88  // edm::Handle<TriggerResults> trhv;
89  // iEvent.getByLabel(hltLabel,trhv);
90 
91  // const edm::TriggerNames& triggerNames_ = iEvent.triggerNames(*trhv);
92 
93  // if(trhv->at(triggerNames_.triggerIndex("HLT_Mu9")).accept()) NHltMu9++;
94  // if(trhv->at(triggerNames_.triggerIndex("HLT_DoubleMu3")).accept()) NHltDiMu3++;
95 
96  this->handleObjects(iEvent, iSetup);
97 
99  int nElecPassingCut = 0;
100  for (unsigned int i = 0; i < theElectronCollection->size(); i++) {
101  GsfElectron electron = (*theElectronCollection)[i];
102  // if (electron.ecalDrivenSeed()) {
103  float elpt = electron.pt();
104  // if (electron.sigmaIetaIeta() < 0.002) continue;
105  if (elpt > ptElecMin) {
106  NtotalElectrons++;
107  nElecPassingCut++;
108  if (electron.mva_e_pi() > -0.1)
109  NmvaElectrons++;
110  }
111  LogDebug("LeptonRecoSkim") << "elpt = " << elpt << endl;
112  // } // closes if (electron.ecalDrivenSeed()) {
113  }
114  if (nElecPassingCut >= nSelectedElectrons)
115  ElectronCutPassed = true;
116  } else
117  ElectronCutPassed = true;
118 
120  int nPfElecPassingCut = 0;
121  for (unsigned int i = 0; i < thePfCandidateCollection->size(); i++) {
122  const reco::PFCandidate& thePfCandidate = (*thePfCandidateCollection)[i];
123  if (thePfCandidate.particleId() != reco::PFCandidate::e)
124  continue;
125  if (thePfCandidate.gsfTrackRef().isNull())
126  continue;
127  float pfelpt = thePfCandidate.pt();
128  // if (electron.sigmaIetaIeta() < 0.002) continue;
129  if (pfelpt > ptPfElecMin)
130  nPfElecPassingCut++;
131  LogDebug("LeptonRecoSkim") << "pfelpt = " << pfelpt << endl;
132  }
133  if (nPfElecPassingCut >= nSelectedPfElectrons)
134  PfElectronCutPassed = true;
135  } else
136  PfElectronCutPassed = true;
137 
138  if (useMuonSelection) {
139  int nMuonPassingCut = 0;
140  for (unsigned int i = 0; i < theMuonCollection->size(); i++) {
141  Muon muon = (*theMuonCollection)[i];
142  if (!(muon.isGlobalMuon() || muon.isTrackerMuon()))
143  continue;
144  const TrackRef siTrack = muon.innerTrack();
145  const TrackRef globalTrack = muon.globalTrack();
146  float muonpt;
147  float ptMuonMin;
148  // if (siTrack.isNonnull() && globalTrack.isNonnull()) {
149  if (muon.isGlobalMuon() && muon.isTrackerMuon()) {
150  muonpt = max(siTrack->pt(), globalTrack->pt());
151  ptMuonMin = ptGlobalMuonMin;
152  } else if (muon.isGlobalMuon() && !(muon.isTrackerMuon())) {
153  muonpt = globalTrack->pt();
154  ptMuonMin = ptGlobalMuonMin;
155  } else if (muon.isTrackerMuon() && !(muon.isGlobalMuon())) {
156  muonpt = siTrack->pt();
157  ptMuonMin = ptTrackerMuonMin;
158  } else {
159  muonpt = 0; // if we get here this is a STA only muon
160  ptMuonMin = 999999.;
161  }
162  if (muonpt > ptMuonMin)
163  nMuonPassingCut++;
164  LogDebug("RecoSelectorCuts") << "muonpt = " << muonpt << endl;
165  }
166  if (nMuonPassingCut >= nSelectedMuons)
167  MuonCutPassed = true;
168  } else
169  MuonCutPassed = true;
170 
171  if (useHtSelection) {
172  double Ht = 0;
173  for (unsigned int i = 0; i < theCaloJetCollection->size(); i++) {
174  // if((*theCaloJetCollection)[i].eta()<2.6 && (*theCaloJetCollection)[i].emEnergyFraction() <= 0.01) continue;
175  if ((*theCaloJetCollection)[i].pt() > htJetThreshold)
176  Ht += (*theCaloJetCollection)[i].pt();
177  }
178  if (Ht > htMin)
179  HtCutPassed = true;
180  } else
181  HtCutPassed = true;
182 
183  if (usePFHtSelection) {
184  double PFHt = 0;
185  for (unsigned int i = 0; i < thePFJetCollection->size(); i++) {
186  if ((*thePFJetCollection)[i].pt() > pfHtJetThreshold)
187  PFHt += (*thePFJetCollection)[i].pt();
188  }
189  if (PFHt > pfHtMin)
190  PFHtCutPassed = true;
191  } else
192  PFHtCutPassed = true;
193 
195  accept = true;
196 
197  if (accept)
198  NeventsFiltered++;
199 
200  firstEvent = false;
201  return accept;
202 }
reco::GsfTrackRef gsfTrackRef() const
Definition: PFCandidate.cc:469
const reco::CaloJetCollection * theCaloJetCollection
double pt() const final
transverse momentum
void handleObjects(const edm::Event &, const edm::EventSetup &iSetup)
bool usePfElectronSelection
const reco::PFCandidateCollection * thePfCandidateCollection
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:31
double ptTrackerMuonMin
Definition: Muon.py:1
const reco::GsfElectronCollection * theElectronCollection
bool useElectronSelection
bool isNull() const
Checks for null.
Definition: Ref.h:235
const reco::MuonCollection * theMuonCollection
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:41
const reco::PFJetCollection * thePFJetCollection
double ptGlobalMuonMin
double pfHtJetThreshold
#define LogDebug(id)
virtual ParticleType particleId() const
Definition: PFCandidate.h:392

◆ handleObjects()

void LeptonRecoSkim::handleObjects ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
private

Definition at line 223 of file LeptonRecoSkim.cc.

References caloJetCollectionToken_, ebRecHitCollectionToken_, eeRecHitCollectionToken_, edm::EventSetup::getData(), gsfElectronCollectionToken_, iEvent, m_CaloGeoToken, m_CaloTopoToken, muonCollectionToken_, pfCandidateCollectionToken_, pfJetCollectionToken_, theCaloGeometry, theCaloJetCollection, theCaloTopology, theEcalBarrelCollection, theEcalEndcapCollection, theElectronCollection, theMuonCollection, thePfCandidateCollection, and thePFJetCollection.

Referenced by filter().

223  {
224  //Get the electrons
226 
227  //Get the pf electrons
229 
230  //Get the Muons
232 
233  //Get the CaloJets
235 
236  //Get the PfJets
238 
239  // Get the ECAL rechhits to clean the spikes
240  // Get EB RecHits
242  // Get EE RecHits
244 
245  // Get topology for spike cleaning
248 }
const reco::CaloJetCollection * theCaloJetCollection
edm::EDGetTokenT< reco::GsfElectronCollection > gsfElectronCollectionToken_
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
Definition: EventSetup.h:119
edm::EDGetTokenT< reco::CaloJetCollection > caloJetCollectionToken_
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > m_CaloGeoToken
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidateCollectionToken_
const reco::PFCandidateCollection * thePfCandidateCollection
edm::EDGetTokenT< EcalRecHitCollection > eeRecHitCollectionToken_
int iEvent
Definition: GenABIO.cc:224
const reco::GsfElectronCollection * theElectronCollection
edm::EDGetTokenT< reco::MuonCollection > muonCollectionToken_
edm::EDGetTokenT< EcalRecHitCollection > ebRecHitCollectionToken_
const reco::MuonCollection * theMuonCollection
const EcalRecHitCollection * theEcalBarrelCollection
const edm::ESGetToken< CaloTopology, CaloTopologyRecord > m_CaloTopoToken
const reco::PFJetCollection * thePFJetCollection
edm::EDGetTokenT< reco::PFJetCollection > pfJetCollectionToken_
const CaloGeometry * theCaloGeometry
const CaloTopology * theCaloTopology
const EcalRecHitCollection * theEcalEndcapCollection

Member Data Documentation

◆ caloJetCollectionToken_

edm::EDGetTokenT<reco::CaloJetCollection> LeptonRecoSkim::caloJetCollectionToken_
private

Definition at line 77 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ ebRecHitCollectionToken_

edm::EDGetTokenT<EcalRecHitCollection> LeptonRecoSkim::ebRecHitCollectionToken_
private

Definition at line 79 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ eeRecHitCollectionToken_

edm::EDGetTokenT<EcalRecHitCollection> LeptonRecoSkim::eeRecHitCollectionToken_
private

Definition at line 80 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ ElectronCutPassed

bool LeptonRecoSkim::ElectronCutPassed
private

Definition at line 100 of file LeptonRecoSkim.h.

Referenced by filter().

◆ filterName

std::string LeptonRecoSkim::filterName
private

Definition at line 72 of file LeptonRecoSkim.h.

Referenced by endJob().

◆ firstEvent

bool LeptonRecoSkim::firstEvent
private

Definition at line 92 of file LeptonRecoSkim.h.

Referenced by beginJob(), filter(), looper.Looper::loop(), and Printer.Printer::process().

◆ gsfElectronCollectionToken_

edm::EDGetTokenT<reco::GsfElectronCollection> LeptonRecoSkim::gsfElectronCollectionToken_
private

Definition at line 74 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ hltLabel

edm::InputTag LeptonRecoSkim::hltLabel
private

Definition at line 71 of file LeptonRecoSkim.h.

◆ HtCutPassed

bool LeptonRecoSkim::HtCutPassed
private

Definition at line 103 of file LeptonRecoSkim.h.

Referenced by filter().

◆ htJetThreshold

double LeptonRecoSkim::htJetThreshold
private

Definition at line 115 of file LeptonRecoSkim.h.

Referenced by filter().

◆ htMin

double LeptonRecoSkim::htMin
private

Definition at line 113 of file LeptonRecoSkim.h.

Referenced by filter().

◆ m_CaloGeoToken

const edm::ESGetToken<CaloGeometry, CaloGeometryRecord> LeptonRecoSkim::m_CaloGeoToken
private

Definition at line 68 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ m_CaloTopoToken

const edm::ESGetToken<CaloTopology, CaloTopologyRecord> LeptonRecoSkim::m_CaloTopoToken
private

Definition at line 69 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ muonCollectionToken_

edm::EDGetTokenT<reco::MuonCollection> LeptonRecoSkim::muonCollectionToken_
private

Definition at line 76 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ MuonCutPassed

bool LeptonRecoSkim::MuonCutPassed
private

Definition at line 102 of file LeptonRecoSkim.h.

Referenced by filter().

◆ NeventsFiltered

int LeptonRecoSkim::NeventsFiltered
private

Definition at line 119 of file LeptonRecoSkim.h.

Referenced by endJob(), filter(), and LeptonRecoSkim().

◆ NeventsTotal

int LeptonRecoSkim::NeventsTotal
private

Definition at line 118 of file LeptonRecoSkim.h.

Referenced by endJob(), filter(), and LeptonRecoSkim().

◆ NHltDiMu3

int LeptonRecoSkim::NHltDiMu3
private

Definition at line 121 of file LeptonRecoSkim.h.

Referenced by endJob(), and LeptonRecoSkim().

◆ NHltMu9

int LeptonRecoSkim::NHltMu9
private

Definition at line 120 of file LeptonRecoSkim.h.

Referenced by endJob(), and LeptonRecoSkim().

◆ NmvaElectrons

int LeptonRecoSkim::NmvaElectrons
private

Definition at line 124 of file LeptonRecoSkim.h.

Referenced by endJob(), filter(), and LeptonRecoSkim().

◆ nSelectedElectrons

int LeptonRecoSkim::nSelectedElectrons
private

Definition at line 108 of file LeptonRecoSkim.h.

Referenced by filter().

◆ nSelectedMuons

int LeptonRecoSkim::nSelectedMuons
private

Definition at line 112 of file LeptonRecoSkim.h.

Referenced by filter().

◆ nSelectedPfElectrons

int LeptonRecoSkim::nSelectedPfElectrons
private

Definition at line 109 of file LeptonRecoSkim.h.

Referenced by filter().

◆ NtotalElectrons

int LeptonRecoSkim::NtotalElectrons
private

Definition at line 123 of file LeptonRecoSkim.h.

Referenced by endJob(), filter(), and LeptonRecoSkim().

◆ pfCandidateCollectionToken_

edm::EDGetTokenT<reco::PFCandidateCollection> LeptonRecoSkim::pfCandidateCollectionToken_
private

Definition at line 75 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ PfElectronCutPassed

bool LeptonRecoSkim::PfElectronCutPassed
private

Definition at line 101 of file LeptonRecoSkim.h.

Referenced by filter().

◆ PFHtCutPassed

bool LeptonRecoSkim::PFHtCutPassed
private

Definition at line 104 of file LeptonRecoSkim.h.

Referenced by filter().

◆ pfHtJetThreshold

double LeptonRecoSkim::pfHtJetThreshold
private

Definition at line 116 of file LeptonRecoSkim.h.

Referenced by filter().

◆ pfHtMin

double LeptonRecoSkim::pfHtMin
private

Definition at line 114 of file LeptonRecoSkim.h.

Referenced by filter().

◆ pfJetCollectionToken_

edm::EDGetTokenT<reco::PFJetCollection> LeptonRecoSkim::pfJetCollectionToken_
private

Definition at line 78 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ ptElecMin

double LeptonRecoSkim::ptElecMin
private

Definition at line 106 of file LeptonRecoSkim.h.

Referenced by filter().

◆ ptGlobalMuonMin

double LeptonRecoSkim::ptGlobalMuonMin
private

Definition at line 110 of file LeptonRecoSkim.h.

Referenced by filter().

◆ ptPfElecMin

double LeptonRecoSkim::ptPfElecMin
private

Definition at line 107 of file LeptonRecoSkim.h.

Referenced by filter().

◆ ptTrackerMuonMin

double LeptonRecoSkim::ptTrackerMuonMin
private

Definition at line 111 of file LeptonRecoSkim.h.

Referenced by filter().

◆ theCaloGeometry

const CaloGeometry* LeptonRecoSkim::theCaloGeometry
private

Definition at line 90 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ theCaloJetCollection

const reco::CaloJetCollection* LeptonRecoSkim::theCaloJetCollection
private

Definition at line 85 of file LeptonRecoSkim.h.

Referenced by filter(), and handleObjects().

◆ theCaloTopology

const CaloTopology* LeptonRecoSkim::theCaloTopology
private

Definition at line 89 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ theEcalBarrelCollection

const EcalRecHitCollection* LeptonRecoSkim::theEcalBarrelCollection
private

Definition at line 87 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ theEcalEndcapCollection

const EcalRecHitCollection* LeptonRecoSkim::theEcalEndcapCollection
private

Definition at line 88 of file LeptonRecoSkim.h.

Referenced by handleObjects().

◆ theElectronCollection

const reco::GsfElectronCollection* LeptonRecoSkim::theElectronCollection
private

Definition at line 82 of file LeptonRecoSkim.h.

Referenced by filter(), and handleObjects().

◆ theMuonCollection

const reco::MuonCollection* LeptonRecoSkim::theMuonCollection
private

Definition at line 84 of file LeptonRecoSkim.h.

Referenced by filter(), and handleObjects().

◆ thePfCandidateCollection

const reco::PFCandidateCollection* LeptonRecoSkim::thePfCandidateCollection
private

Definition at line 83 of file LeptonRecoSkim.h.

Referenced by filter(), and handleObjects().

◆ thePFJetCollection

const reco::PFJetCollection* LeptonRecoSkim::thePFJetCollection
private

Definition at line 86 of file LeptonRecoSkim.h.

Referenced by filter(), and handleObjects().

◆ useElectronSelection

bool LeptonRecoSkim::useElectronSelection
private

Definition at line 94 of file LeptonRecoSkim.h.

Referenced by filter().

◆ useHtSelection

bool LeptonRecoSkim::useHtSelection
private

Definition at line 97 of file LeptonRecoSkim.h.

Referenced by filter().

◆ useMuonSelection

bool LeptonRecoSkim::useMuonSelection
private

Definition at line 96 of file LeptonRecoSkim.h.

Referenced by filter().

◆ usePfElectronSelection

bool LeptonRecoSkim::usePfElectronSelection
private

Definition at line 95 of file LeptonRecoSkim.h.

Referenced by filter().

◆ usePFHtSelection

bool LeptonRecoSkim::usePFHtSelection
private

Definition at line 98 of file LeptonRecoSkim.h.

Referenced by filter().