CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
InputGenJetsParticleSelector Class Reference

#include <InputGenJetsParticleSelector.h>

Inheritance diagram for InputGenJetsParticleSelector:
edm::global::EDProducer<> edm::global::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Types

typedef std::vector< bool > ParticleBitmap
 
typedef std::vector< const reco::Candidate * > ParticleVector
 
enum  ResonanceState { kNo = 0, kDirect, kIndirect }
 
- Public Types inherited from edm::global::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
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
 

Public Member Functions

ResonanceState fromResonance (ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
 
bool getExcludeResonances () const
 
const std::vector< unsigned int > & getIgnoredParticles () const
 
bool getPartonicFinalState () const
 
double getPtMin () const
 
bool getTausAndJets () const
 
bool hasPartonChildren (ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
 
 InputGenJetsParticleSelector (const edm::ParameterSet &)
 
bool isIgnored (int pdgId) const
 
bool isParton (int pdgId) const
 
void produce (edm::StreamID, edm::Event &evt, const edm::EventSetup &evtSetup) const override
 
void setExcludeResonances (bool flag=true)
 
void setPartonicFinalState (bool flag=true)
 
void setPtMin (double ptMin)
 
void setTausAsJets (bool flag=true)
 
 ~InputGenJetsParticleSelector () override
 
- Public Member Functions inherited from edm::global::EDProducer<>
 EDProducer ()=default
 
- Public Member Functions inherited from edm::global::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducerBase () 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
 
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)
 
virtual ~ProducerBase () noexcept(false)
 
- 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
 
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::vector< ModuleDescription const * > &modules, 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
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static bool isHadron (int pdgId)
 
static bool isResonance (int pdgId)
 
- Static Public Member Functions inherited from edm::global::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

 InputGenJetsParticleSelector ()
 
bool isExcludedFromResonance (int pdgId) const
 
void setExcludeFromResonancePids (const std::vector< unsigned int > &particleIDs)
 
void setIgnoredParticles (const std::vector< unsigned int > &particleIDs)
 
int testPartonChildren (ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
 

Private Attributes

std::vector< unsigned int > excludeFromResonancePids
 
bool excludeResonances
 
std::vector< unsigned int > ignoreParticleIDs
 
edm::EDGetTokenT< reco::CandidateViewinput_genpartcoll_token_
 
edm::EDGetTokenT< reco::CandidateViewinput_prunedgenpartcoll_token_
 
edm::InputTag inTag
 
bool isMiniAOD
 
bool partonicFinalState
 
edm::InputTag prunedInTag
 
double ptMin
 
bool tausAsJets
 

Additional Inherited Members

- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
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 ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
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)
 

Detailed Description

Definition at line 28 of file InputGenJetsParticleSelector.h.

Member Typedef Documentation

Definition at line 31 of file InputGenJetsParticleSelector.h.

Definition at line 32 of file InputGenJetsParticleSelector.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

InputGenJetsParticleSelector::InputGenJetsParticleSelector ( const edm::ParameterSet params)

Definition at line 49 of file InputGenJetsParticleSelector.cc.

References edm::ParameterSet::exists(), edm::ParameterSet::getParameter(), input_genpartcoll_token_, input_prunedgenpartcoll_token_, inTag, isMiniAOD, edm::InputTag::label(), partonicFinalState, prunedInTag, setExcludeFromResonancePids(), and setIgnoredParticles().

49  :
50  inTag(params.getParameter<edm::InputTag>("src")),
51  prunedInTag(params.exists("prunedGenParticles") ? params.getParameter<edm::InputTag>("prunedGenParticles") : edm::InputTag("prunedGenParticles")),
52  partonicFinalState(params.getParameter<bool>("partonicFinalState")),
53  excludeResonances(params.getParameter<bool>("excludeResonances")),
54  tausAsJets(params.getParameter<bool>("tausAsJets")),
55  ptMin(0.0){
56  if (params.exists("ignoreParticleIDs"))
57  setIgnoredParticles(params.getParameter<std::vector<unsigned int> >
58  ("ignoreParticleIDs"));
59  setExcludeFromResonancePids(params.getParameter<std::vector<unsigned int> >
60  ("excludeFromResonancePids"));
61  isMiniAOD = ( params.exists("isMiniAOD") ? params.getParameter<bool>("isMiniAOD") : (inTag.label()=="packedGenParticles") );
62 
64  edm::LogError("PartonicFinalStateFromMiniAOD") << "Partonic final state not supported for MiniAOD. Falling back to the stable particle selection.";
65  partonicFinalState = false;
66  }
67 
68  produces <reco::CandidatePtrVector> ();
69 
70  input_genpartcoll_token_ = consumes<reco::CandidateView>(inTag);
71  if(isMiniAOD)
72  input_prunedgenpartcoll_token_ = consumes<reco::CandidateView>(prunedInTag);
73 
74 }
T getParameter(std::string const &) const
edm::EDGetTokenT< reco::CandidateView > input_genpartcoll_token_
bool exists(std::string const &parameterName) const
checks if a parameter exists
void setIgnoredParticles(const std::vector< unsigned int > &particleIDs)
edm::EDGetTokenT< reco::CandidateView > input_prunedgenpartcoll_token_
std::string const & label() const
Definition: InputTag.h:36
void setExcludeFromResonancePids(const std::vector< unsigned int > &particleIDs)
InputGenJetsParticleSelector::~InputGenJetsParticleSelector ( )
override

