#include "hparticlecandsim.h" #include #include using namespace std; // ROOT's IO and RTTI stuff is added here ClassImp(HParticleCandSim) //_HADES_CLASS_DESCRIPTION //////////////////////////////////////////////////////////////////////////////// // // // HParticleCandSim // // Simulation object keeping HGeant information in addition to the normal // HParticleCand. For documentation of enum constants see hparticledef.h //////////////////////////////////////////////////////////////////////////////// void HParticleCandSim::print(UInt_t selection) { // print one candidate object and the flags which have been // already set to HParticleCand // // print option bits // bit 1 : print hit indices (selection == 1) // 2 : print hit indices (selection == 2) // 3 : print chi2s and matching vars (selection == 4) // 4 : print selection flags (selection == 8) // 5 : print Geant infos (selection == 16) // default : print all if( (selection&0xF) > 0 ) HParticleCand::print(selection); else cout<<" "<<" --------------------------------------------"<>4) & 0x01){ cout<<"Geant PID : "<> fGeantPID; R__b >> fGeantTrack; R__b >> fGeantCorrTrackIds; R__b >> fGeantxMom; R__b >> fGeantyMom; R__b >> fGeantzMom; R__b >> fGeantxVertex; R__b >> fGeantyVertex; R__b >> fGeantzVertex; R__b >> fGeantParentTrackNum; R__b >> fGeantParentPID; R__b >> fGeantGrandParentTrackNum; R__b >> fGeantGrandParentPID; R__b >> fGeantCreationMechanism; R__b >> fGeantMediumNumber; R__b >> fGeantgeninfo; R__b >> fGeantgeninfo1; R__b >> fGeantgeninfo2; R__b >> fGeantgenweight; if(R__v > 1){ R__b.ReadStaticArray((int*)fGeantTrackRich); R__b.ReadStaticArray((int*)fGeantTrackMeta); R__b.ReadStaticArray((int*)fGeantTrackShower); } else { for (Int_t i = 0; i < 3; ++i) fGeantTrackRich[i] = -1; for (Int_t i = 0; i < 4; ++i) { fGeantTrackMeta [i] = -1; fGeantTrackShower[i] = -1; } } R__b.CheckByteCount(R__s, R__c, HParticleCandSim::IsA()); } else { R__c = R__b.WriteVersion(HParticleCandSim::IsA(), kTRUE); HParticleCand::Streamer(R__b); R__b << fGeantPID; R__b << fGeantTrack; R__b << fGeantCorrTrackIds; R__b << fGeantxMom; R__b << fGeantyMom; R__b << fGeantzMom; R__b << fGeantxVertex; R__b << fGeantyVertex; R__b << fGeantzVertex; R__b << fGeantParentTrackNum; R__b << fGeantParentPID; R__b << fGeantGrandParentTrackNum; R__b << fGeantGrandParentPID; R__b << fGeantCreationMechanism; R__b << fGeantMediumNumber; R__b << fGeantgeninfo; R__b << fGeantgeninfo1; R__b << fGeantgeninfo2; R__b << fGeantgenweight; R__b.WriteArray(fGeantTrackRich, 3); R__b.WriteArray(fGeantTrackMeta, 4); R__b.WriteArray(fGeantTrackShower, 4); R__b.SetByteCount(R__c, kTRUE); } }