6 using namespace CandMCTagUtils;
12 vector<const reco::Candidate *> moms;
17 moms.push_back( dau );
30 bool tmpHasBottom =
false;
31 code1 = (int)( (
abs(c.
pdgId() ) / 100)%10 );
32 code2 = (int)( (
abs(c.
pdgId() ) /1000)%10 );
33 if ( code1 == 5 || code2 == 5) tmpHasBottom =
true;
41 bool tmpHasCharm =
false;
42 code1 = (int)( (
abs(c.
pdgId() ) / 100)%10 );
43 code2 = (int)( (
abs(c.
pdgId() ) /1000)%10 );
44 if ( code1 == 4 || code2 == 4) tmpHasCharm =
true;
bool isLightParton(const reco::Candidate &c)
virtual const Candidate * mother(size_type i=0) const =0
return pointer to mother
std::vector< const reco::Candidate * > getAncestors(const reco::Candidate &c)
bool hasCharm(const reco::Candidate &c)
virtual size_type numberOfMothers() const =0
number of mothers (zero or one in most of but not all the cases)
virtual int pdgId() const =0
PDG identifier.
bool isParton(const reco::Candidate &c)
bool hasBottom(const reco::Candidate &c)