Definition at line 76 of file InputGenJetsParticleSelector.cc.

76 {}
InputGenJetsParticleSelector::InputGenJetsParticleSelector ( )
inlineprivate

Definition at line 76 of file InputGenJetsParticleSelector.h.

76 {} //should not be used!

Member Function Documentation

InputGenJetsParticleSelector::ResonanceState InputGenJetsParticleSelector::fromResonance ( ParticleBitmap invalid,
const ParticleVector p,
const reco::Candidate particle 
) const

Definition at line 189 of file InputGenJetsParticleSelector.cc.

References mps_fire::i, training_settings::idx, isExcludedFromResonance(), isIgnored(), isParton(), isResonance(), kDirect, kIndirect, kNo, reco::Candidate::mother(), reco::Candidate::numberOfMothers(), partIdx(), reco::Candidate::pdgId(), mps_fire::result, and reco::Candidate::status().

Referenced by produce().

192 {
193  unsigned int idx = partIdx(p, particle);
194  int id = particle->pdgId();
195 
196  if (invalid[idx]) return kIndirect;
197 
198  if (isResonance(id) && (particle->status() == 3 || particle->status() == 22) ){
199  return kDirect;
200  }
201 
202 
203  if (!isIgnored(id) && (isParton(id)))
204  return kNo;
205 
206 
207 
208  unsigned int nMo=particle->numberOfMothers();
209  if (!nMo)
210  return kNo;
211 
212 
213  for(unsigned int i=0;i<nMo;++i){
215  switch(result) {
216  case kNo:
217  break;
218  case kDirect:
219  if (particle->mother(i)->pdgId()==id || isResonance(id))
220  return kDirect;
221  if(!isExcludedFromResonance(id))
222  break;
223  case kIndirect:
224  return kIndirect;
225  }
226  }
227 return kNo;
228 }
static unsigned int partIdx(const InputGenJetsParticleSelector::ParticleVector &p, const reco::Candidate *particle)
virtual const Candidate * mother(size_type i=0) const =0
return pointer to mother
virtual int status() const =0
status word
virtual int pdgId() const =0
PDG identifier.
virtual size_type numberOfMothers() const =0
number of mothers (zero or one in most of but not all the cases)
ResonanceState fromResonance(ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
bool InputGenJetsParticleSelector::getExcludeResonances ( ) const
inline
const std::vector<unsigned int>& InputGenJetsParticleSelector::getIgnoredParticles ( ) const
inline

Definition at line 44 of file InputGenJetsParticleSelector.h.

References ignoreParticleIDs.

45  { return ignoreParticleIDs; }
std::vector< unsigned int > ignoreParticleIDs
bool InputGenJetsParticleSelector::getPartonicFinalState ( ) const
inline
double InputGenJetsParticleSelector::getPtMin ( ) const
inline

Definition at line 43 of file InputGenJetsParticleSelector.h.

References ptMin.

bool InputGenJetsParticleSelector::getTausAndJets ( ) const
inline

Definition at line 42 of file InputGenJetsParticleSelector.h.

References tausAsJets.

bool InputGenJetsParticleSelector::hasPartonChildren ( ParticleBitmap invalid,
const ParticleVector p,
const reco::Candidate particle 
) const

Definition at line 231 of file InputGenJetsParticleSelector.cc.

References testPartonChildren().

Referenced by produce(), and setPtMin().

233  {
234  return testPartonChildren(invalid, p, particle) > 0;
235 }
int testPartonChildren(ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
bool InputGenJetsParticleSelector::isExcludedFromResonance ( int  pdgId) const
private

Definition at line 122 of file InputGenJetsParticleSelector.cc.

References excludeFromResonancePids, createfilelist::int, and common_cff::pdgId.

Referenced by fromResonance().

123 {
124  pdgId = pdgId > 0 ? pdgId : -pdgId;
125  std::vector<unsigned int>::const_iterator pos =
126  std::lower_bound(excludeFromResonancePids.begin(),
128  (unsigned int)pdgId);
129  return pos != excludeFromResonancePids.end() && *pos == (unsigned int)pdgId;
130 
131 }
std::vector< unsigned int > excludeFromResonancePids
bool InputGenJetsParticleSelector::isHadron ( int  pdgId)
static

Definition at line 98 of file InputGenJetsParticleSelector.cc.

References common_cff::pdgId.

Referenced by setPtMin(), and testPartonChildren().

99 {
100  pdgId = (pdgId > 0 ? pdgId : -pdgId) % 10000;
101  return (pdgId > 100 && pdgId < 900) ||
102  (pdgId > 1000 && pdgId < 9000);
103 }
bool InputGenJetsParticleSelector::isIgnored ( int  pdgId) const

Definition at line 112 of file InputGenJetsParticleSelector.cc.

References ignoreParticleIDs, createfilelist::int, and common_cff::pdgId.

Referenced by fromResonance(), produce(), and setPtMin().

113 {
114  pdgId = pdgId > 0 ? pdgId : -pdgId;
115  std::vector<unsigned int>::const_iterator pos =
116  std::lower_bound(ignoreParticleIDs.begin(),
117  ignoreParticleIDs.end(),
118  (unsigned int)pdgId);
119  return pos != ignoreParticleIDs.end() && *pos == (unsigned int)pdgId;
120 }
std::vector< unsigned int > ignoreParticleIDs
bool InputGenJetsParticleSelector::isParton ( int  pdgId) const

Definition at line 90 of file InputGenJetsParticleSelector.cc.

References common_cff::pdgId, and tausAsJets.

Referenced by fromResonance(), produce(), setPtMin(), and testPartonChildren().

90  {
91  pdgId = (pdgId > 0 ? pdgId : -pdgId) % 10000;
92  return (pdgId > 0 && pdgId < 6) ||
93  pdgId == 9 || (tausAsJets && pdgId == 15) || pdgId == 21;
94  // tops are not considered "regular" partons
95  // but taus eventually are (since they may hadronize later)
96 }
bool InputGenJetsParticleSelector::isResonance ( int  pdgId)
static

Definition at line 105 of file InputGenJetsParticleSelector.cc.

References common_cff::pdgId.

Referenced by fromResonance(), and setPtMin().

106 {
107  // gauge bosons and tops
108  pdgId = (pdgId > 0 ? pdgId : -pdgId) % 10000;
109  return (pdgId > 21 && pdgId <= 42) || pdgId == 6 || pdgId == 7 || pdgId == 8 ; //BUG! was 21. 22=gamma..
110 }
void InputGenJetsParticleSelector::produce ( edm::StreamID  ,
edm::Event evt,
const edm::EventSetup evtSetup 
) const
override

Definition at line 239 of file InputGenJetsParticleSelector.cc.

References edm::View< T >::begin(), DEFINE_FWK_MODULE, edm::View< T >::end(), excludeResonances, fromResonance(), GenHFHadronMatcher_cfi::genParticles, edm::Event::getByToken(), hasPartonChildren(), mps_fire::i, training_settings::idx, input_genpartcoll_token_, input_prunedgenpartcoll_token_, align::invalid, invalidateTree(), isIgnored(), isMiniAOD, isParton(), eostools::move(), reco::Candidate::numberOfDaughters(), HadronAndPartonSelector_cfi::particles, partonicFinalState, reco::Candidate::pdgId(), prunedGenParticles_cfi::prunedGenParticles, reco::Candidate::pt(), ptMin, edm::View< T >::ptrAt(), edm::Event::put(), findQualityFiles::size, and reco::Candidate::status().

239  {
240 
241 
242  auto selected_ = std::make_unique<reco::CandidatePtrVector>();
243 
245 
247  if(isMiniAOD)
248  {
249  evt.getByToken(input_prunedgenpartcoll_token_, prunedGenParticles );
250 
251  for (edm::View<reco::Candidate>::const_iterator iter=prunedGenParticles->begin();iter!=prunedGenParticles->end();++iter)
252  {
253  if(iter->status()!=1) // to avoid double-counting, skipping stable particles already contained in the collection of PackedGenParticles
254  particles.push_back(&*iter);
255  }
256  }
257 
259  evt.getByToken(input_genpartcoll_token_, genParticles );
260 
261  std::map<const reco::Candidate*,size_t> particlePtrIdxMap;
262 
263  for (edm::View<reco::Candidate>::const_iterator iter=genParticles->begin();iter!=genParticles->end();++iter){
264  particles.push_back(&*iter);
265  particlePtrIdxMap[&*iter] = (iter - genParticles->begin());
266  }
267 
268  std::sort(particles.begin(), particles.end());
269  unsigned int size = particles.size();
270 
271  ParticleBitmap selected(size, false);
272  ParticleBitmap invalid(size, false);
273 
274  for(unsigned int i = 0; i < size; i++) {
275  const reco::Candidate *particle = particles[i];
276  if (invalid[i])
277  continue;
278  if (particle->status() == 1) // selecting stable particles
279  selected[i] = true;
280  if (partonicFinalState && isParton(particle->pdgId())) {
281 
282  if (particle->numberOfDaughters()==0 &&
283  particle->status() != 1) {
284  // some brokenness in event...
285  invalid[i] = true;
286  }
287  else if (!hasPartonChildren(invalid, particles,
288  particle)) {
289  selected[i] = true;
290  invalidateTree(invalid, particles,particle); //this?!?
291  }
292  }
293 
294  }
295 
296  for(size_t idx = 0; idx < size; ++idx){
297  const reco::Candidate *particle = particles[idx];
298  if (!selected[idx] || invalid[idx]){
299  continue;
300  }
301 
302  if (excludeResonances &&
303  fromResonance(invalid, particles, particle)) {
304  invalid[idx] = true;
305  //cout<<"[INPUTSELECTOR] Invalidates FROM RESONANCE!: ["<<setw(4)<<idx<<"] "<<particle->pdgId()<<" "<<particle->pt()<<endl;
306  continue;
307  }
308 
309  if (isIgnored(particle->pdgId())){
310  continue;
311  }
312 
313 
314  if (particle->pt() >= ptMin){
315  selected_->push_back(genParticles->ptrAt(particlePtrIdxMap[particle]));
316  //cout<<"Finally we have: ["<<setw(4)<<idx<<"] "<<setw(4)<<particle->pdgId()<<" "<<particle->pt()<<endl;
317  }
318  }
319  evt.put(std::move(selected_));
320 }
bool hasPartonChildren(ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
size
Write out results.
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:127
edm::EDGetTokenT< reco::CandidateView > input_genpartcoll_token_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:508
Ptr< value_type > ptrAt(size_type i) const
virtual int status() const =0
status word
edm::EDGetTokenT< reco::CandidateView > input_prunedgenpartcoll_token_
const_iterator begin() const
virtual int pdgId() const =0
PDG identifier.
ResonanceState fromResonance(ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
virtual double pt() const =0
transverse momentum
static void invalidateTree(InputGenJetsParticleSelector::ParticleBitmap &invalid, const InputGenJetsParticleSelector::ParticleVector &p, const reco::Candidate *particle)
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
Definition: View.h:86
std::vector< const reco::Candidate * > ParticleVector
const_iterator end() const
virtual size_type numberOfDaughters() const =0
number of daughters
def move(src, dest)
Definition: eostools.py:510
void InputGenJetsParticleSelector::setExcludeFromResonancePids ( const std::vector< unsigned int > &  particleIDs)
private

Definition at line 84 of file InputGenJetsParticleSelector.cc.

References excludeFromResonancePids.

Referenced by InputGenJetsParticleSelector().

85 {
86  excludeFromResonancePids = particleIDs;
87  std::sort( excludeFromResonancePids.begin(), excludeFromResonancePids.end());
88 }
std::vector< unsigned int > excludeFromResonancePids
void InputGenJetsParticleSelector::setExcludeResonances ( bool  flag = true)
inline
void InputGenJetsParticleSelector::setIgnoredParticles ( const std::vector< unsigned int > &  particleIDs)
private

Definition at line 78 of file InputGenJetsParticleSelector.cc.

References ignoreParticleIDs.

Referenced by InputGenJetsParticleSelector().

79 {
80  ignoreParticleIDs = particleIDs;
81  std::sort(ignoreParticleIDs.begin(), ignoreParticleIDs.end());
82 }
std::vector< unsigned int > ignoreParticleIDs
void InputGenJetsParticleSelector::setPartonicFinalState ( bool  flag = true)
inline
void InputGenJetsParticleSelector::setPtMin ( double  ptMin)
inline
void InputGenJetsParticleSelector::setTausAsJets ( bool  flag = true)
inline
int InputGenJetsParticleSelector::testPartonChildren ( InputGenJetsParticleSelector::ParticleBitmap invalid,
const ParticleVector p,
const reco::Candidate particle 
) const
private

Definition at line 165 of file InputGenJetsParticleSelector.cc.

References reco::Candidate::daughter(), mps_fire::i, training_settings::idx, isHadron(), isParton(), npart, reco::Candidate::numberOfDaughters(), partIdx(), reco::Candidate::pdgId(), and mps_fire::result.

Referenced by hasPartonChildren(), and invalidateTree().

168 {
169  unsigned int npart=particle->numberOfDaughters();
170  if (!npart) {return 0;}
171 
172  for (unsigned int i=0;i<npart;++i){
173  unsigned int idx = partIdx(p,particle->daughter(i));
174  if (invalid[idx])
175  continue;
176  if (isParton((particle->daughter(i)->pdgId()))){
177  return 1;
178  }
179  if (isHadron((particle->daughter(i)->pdgId()))){
180  return -1;
181  }
182  int result = testPartonChildren(invalid,p,particle->daughter(i));
183  if (result) return result;
184  }
185  return 0;
186 }
static unsigned int partIdx(const InputGenJetsParticleSelector::ParticleVector &p, const reco::Candidate *particle)
virtual const Candidate * daughter(size_type i) const =0
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
double npart
Definition: HydjetWrapper.h:49
int testPartonChildren(ParticleBitmap &invalid, const ParticleVector &p, const reco::Candidate *particle) const
virtual int pdgId() const =0
PDG identifier.
virtual size_type numberOfDaughters() const =0
number of daughters

Member Data Documentation

std::vector<unsigned int> InputGenJetsParticleSelector::excludeFromResonancePids
private
bool InputGenJetsParticleSelector::excludeResonances
private
std::vector<unsigned int> InputGenJetsParticleSelector::ignoreParticleIDs
private
edm::EDGetTokenT<reco::CandidateView> InputGenJetsParticleSelector::input_genpartcoll_token_
private

Definition at line 96 of file InputGenJetsParticleSelector.h.

Referenced by InputGenJetsParticleSelector(), and produce().

edm::EDGetTokenT<reco::CandidateView> InputGenJetsParticleSelector::input_prunedgenpartcoll_token_
private

Definition at line 97 of file InputGenJetsParticleSelector.h.

Referenced by InputGenJetsParticleSelector(), and produce().

edm::InputTag InputGenJetsParticleSelector::inTag
private

Definition at line 78 of file InputGenJetsParticleSelector.h.

Referenced by InputGenJetsParticleSelector().

bool InputGenJetsParticleSelector::isMiniAOD
private

Definition at line 93 of file InputGenJetsParticleSelector.h.

Referenced by InputGenJetsParticleSelector(), and produce().

bool InputGenJetsParticleSelector::partonicFinalState
private
edm::InputTag InputGenJetsParticleSelector::prunedInTag
private

Definition at line 79 of file InputGenJetsParticleSelector.h.

Referenced by InputGenJetsParticleSelector().

double InputGenJetsParticleSelector::ptMin
private

Definition at line 94 of file InputGenJetsParticleSelector.h.

Referenced by getPtMin(), produce(), and setPtMin().

bool InputGenJetsParticleSelector::tausAsJets
private

Definition at line 92 of file InputGenJetsParticleSelector.h.

Referenced by getTausAndJets(), isParton(), and setTausAsJets().