[Generators/GenAnalysisTools] 1. interacting such as hadron, electron, photon or muon ( ( (p->status()%1000 == 1) || (p->status()%1000 == 2 && p->status() > 1000) ) && (p->barcode()<100000) ) && !( abs(p->pdg_id())==12 || abs(p->pdg_id())==14 || abs(p->pdg_id())==16 || (abs(p->pdg_id())==1000039 && p->status()%1000==1 ) || (abs(p->pdg_id())==1000022 && p->status()%1000==1 ) ) 2. non interacting such as neutrino abs(p->pdg_id())==12 || abs(p->pdg_id())==14 || abs(p->pdg_id())==16 || (abs(p->pdg_id())==1000039 && p->status()%1000==1 ) || (abs(p->pdg_id())==1000022 && p->status()%1000==1 ) 3. stable in a generated event or an input to Geant in a fully simulated event, that is, the particle belongs to the final state. ( (p->status()%1000 == 1) || (p->status()%1000 == 2 && p->status() > 1000) ) && (p->barcode()<100000) 4. produced by the event generator p->barcode() < 100000 && ( p->status()<200 || p->status()%1000 == 1 || p->status()%1000 == 2 )