|
| PartonSelector (const edm::ParameterSet &) |
|
| ~PartonSelector () |
|
| EDProducer ()=default |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
virtual | ~EDProducerBase () |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
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, std::unordered_multimap< std::string, edm::ProductResolverIndex > const &iIndicies, std::string const &moduleLabel) |
|
virtual | ~ProducerBase () noexcept(false) |
|
std::vector< ConsumesInfo > | consumesInfo () 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 |
|
EDConsumerBase & | operator= (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) |
|
Definition at line 36 of file PartonSelector.cc.
Definition at line 83 of file PartonSelector.cc.
References funct::abs(), reco::CompositeRefCandidateT< D >::daughter(), DEFINE_FWK_MODULE, GenHFHadronMatcher_cff::flavour, edm::Event::getByToken(), mps_fire::i, funct::m, eostools::move(), nPart(), reco::CompositeRefCandidateT< D >::numberOfDaughters(), HadronAndPartonSelector_cfi::particles, reco::Candidate::pdgId(), reco::LeafCandidate::pdgId(), edm::Event::put(), reco::LeafCandidate::status(), and SelectPartons_cff::withLeptons.
89 edm::LogVerbatim(
"PartonSelector") <<
"=== GenParticle size:" << particles->size();
92 auto thePartons = std::make_unique<GenParticleRefVector>();
94 for (
size_t m = 0;
m < particles->size();
m++) {
101 bool isAParton =
false;
102 bool isALepton =
false;
110 flavour == 21 ) isAParton =
true;
116 flavour == 16 ) isALepton =
true;
120 if( aParticle.
status() == 3 && isAParton ) {
126 int nparton_daughters = 0;
132 if( (daughterFlavour == 1 || daughterFlavour == 2 || daughterFlavour == 3 ||
133 daughterFlavour == 4 || daughterFlavour == 5 || daughterFlavour == 6 || daughterFlavour == 21)) {
138 if(nparton_daughters == 0){
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< reco::GenParticleCollection > tokenGenParticles_
virtual int status() const final
status word
edm::Ref< edm::HepMCProduct, HepMC::GenParticle > GenParticleRef
virtual int pdgId() const =0
PDG identifier.
virtual size_t numberOfDaughters() const
number of daughters
virtual const Candidate * daughter(size_type) const
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
virtual int pdgId() const final
PDG identifier.
Abs< T >::type abs(const T &t)
TString nPart(Int_t part, TString string, TString delimit=";", Bool_t removerest=true)