AliTPCdEdxInfo * GetTPCdEdxInfo()const{return fTPCdEdxInfo;}
Double_t GetTPCmomentum() const {return fTPCmomentum;}
- Int_t GetTRDnSlices() const {return fTRDnSlices;}
+ Int_t GetTRDnSlices() const {return fTRDnSlices/6;}
Double_t* GetTRDsignal() const {return fTRDslices;}
Double_t GetTRDChi2() const {return fTRDChi2;}
const Double_t* GetTRDmomentum() const {return fTRDmomentum;}
UChar_t fTPCsignalN; // number of points used for TPC dE/dx
Double32_t fTPCmomentum; //[0.,0.,20] momentum at the inner wall of TPC;
- Int_t fTRDnSlices; // N slices used for PID in the TRD
+ Int_t fTRDnSlices; // N slices used for PID in the TRD (as number of slices per tracklet * number of layers)
UChar_t fTRDntls; // number of tracklets used for PID calculation
UChar_t fTRDncls[6]; // number of clusters used for dE/dx calculation
Double32_t* fTRDslices; //[fTRDnSlices][0.,0.,10]
AliTPCdEdxInfo * dEdxInfo = track->GetTPCdEdxInfo();
if (dEdxInfo) SetTPCdEdxInfo(new AliTPCdEdxInfo(*dEdxInfo));
//
- int ntrdsl = track->GetNumberOfTRDslices()/6;
- if (ntrdsl>0) {
+ int ntrdsl = track->GetNumberOfTRDslices();
+ if (ntrdsl>0) {
SetNumberOfTRDslices((ntrdsl+2)*kTRDnPlanes);
- for (int isl=ntrdsl;isl--;) for (int ipl=kTRDnPlanes;ipl--;) SetTRDslice(track->GetTRDslice(ipl,isl),ipl,isl);
+ for (int ipl=kTRDnPlanes;ipl--;){
+ for (int isl=ntrdsl;isl--;) SetTRDslice(track->GetTRDslice(ipl,isl),ipl,isl);
+ Double_t sp, p = track->GetTRDmomentum(ipl, &sp);
+ SetTRDmomentum(p, ipl, &sp);
+ }
}
//
fTRDncls = track->GetTRDncls();