- fgArrLaserTracks = new TObjArray(fgkNLaserTracks);
- for (Int_t itrack=0; itrack<fgkNLaserTracks; itrack++){
- AliTPCLaserTrack *ltr = (AliTPCLaserTrack*)arrLaserTracks->At(itrack);
- if ( !ltr ){
-// AliWarning(Form("No informatino found for Track %d!",itrack));
- continue;
- }
- fgArrLaserTracks->AddAt(new AliTPCLaserTrack(*ltr),itrack);
+ delete arrLaserTracks;
+}
+
+
+void AliTPCLaserTrack::UpdatePoints(){
+ //
+ // update track points
+ //
+ const Double_t kMaxSnp=0.97;
+ AliTPCROC* roc = AliTPCROC::Instance();
+ //
+ //
+ if (!fVecSec){
+ fVecSec=new TVectorD(159);
+ fVecP2 =new TVectorD(159); // - P2
+ fVecPhi=new TVectorD(159); // - Phi
+ fVecGX=new TVectorD(159); // points vectors - globalX
+ fVecGY=new TVectorD(159); // points vectors - globalY
+ fVecGZ=new TVectorD(159); // points vectors - globalZ
+ fVecLX=new TVectorD(159); // points vectors - localX
+ fVecLY=new TVectorD(159); // points vectors - localY
+ fVecLZ=new TVectorD(159); // points vectors - localZ
+
+ }
+ for (Int_t irow=158; irow>=0; irow--){
+ (*fVecSec)[irow]= -1; // -
+ (*fVecP2)[irow] = 0; // - P2 -snp
+ (*fVecPhi)[irow]= 0; // - global phi
+ (*fVecGX)[irow] = 0; // points vectors - globalX
+ (*fVecGY)[irow] = 0; // points vectors - globalY
+ (*fVecGZ)[irow] = 0; // points vectors - globalZ
+ (*fVecLX)[irow] = 0; // points vectors - localX
+ (*fVecLY)[irow] = 0; // points vectors - localY
+ (*fVecLZ)[irow] = 0; // points vectors - localZ
+
+ }
+ Double_t gxyz[3];
+ Double_t lxyz[3];
+ AliTPCLaserTrack*ltrp=new AliTPCLaserTrack(*this); //make temporary track
+
+ for (Int_t irow=158; irow>=0; irow--){
+ UInt_t srow = irow;
+ Int_t sector=0;
+
+ if (srow >=roc->GetNRows(0)) {
+ srow-=roc->GetNRows(0);
+ sector=36 ;