File indexing completed on 2025-08-05 08:17:52
0001 #include "PHG4TrackStatusDecode.h"
0002
0003 #include <Geant4/G4TrackStatus.hh>
0004
0005 #include <TSystem.h>
0006
0007 #include <iostream>
0008 #include <map>
0009
0010 static std::map<int, std::string> trackstatus;
0011
0012 std::string PHG4TrackStatusDecode::GetTrackStatus(const int istatus)
0013 {
0014 if (trackstatus.empty())
0015 {
0016 std::cout << "filling trackstatus map" << std::endl;
0017 trackstatus[fAlive] = "fAlive";
0018 trackstatus[fStopButAlive] = "fStopButAlive";
0019 trackstatus[fStopAndKill] = "fStopAndKill";
0020 trackstatus[fKillTrackAndSecondaries] = "fKillTrackAndSecondaries";
0021 trackstatus[fSuspend] = "fSuspend";
0022 trackstatus[fPostponeToNextEvent] = "fPostponeToNextEvent";
0023 }
0024 if (trackstatus.find(istatus) == trackstatus.end())
0025 {
0026 std::cout << "could not find status " << istatus << " in trackstatus map" << std::endl;
0027 gSystem->Exit(1);
0028 }
0029 return trackstatus[istatus];
0030 }