00001 #ifndef RootEventData_TExtTrack_H
00002 #define RootEventData_TExtTrack_H 1
00003
00004 #include "TObject.h"
00005 #include "TString.h"
00006 #include "SimMatr.h"
00007
00008
00009 class TExtTrack : public TObject {
00010
00011 public:
00012
00013 TExtTrack();
00014
00015 ~TExtTrack ();
00016
00017
00018 void SetTrackId(const Int_t trackId){ m_trackId = trackId; }
00019
00020 void SetTof1PositionX(const Double_t Tof1PositionX) { myTof1PositionX = Tof1PositionX; }
00021 void SetTof1PositionY(const Double_t Tof1PositionY) { myTof1PositionY = Tof1PositionY; }
00022 void SetTof1PositionZ(const Double_t Tof1PositionZ) { myTof1PositionZ = Tof1PositionZ; }
00023 void SetTof1MomentumX(const Double_t Tof1MomentumX) { myTof1MomentumX = Tof1MomentumX; }
00024 void SetTof1MomentumY(const Double_t Tof1MomentumY) { myTof1MomentumY = Tof1MomentumY; }
00025 void SetTof1MomentumZ(const Double_t Tof1MomentumZ) { myTof1MomentumZ = Tof1MomentumZ; }
00026
00027 void SetTof1VolumeName(const TString Tof1VolumeName) { myTof1VolumeName = Tof1VolumeName; }
00028 void SetTof1VolumeNumber(const Int_t Tof1VolumeNumber) { myTof1VolumeNumber = Tof1VolumeNumber; }
00029 void SetTof1(const Double_t Tof1) { myTof1 = Tof1; }
00030 void SetTof1Path(const Double_t Tof1Path) { myTof1Path = Tof1Path; }
00031 void SetTof1PosSigmaAlongZ(const Double_t Tof1PosSigmaAlongZ) { myTof1PosSigmaAlongZ = Tof1PosSigmaAlongZ; }
00032 void SetTof1PosSigmaAlongT(const Double_t Tof1PosSigmaAlongT) { myTof1PosSigmaAlongT = Tof1PosSigmaAlongT; }
00033 void SetTof1PosSigmaAlongX(const Double_t Tof1PosSigmaAlongX) { myTof1PosSigmaAlongX = Tof1PosSigmaAlongX; }
00034 void SetTof1PosSigmaAlongY(const Double_t Tof1PosSigmaAlongY) { myTof1PosSigmaAlongY = Tof1PosSigmaAlongY; }
00035 void SetTof1ErrorMatrix(const Double_t Tof1ErrorMatrix[6][6]) {
00036 SimMat::pack2d(6,&Tof1ErrorMatrix[0][0],myTof1ErrorMatrix);
00037 }
00038
00039
00040 void SetTof2PositionX(const Double_t Tof2PositionX) { myTof2PositionX = Tof2PositionX; }
00041 void SetTof2PositionY(const Double_t Tof2PositionY) { myTof2PositionY = Tof2PositionY; }
00042 void SetTof2PositionZ(const Double_t Tof2PositionZ) { myTof2PositionZ = Tof2PositionZ; }
00043 void SetTof2MomentumX(const Double_t Tof2MomentumX) { myTof2MomentumX = Tof2MomentumX; }
00044 void SetTof2MomentumY(const Double_t Tof2MomentumY) { myTof2MomentumY = Tof2MomentumY; }
00045 void SetTof2MomentumZ(const Double_t Tof2MomentumZ) { myTof2MomentumZ = Tof2MomentumZ; }
00046
00047 void SetTof2VolumeName(const TString Tof2VolumeName) { myTof2VolumeName = Tof2VolumeName; }
00048 void SetTof2VolumeNumber(const Int_t Tof2VolumeNumber) { myTof2VolumeNumber = Tof2VolumeNumber; }
00049 void SetTof2(const Double_t Tof2) { myTof2 = Tof2; }
00050 void SetTof2Path(const Double_t Tof2Path) { myTof2Path = Tof2Path; }
00051 void SetTof2PosSigmaAlongZ(const Double_t Tof2PosSigmaAlongZ) { myTof2PosSigmaAlongZ = Tof2PosSigmaAlongZ; }
00052 void SetTof2PosSigmaAlongT(const Double_t Tof2PosSigmaAlongT) { myTof2PosSigmaAlongT = Tof2PosSigmaAlongT; }
00053 void SetTof2PosSigmaAlongX(const Double_t Tof2PosSigmaAlongX) { myTof2PosSigmaAlongX = Tof2PosSigmaAlongX; }
00054 void SetTof2PosSigmaAlongY(const Double_t Tof2PosSigmaAlongY) { myTof2PosSigmaAlongY = Tof2PosSigmaAlongY; }
00055 void SetTof2ErrorMatrix(const Double_t Tof2ErrorMatrix[6][6]) {
00056 SimMat::pack2d(6,&Tof2ErrorMatrix[0][0],myTof2ErrorMatrix);
00057 }
00058
00059
00060 void SetEmcPositionX(const Double_t EmcPositionX) { myEmcPositionX = EmcPositionX; }
00061 void SetEmcPositionY(const Double_t EmcPositionY) { myEmcPositionY = EmcPositionY; }
00062 void SetEmcPositionZ(const Double_t EmcPositionZ) { myEmcPositionZ = EmcPositionZ; }
00063 void SetEmcMomentumX(const Double_t EmcMomentumX) { myEmcMomentumX = EmcMomentumX; }
00064 void SetEmcMomentumY(const Double_t EmcMomentumY) { myEmcMomentumY = EmcMomentumY; }
00065 void SetEmcMomentumZ(const Double_t EmcMomentumZ) { myEmcMomentumZ = EmcMomentumZ; }
00066
00067 void SetEmcVolumeName(const TString EmcVolumeName) { myEmcVolumeName = EmcVolumeName; }
00068 void SetEmcVolumeNumber(const Int_t EmcVolumeNumber) { myEmcVolumeNumber = EmcVolumeNumber; }
00069
00070 void SetEmcPosSigmaAlongTheta(const Double_t EmcPosSigmaAlongTheta) { myEmcPosSigmaAlongTheta = EmcPosSigmaAlongTheta; }
00071 void SetEmcPosSigmaAlongPhi(const Double_t EmcPosSigmaAlongPhi) { myEmcPosSigmaAlongPhi = EmcPosSigmaAlongPhi; }
00072
00073 void SetEmcErrorMatrix(const Double_t EmcErrorMatrix[6][6]) {
00074 SimMat::pack2d(6,&EmcErrorMatrix[0][0],myEmcErrorMatrix);
00075 }
00076
00077 void SetEmcPath(Double_t path) {myEmcPath = path;}
00078
00079
00080 void SetMucPositionX(const Double_t MucPositionX) { myMucPositionX = MucPositionX; }
00081 void SetMucPositionY(const Double_t MucPositionY) { myMucPositionY = MucPositionY; }
00082 void SetMucPositionZ(const Double_t MucPositionZ) { myMucPositionZ = MucPositionZ; }
00083 void SetMucMomentumX(const Double_t MucMomentumX) { myMucMomentumX = MucMomentumX; }
00084 void SetMucMomentumY(const Double_t MucMomentumY) { myMucMomentumY = MucMomentumY; }
00085 void SetMucMomentumZ(const Double_t MucMomentumZ) { myMucMomentumZ = MucMomentumZ; }
00086
00087 void SetMucVolumeName(const TString MucVolumeName) { myMucVolumeName = MucVolumeName; }
00088 void SetMucVolumeNumber(const Int_t MucVolumeNumber) { myMucVolumeNumber = MucVolumeNumber; }
00089
00090 void SetMucPosSigmaAlongZ(const Double_t MucPosSigmaAlongZ) { myMucPosSigmaAlongZ = MucPosSigmaAlongZ; }
00091 void SetMucPosSigmaAlongT(const Double_t MucPosSigmaAlongT) { myMucPosSigmaAlongT = MucPosSigmaAlongT; }
00092 void SetMucPosSigmaAlongX(const Double_t MucPosSigmaAlongX) { myMucPosSigmaAlongX = MucPosSigmaAlongX; }
00093 void SetMucPosSigmaAlongY(const Double_t MucPosSigmaAlongY) { myMucPosSigmaAlongY = MucPosSigmaAlongY; }
00094
00095 void SetMucErrorMatrix(const Double_t MucErrorMatrix[6][6]) {
00096 SimMat::pack2d(6,&MucErrorMatrix[0][0],myMucErrorMatrix);
00097 }
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122 Int_t GetTrackId() const { return m_trackId; }
00123
00124 Double_t GetTof1PositionX() const { return myTof1PositionX ; }
00125 Double_t GetTof1PositionY() const { return myTof1PositionY ; }
00126 Double_t GetTof1PositionZ() const { return myTof1PositionZ ; }
00127 Double_t GetTof1MomentumX() const { return myTof1MomentumX ; }
00128 Double_t GetTof1MomentumY() const { return myTof1MomentumY ; }
00129 Double_t GetTof1MomentumZ() const { return myTof1MomentumZ ; }
00130
00131 TString GetTof1VolumeName() const { return myTof1VolumeName; }
00132 Int_t GetTof1VolumeNumber() const {return myTof1VolumeNumber; }
00133 Double_t GetTof1() const {return myTof1; }
00134 Double_t GetTof1Path() const {return myTof1Path; }
00135 Double_t GetTof1PosSigmaAlongZ() const {return myTof1PosSigmaAlongZ;}
00136 Double_t GetTof1PosSigmaAlongT() const {return myTof1PosSigmaAlongT;}
00137 Double_t GetTof1PosSigmaAlongX() const {return myTof1PosSigmaAlongX;}
00138 Double_t GetTof1PosSigmaAlongY() const {return myTof1PosSigmaAlongY;}
00139 Double_t GetTof1ErrorMatrix(Int_t i , Int_t j) const {
00140 return SimMat::get_element(myTof1ErrorMatrix,i,j); }
00141
00142
00143 Double_t GetTof2PositionX() const { return myTof2PositionX ; }
00144 Double_t GetTof2PositionY() const { return myTof2PositionY ; }
00145 Double_t GetTof2PositionZ() const { return myTof2PositionZ ; }
00146 Double_t GetTof2MomentumX() const { return myTof2MomentumX ; }
00147 Double_t GetTof2MomentumY() const { return myTof2MomentumY ; }
00148 Double_t GetTof2MomentumZ() const { return myTof2MomentumZ ; }
00149
00150 TString GetTof2VolumeName() const { return myTof2VolumeName; }
00151 Int_t GetTof2VolumeNumber() const {return myTof2VolumeNumber; }
00152 Double_t GetTof2() const {return myTof2; }
00153 Double_t GetTof2Path() const {return myTof2Path; }
00154 Double_t GetTof2PosSigmaAlongZ() const {return myTof2PosSigmaAlongZ;}
00155 Double_t GetTof2PosSigmaAlongT() const {return myTof2PosSigmaAlongT;}
00156 Double_t GetTof2PosSigmaAlongX() const {return myTof2PosSigmaAlongX;}
00157 Double_t GetTof2PosSigmaAlongY() const {return myTof2PosSigmaAlongY;}
00158 Double_t GetTof2ErrorMatrix(Int_t i , Int_t j) const {
00159 return SimMat::get_element(myTof2ErrorMatrix,i,j); }
00160
00161
00162 Double_t GetEmcPositionX() const { return myEmcPositionX ; }
00163 Double_t GetEmcPositionY() const { return myEmcPositionY ; }
00164 Double_t GetEmcPositionZ() const { return myEmcPositionZ ; }
00165 Double_t GetEmcMomentumX() const { return myEmcMomentumX ; }
00166 Double_t GetEmcMomentumY() const { return myEmcMomentumY ; }
00167 Double_t GetEmcMomentumZ() const { return myEmcMomentumZ ; }
00168
00169 TString GetEmcVolumeName() const { return myEmcVolumeName; }
00170 Int_t GetEmcVolumeNumber() const {return myEmcVolumeNumber; }
00171 Double_t GetEmcPosSigmaAlongTheta() const {return myEmcPosSigmaAlongTheta;}
00172 Double_t GetEmcPosSigmaAlongPhi() const {return myEmcPosSigmaAlongPhi;}
00173 Double_t GetEmcErrorMatrix(Int_t i , Int_t j) const {
00174 return SimMat::get_element(myEmcErrorMatrix,i,j); }
00175 Double_t emcPath() const {return myEmcPath;}
00176
00177
00178 Double_t GetMucPositionX() const { return myMucPositionX ; }
00179 Double_t GetMucPositionY() const { return myMucPositionY ; }
00180 Double_t GetMucPositionZ() const { return myMucPositionZ ; }
00181 Double_t GetMucMomentumX() const { return myMucMomentumX ; }
00182 Double_t GetMucMomentumY() const { return myMucMomentumY ; }
00183 Double_t GetMucMomentumZ() const { return myMucMomentumZ ; }
00184
00185 TString GetMucVolumeName() const { return myMucVolumeName; }
00186 Int_t GetMucVolumeNumber() const {return myMucVolumeNumber; }
00187 Double_t GetMucPosSigmaAlongZ() const {return myMucPosSigmaAlongZ;}
00188 Double_t GetMucPosSigmaAlongT() const {return myMucPosSigmaAlongT;}
00189 Double_t GetMucPosSigmaAlongX() const {return myMucPosSigmaAlongX;}
00190 Double_t GetMucPosSigmaAlongY() const {return myMucPosSigmaAlongY;}
00191 Double_t GetMucErrorMatrix(Int_t i , Int_t j) const {
00192 return SimMat::get_element(myMucErrorMatrix,i,j); }
00193
00194
00195
00196
00197
00198
00199
00200
00201
00202
00203
00204
00205
00206
00207
00208
00209
00210
00211
00212 private:
00213
00214
00215 Int_t m_trackId;
00216
00217
00218 Double_t myTof1PositionX;
00219 Double_t myTof1PositionY;
00220 Double_t myTof1PositionZ;
00221 Double_t myTof1MomentumX;
00222 Double_t myTof1MomentumY;
00223 Double_t myTof1MomentumZ;
00224
00225 TString myTof1VolumeName;
00226 Int_t myTof1VolumeNumber;
00227 Double_t myTof1;
00228 Double_t myTof1Path;
00229 Double_t myTof1PosSigmaAlongZ;
00230 Double_t myTof1PosSigmaAlongT;
00231 Double_t myTof1PosSigmaAlongX;
00232 Double_t myTof1PosSigmaAlongY;
00233
00234 Double_t myTof1ErrorMatrix[21];
00235
00236
00237 Double_t myTof2PositionX;
00238 Double_t myTof2PositionY;
00239 Double_t myTof2PositionZ;
00240 Double_t myTof2MomentumX;
00241 Double_t myTof2MomentumY;
00242 Double_t myTof2MomentumZ;
00243
00244 TString myTof2VolumeName;
00245 Int_t myTof2VolumeNumber;
00246 Double_t myTof2;
00247 Double_t myTof2Path;
00248 Double_t myTof2PosSigmaAlongZ;
00249 Double_t myTof2PosSigmaAlongT;
00250 Double_t myTof2PosSigmaAlongX;
00251 Double_t myTof2PosSigmaAlongY;
00252
00253 Double_t myTof2ErrorMatrix[21];
00254
00255
00256 Double_t myEmcPositionX;
00257 Double_t myEmcPositionY;
00258 Double_t myEmcPositionZ;
00259 Double_t myEmcMomentumX;
00260 Double_t myEmcMomentumY;
00261 Double_t myEmcMomentumZ;
00262
00263 TString myEmcVolumeName;
00264 Int_t myEmcVolumeNumber;
00265 Double_t myEmcPosSigmaAlongTheta;
00266 Double_t myEmcPosSigmaAlongPhi;
00267
00268 Double_t myEmcErrorMatrix[21];
00269
00270 Double_t myEmcPath;
00271
00272
00273 Double_t myMucPositionX;
00274 Double_t myMucPositionY;
00275 Double_t myMucPositionZ;
00276 Double_t myMucMomentumX;
00277 Double_t myMucMomentumY;
00278 Double_t myMucMomentumZ;
00279
00280 TString myMucVolumeName;
00281 Int_t myMucVolumeNumber;
00282
00283 Double_t myMucPosSigmaAlongZ;
00284 Double_t myMucPosSigmaAlongT;
00285 Double_t myMucPosSigmaAlongX;
00286 Double_t myMucPosSigmaAlongY;
00287
00288 Double_t myMucErrorMatrix[21];
00289
00290
00291
00292
00293
00294
00295
00296
00297
00298
00299
00300
00301
00302
00303
00304
00305
00306
00307 ClassDef(TExtTrack,4)
00308 };
00309
00310 #endif