32 int st = hadronStatus_.size();
33 int etamax = hadronEtaMax_.size();
34 int etamin = hadronEtaMin_.size();
35 int pmin = hadronPMin_.size();
36 int ptmax = hadronPtMax_.size();
37 int ptmin = hadronPtMin_.size();
39 if(
id!=st ||
id!=etamax ||
id!=etamin ||
id!=ptmax ||
id!=ptmin ||
id!=pmin)
45 id = partonId_.size();
46 st = partonStatus_.size();
47 etamax = partonEtaMax_.size();
48 ptmin = partonPtMin_.size();
50 if(
id!=st ||
id!=etamax ||
id!=ptmin )
63 HepMC::GenEvent::particle_const_iterator
begin = evt->particles_begin();
64 HepMC::GenEvent::particle_const_iterator
end = evt->particles_end();
66 bool foundHadron =
false;
67 bool foundDecay =
false;
68 bool foundParton =
false;
70 HepMC::GenEvent::particle_const_iterator it =
begin;
71 while( !foundParton && it != end )
83 HepMC::GenEvent::particle_const_iterator it2 =
begin;
87 while( (!foundHadron || !foundDecay) && it2 !=
end )
110 return (foundHadron && foundDecay && foundParton);
std::vector< double > partonEtaMax_
T getParameter(std::string const &) const
std::vector< double > hadronPtMax_
std::vector< int > partonStatus_
std::vector< double > hadronEtaMax_
PartonHadronDecayGenEvtSelector(const edm::ParameterSet &pset)
std::vector< int > partonId_
std::vector< double > hadronEtaMin_
std::vector< int > hadronId_
std::vector< double > hadronPtMin_
bool filter(HepMC::GenEvent *) override
std::vector< double > hadronPMin_
bool selectParticle(HepMC::GenParticle *par, int status, int pdg, double ptMin, double etaMax)
std::vector< double > partonPtMin_
std::vector< int > hadronStatus_