00001 #ifndef MCTRUTH_DATASTRUCTURE_H 00002 #define MCTRUTH_DATASTRUCTURE_H 00003 00004 typedef struct { 00005 int trackIndex; 00006 int PDGcode; 00007 int charge; 00008 int v0Index; 00009 int v1Index; 00010 int px; 00011 int py; 00012 int pz; 00013 int energy; 00014 int minDaughterIndex; 00015 int maxDaughterIndex; 00016 } TrackTruth_t; 00017 00018 typedef struct { 00019 int vertexIndex; 00020 int parentTrackIndex; 00021 int x; 00022 int y; 00023 int z; 00024 int time; 00025 } VertexTruth_t; 00026 00027 typedef struct { 00028 int trackIndex; 00029 int layerId; 00030 int cellId; 00031 int edep; 00032 int driftD; 00033 int x; 00034 int y; 00035 int z; 00036 int posFlag; 00037 } MdcTruth_t; 00038 00039 typedef struct { 00040 int trackIndex; 00041 int partId; 00042 int scinNb; 00043 int strip; 00044 int x; 00045 int y; 00046 int z; 00047 int px; 00048 int py; 00049 int pz; 00050 int trackLength; 00051 int time; 00052 } TofTruth_t; 00053 00054 typedef struct { 00055 int trackIndex; 00056 int partId; 00057 int numTheta; 00058 int numPhi; 00059 int x; 00060 int y; 00061 int z; 00062 int px; 00063 int py; 00064 int pz; 00065 int totalEdep; 00066 } EmcTruth_t; 00067 00068 typedef struct { 00069 int trackIndex; 00070 int partId; 00071 int segId; 00072 int gapId; 00073 int stripId; 00074 int x; 00075 int y; 00076 int z; 00077 int px; 00078 int py; 00079 int pz; 00080 } MucTruth_t; 00081 00082 #endif