6#ifndef INDETTRACKSYSTEMATICSTOOLS_INDETTRACKTRUTHORIGINDEFS_H
7#define INDETTRACKSYSTEMATICSTOOLS_INDETTRACKTRUTHORIGINDEFS_H
44 if (origin & (0x1 <<
Fake))
return true;
50 if (origin & (0x1 <<
Pileup))
return true;
99 if (origin & (0x1 <<
TauDecay))
return true;
105 static constexpr auto bit=[](
int bitpos){
return 0x1<<bitpos;};
107 return (origin & isSecondaryMask);
124 if (
isFromD(origin))
return false;
131 if (
isFromB(origin))
return false;
150 if (
isFake(origin))
return false;
int getExclusiveOrigin(int origin)
bool isPileup(int origin)
from pileup
bool isFromBNotFromD(int origin)
from B decay chain excluding B-->D
bool isFromTau(int origin)
from tau decay
bool isHadronicInteraction(int origin)
from hadronic interactions
bool isSecondary(int origin)
from long living particle decays or gamma conversions or hadronic interactions and anything else with...
bool isPrimary(int origin)
not fake, not pileup, not secondaries
bool isFromB(int origin)
from B decay chain including B-->D
bool isGammaConversion(int origin)
from conversions
bool isStrangeMesonDecay(int origin)
from strange meson decay
bool isV0Decay(int origin)
from V0
bool isFromDNotFromB(int origin)
from D decay chain excluding B-->D
bool isFromD(int origin)
from D decay chain including B-->D
bool isStrangeBaryonDecay(int origin)
from strange baryon decay
bool isFragmentation(int origin)
not from B, D, or any secondary
bool isKshortDecay(int origin)
from Kshort decay
bool isFake(int origin)
Helper functions.
bool isFromDfromB(int origin)
from B-->D decay chain
bool isLambdaDecay(int origin)
from Lambda decay