#include <TMath.h>
#include <TMatrixD.h>
#include <TMatrixDSym.h>
#include <TGeoMatrix.h>
#include <TMatrixDSymEigen.h>
#include "AliTrackPointArray.h"
ClassImp(AliTrackPointArray)
AliTrackPointArray::AliTrackPointArray() :
TObject(),
fSorted(kFALSE),
fNPoints(0),
fX(0),
fY(0),
fZ(0),
fCharge(0),
fDriftTime(0),
fChargeRatio(0),
fClusterType(0),
fIsExtra(0),
fSize(0),
fCov(0),
fVolumeID(0)
{
}
AliTrackPointArray::AliTrackPointArray(Int_t npoints):
TObject(),
fSorted(kFALSE),
fNPoints(npoints),
fX(new Float_t[npoints]),
fY(new Float_t[npoints]),
fZ(new Float_t[npoints]),
fCharge(new Float_t[npoints]),
fDriftTime(new Float_t[npoints]),
fChargeRatio(new Float_t[npoints]),
fClusterType(new Int_t[npoints]),
fIsExtra(new Bool_t[npoints]),
fSize(6*npoints),
fCov(new Float_t[fSize]),
fVolumeID(new UShort_t[npoints])
{
for (Int_t ip=0; ip<npoints;ip++){
fX[ip]=0;
fY[ip]=0;
fZ[ip]=0;
fCharge[ip]=0;
fDriftTime[ip]=0;
fChargeRatio[ip]=0;
fClusterType[ip]=0;
fIsExtra[ip]=kFALSE;
fVolumeID[ip]=0;
for (Int_t icov=0;icov<6; icov++)
fCov[6*ip+icov]=0;
}
}
AliTrackPointArray::AliTrackPointArray(const AliTrackPointArray &array):
TObject(array),
fSorted(array.fSorted),
fNPoints(array.fNPoints),
fX(new Float_t[fNPoints]),
fY(new Float_t[fNPoints]),
fZ(new Float_t[fNPoints]),
fCharge(new Float_t[fNPoints]),
fDriftTime(new Float_t[fNPoints]),
fChargeRatio(new Float_t[fNPoints]),
fClusterType(new Int_t[fNPoints]),
fIsExtra(new Bool_t[fNPoints]),
fSize(array.fSize),
fCov(new Float_t[fSize]),
fVolumeID(new UShort_t[fNPoints])
{
memcpy(fX,array.fX,fNPoints*sizeof(Float_t));
memcpy(fY,array.fY,fNPoints*sizeof(Float_t));
memcpy(fZ,array.fZ,fNPoints*sizeof(Float_t));
if (array.fCharge) {
memcpy(fCharge,array.fCharge,fNPoints*sizeof(Float_t));
} else {
memset(fCharge, 0, fNPoints*sizeof(Float_t));
}
if (array.fDriftTime) {
memcpy(fDriftTime,array.fDriftTime,fNPoints*sizeof(Float_t));
} else {
memset(fDriftTime, 0, fNPoints*sizeof(Float_t));
}
if (array.fChargeRatio) {
memcpy(fChargeRatio,array.fChargeRatio,fNPoints*sizeof(Float_t));
} else {
memset(fChargeRatio, 0, fNPoints*sizeof(Float_t));
}
if (array.fClusterType) {
memcpy(fClusterType,array.fClusterType,fNPoints*sizeof(Int_t));
} else {
memset(fClusterType, 0, fNPoints*sizeof(Int_t));
}
if (array.fIsExtra) {
memcpy(fIsExtra,array.fIsExtra,fNPoints*sizeof(Bool_t));
} else {
memset(fIsExtra, 0, fNPoints*sizeof(Bool_t));
}
memcpy(fVolumeID,array.fVolumeID,fNPoints*sizeof(UShort_t));
memcpy(fCov,array.fCov,fSize*sizeof(Float_t));
}
AliTrackPointArray &AliTrackPointArray::operator =(const AliTrackPointArray& array)
{
if(this==&array) return *this;
((TObject *)this)->operator=(array);
fSorted = array.fSorted;
fNPoints = array.fNPoints;
fSize = array.fSize;
delete [] fX;
fX = new Float_t[fNPoints];
delete [] fY;
fY = new Float_t[fNPoints];
delete [] fZ;
fZ = new Float_t[fNPoints];
delete [] fCharge;
fCharge = new Float_t[fNPoints];
delete [] fDriftTime;
fDriftTime = new Float_t[fNPoints];
delete [] fChargeRatio;
fChargeRatio = new Float_t[fNPoints];
delete [] fClusterType;
fClusterType = new Int_t[fNPoints];
delete [] fIsExtra;
fIsExtra = new Bool_t[fNPoints];
delete [] fVolumeID;
fVolumeID = new UShort_t[fNPoints];
delete [] fCov;
fCov = new Float_t[fSize];
memcpy(fX,array.fX,fNPoints*sizeof(Float_t));
memcpy(fY,array.fY,fNPoints*sizeof(Float_t));
memcpy(fZ,array.fZ,fNPoints*sizeof(Float_t));
memcpy(fCharge,array.fCharge,fNPoints*sizeof(Float_t));
memcpy(fDriftTime,array.fDriftTime,fNPoints*sizeof(Float_t));
memcpy(fChargeRatio,array.fChargeRatio,fNPoints*sizeof(Float_t));
memcpy(fClusterType,array.fClusterType,fNPoints*sizeof(Int_t));
memcpy(fIsExtra,array.fIsExtra,fNPoints*sizeof(Bool_t));
memcpy(fVolumeID,array.fVolumeID,fNPoints*sizeof(UShort_t));
memcpy(fCov,array.fCov,fSize*sizeof(Float_t));
return *this;
}
AliTrackPointArray::~AliTrackPointArray()
{
delete [] fX;
delete [] fY;
delete [] fZ;
delete [] fCharge;
delete [] fDriftTime;
delete [] fChargeRatio;
delete [] fClusterType;
delete [] fIsExtra;
delete [] fVolumeID;
delete [] fCov;
}
Bool_t AliTrackPointArray::AddPoint(Int_t i, const AliTrackPoint *p)
{
if (i >= fNPoints) return kFALSE;
fX[i] = p->GetX();
fY[i] = p->GetY();
fZ[i] = p->GetZ();
fCharge[i] = p->GetCharge();
fDriftTime[i] = p->GetDriftTime();
fChargeRatio[i]=p->GetChargeRatio();
fClusterType[i]=p->GetClusterType();
fIsExtra[i] = p->IsExtra();
fVolumeID[i] = p->GetVolumeID();
memcpy(&fCov[6*i],p->GetCov(),6*sizeof(Float_t));
return kTRUE;
}
Bool_t AliTrackPointArray::GetPoint(AliTrackPoint &p, Int_t i) const
{
if (i >= fNPoints) return kFALSE;
p.SetXYZ(fX[i],fY[i],fZ[i],&fCov[6*i]);
p.SetVolumeID(fVolumeID[i]);
p.SetCharge(fCharge ? fCharge[i] : 0);
p.SetDriftTime(fDriftTime ? fDriftTime[i] : 0);
p.SetChargeRatio(fChargeRatio ? fChargeRatio[i] : 0);
p.SetClusterType(fClusterType ? fClusterType[i] : 0);
p.SetExtra(fIsExtra ? fIsExtra[i] : kFALSE);
return kTRUE;
}
Bool_t AliTrackPointArray::HasVolumeID(UShort_t volid) const
{
Bool_t check = kFALSE;
for (Int_t ipoint = 0; ipoint < fNPoints; ipoint++)
if (fVolumeID[ipoint] == volid) check = kTRUE;
return check;
}
void AliTrackPointArray::Sort(Bool_t down)
{
if (fSorted) return;
Int_t *index=new Int_t[fNPoints];
AliTrackPointArray a(*this);
TMath::Sort(fNPoints,a.GetY(),index,down);
AliTrackPoint p;
for (Int_t i = 0; i < fNPoints; i++) {
a.GetPoint(p,index[i]);
AddPoint(i,&p);
}
delete[] index;
fSorted=kTRUE;
}
void AliTrackPointArray::Print(Option_t *) const
{
for (int i=0;i<fNPoints;i++) {
printf("#%3d VID %5d XYZ:%+9.3f/%+9.3f/%+9.3f |q: %+7.2f |DT: %+8.1f| ChR: %+.2e |Cl: %d %s\n",
i,fVolumeID[i],fX[i],fY[i],fZ[i],fCharge[i],fDriftTime[i],
fChargeRatio[i],fClusterType[i],fIsExtra[i] ? "|E":"");
}
}
ClassImp(AliTrackPoint)
AliTrackPoint::AliTrackPoint() :
TObject(),
fX(0),
fY(0),
fZ(0),
fCharge(0),
fDriftTime(0),
fChargeRatio(0),
fClusterType(0),
fIsExtra(kFALSE),
fVolumeID(0)
{
memset(fCov,0,6*sizeof(Float_t));
}
AliTrackPoint::AliTrackPoint(Float_t x, Float_t y, Float_t z, const Float_t *cov, UShort_t volid, Float_t charge, Float_t drifttime,Float_t chargeratio, Int_t clutyp) :
TObject(),
fX(0),
fY(0),
fZ(0),
fCharge(0),
fDriftTime(0),
fChargeRatio(0),
fClusterType(0),
fIsExtra(kFALSE),
fVolumeID(0)
{
SetXYZ(x,y,z,cov);
SetCharge(charge);
SetDriftTime(drifttime);
SetChargeRatio(chargeratio);
SetClusterType(clutyp);
SetVolumeID(volid);
}
AliTrackPoint::AliTrackPoint(const Float_t *xyz, const Float_t *cov, UShort_t volid, Float_t charge, Float_t drifttime,Float_t chargeratio, Int_t clutyp) :
TObject(),
fX(0),
fY(0),
fZ(0),
fCharge(0),
fDriftTime(0),
fChargeRatio(0),
fClusterType(0),
fIsExtra(kFALSE),
fVolumeID(0)
{
SetXYZ(xyz[0],xyz[1],xyz[2],cov);
SetCharge(charge);
SetDriftTime(drifttime);
SetChargeRatio(chargeratio);
SetVolumeID(volid);
SetClusterType(clutyp);
}
AliTrackPoint::AliTrackPoint(const AliTrackPoint &p):
TObject(p),
fX(0),
fY(0),
fZ(0),
fCharge(0),
fDriftTime(0),
fChargeRatio(0),
fClusterType(0),
fIsExtra(kFALSE),
fVolumeID(0)
{
SetXYZ(p.fX,p.fY,p.fZ,&(p.fCov[0]));
SetCharge(p.fCharge);
SetDriftTime(p.fDriftTime);
SetChargeRatio(p.fChargeRatio);
SetClusterType(p.fClusterType);
SetExtra(p.fIsExtra);
SetVolumeID(p.fVolumeID);
}
AliTrackPoint &AliTrackPoint::operator =(const AliTrackPoint& p)
{
if(this==&p) return *this;
((TObject *)this)->operator=(p);
SetXYZ(p.fX,p.fY,p.fZ,&(p.fCov[0]));
SetCharge(p.fCharge);
SetDriftTime(p.fDriftTime);
SetChargeRatio(p.fChargeRatio);
SetClusterType(p.fClusterType);
SetExtra(p.fIsExtra);
SetVolumeID(p.fVolumeID);
return *this;
}
void AliTrackPoint::SetXYZ(Float_t x, Float_t y, Float_t z, const Float_t *cov)
{
fX = x;
fY = y;
fZ = z;
if (cov)
memcpy(fCov,cov,6*sizeof(Float_t));
}
void AliTrackPoint::SetXYZ(const Float_t *xyz, const Float_t *cov)
{
SetXYZ(xyz[0],xyz[1],xyz[2],cov);
}
void AliTrackPoint::SetCov(const Float_t *cov)
{
if (cov)
memcpy(fCov,cov,6*sizeof(Float_t));
}
void AliTrackPoint::GetXYZ(Float_t *xyz, Float_t *cov) const
{
xyz[0] = fX;
xyz[1] = fY;
xyz[2] = fZ;
if (cov)
memcpy(cov,fCov,6*sizeof(Float_t));
}
Float_t AliTrackPoint::GetResidual(const AliTrackPoint &p, Bool_t weighted) const
{
Float_t res = 0;
if (!weighted) {
Float_t xyz[3],xyzp[3];
GetXYZ(xyz);
p.GetXYZ(xyzp);
res = (xyz[0]-xyzp[0])*(xyz[0]-xyzp[0])+
(xyz[1]-xyzp[1])*(xyz[1]-xyzp[1])+
(xyz[2]-xyzp[2])*(xyz[2]-xyzp[2]);
}
else {
Float_t xyz[3],xyzp[3];
Float_t cov[6],covp[6];
GetXYZ(xyz,cov);
TMatrixDSym mcov(3);
mcov(0,0) = cov[0]; mcov(0,1) = cov[1]; mcov(0,2) = cov[2];
mcov(1,0) = cov[1]; mcov(1,1) = cov[3]; mcov(1,2) = cov[4];
mcov(2,0) = cov[2]; mcov(2,1) = cov[4]; mcov(2,2) = cov[5];
p.GetXYZ(xyzp,covp);
TMatrixDSym mcovp(3);
mcovp(0,0) = covp[0]; mcovp(0,1) = covp[1]; mcovp(0,2) = covp[2];
mcovp(1,0) = covp[1]; mcovp(1,1) = covp[3]; mcovp(1,2) = covp[4];
mcovp(2,0) = covp[2]; mcovp(2,1) = covp[4]; mcovp(2,2) = covp[5];
TMatrixDSym msum = mcov + mcovp;
msum.Invert();
if (msum.IsValid()) {
for (Int_t i = 0; i < 3; i++)
for (Int_t j = 0; j < 3; j++)
res += (xyz[i]-xyzp[i])*(xyz[j]-xyzp[j])*msum(i,j);
}
}
return res;
}
Bool_t AliTrackPoint::GetPCA(const AliTrackPoint &p, AliTrackPoint &out) const
{
out.SetXYZ(0,0,0);
TMatrixD t(3,1);
t(0,0)=GetX();
t(1,0)=GetY();
t(2,0)=GetZ();
TMatrixDSym tC(3);
{
const Float_t *cv=GetCov();
tC(0,0)=cv[0]; tC(0,1)=cv[1]; tC(0,2)=cv[2];
tC(1,0)=cv[1]; tC(1,1)=cv[3]; tC(1,2)=cv[4];
tC(2,0)=cv[2]; tC(2,1)=cv[4]; tC(2,2)=cv[5];
}
TMatrixD m(3,1);
m(0,0)=p.GetX();
m(1,0)=p.GetY();
m(2,0)=p.GetZ();
TMatrixDSym mC(3);
{
const Float_t *cv=p.GetCov();
mC(0,0)=cv[0]; mC(0,1)=cv[1]; mC(0,2)=cv[2];
mC(1,0)=cv[1]; mC(1,1)=cv[3]; mC(1,2)=cv[4];
mC(2,0)=cv[2]; mC(2,1)=cv[4]; mC(2,2)=cv[5];
}
TMatrixDSym tmW(tC);
tmW+=mC;
tmW.Invert();
if (!tmW.IsValid()) return kFALSE;
TMatrixD mW(tC,TMatrixD::kMult,tmW);
TMatrixD tW(mC,TMatrixD::kMult,tmW);
TMatrixD mi(mW,TMatrixD::kMult,m);
TMatrixD ti(tW,TMatrixD::kMult,t);
ti+=mi;
TMatrixD iC(tC,TMatrixD::kMult,tmW);
iC*=mC;
out.SetXYZ(ti(0,0),ti(1,0),ti(2,0));
UShort_t id=p.GetVolumeID();
out.SetVolumeID(id);
return kTRUE;
}
Float_t AliTrackPoint::GetAngle() const
{
Float_t phi= TMath::ATan2(TMath::Sqrt(fCov[0]),TMath::Sqrt(fCov[3]));
if (fCov[1] > 0) {
phi = TMath::Pi() - phi;
if ((fY-fX) < 0) phi += TMath::Pi();
}
else {
if ((fX+fY) < 0) phi += TMath::Pi();
}
return phi;
}
Bool_t AliTrackPoint::GetRotMatrix(TGeoRotation& rot) const
{
TMatrixDSym mcov(3);
{
const Float_t *cov=GetCov();
mcov(0,0)=cov[0]; mcov(0,1)=cov[1]; mcov(0,2)=cov[2];
mcov(1,0)=cov[1]; mcov(1,1)=cov[3]; mcov(1,2)=cov[4];
mcov(2,0)=cov[2]; mcov(2,1)=cov[4]; mcov(2,2)=cov[5];
}
TMatrixDSymEigen eigen(mcov);
TMatrixD eigenMatrix = eigen.GetEigenVectors();
rot.SetMatrix(eigenMatrix.GetMatrixArray());
return kTRUE;
}
AliTrackPoint& AliTrackPoint::Rotate(Float_t alpha) const
{
static AliTrackPoint p;
p = *this;
Float_t xyz[3],cov[6];
GetXYZ(xyz,cov);
Float_t sin = TMath::Sin(alpha), cos = TMath::Cos(alpha);
Float_t newxyz[3],newcov[6];
newxyz[0] = cos*xyz[0] + sin*xyz[1];
newxyz[1] = cos*xyz[1] - sin*xyz[0];
newxyz[2] = xyz[2];
newcov[0] = cov[0]*cos*cos+
2*cov[1]*sin*cos+
cov[3]*sin*sin;
newcov[1] = cov[1]*(cos*cos-sin*sin)+
(cov[3]-cov[0])*sin*cos;
newcov[2] = cov[2]*cos+
cov[4]*sin;
newcov[3] = cov[0]*sin*sin-
2*cov[1]*sin*cos+
cov[3]*cos*cos;
newcov[4] = cov[4]*cos-
cov[2]*sin;
newcov[5] = cov[5];
p.SetXYZ(newxyz,newcov);
p.SetVolumeID(GetVolumeID());
return p;
}
AliTrackPoint& AliTrackPoint::MasterToLocal() const
{
Float_t alpha = GetAngle();
return Rotate(alpha);
}
void AliTrackPoint::Print(Option_t *) const
{
printf("VolumeID=%d\n", GetVolumeID());
printf("X = %12.6f Tx = %12.6f%12.6f%12.6f\n", fX, fCov[0], fCov[1], fCov[2]);
printf("Y = %12.6f Ty = %12.6f%12.6f%12.6f\n", fY, fCov[1], fCov[3], fCov[4]);
printf("Z = %12.6f Tz = %12.6f%12.6f%12.6f\n", fZ, fCov[2], fCov[4], fCov[5]);
printf("Charge = %f\n", fCharge);
printf("Drift Time = %f\n", fDriftTime);
printf("Charge Ratio = %f\n", fChargeRatio);
printf("Cluster Type = %d\n", fClusterType);
if(fIsExtra) printf("This is an extra point\n");
}
void AliTrackPoint::SetAlignCovMatrix(const TMatrixDSym& alignparmtrx){
TMatrixDSym cov(3);
TMatrixD coval(3,3);
TMatrixD jacob(3,6);
Float_t newcov[6];
cov(0,0)=fCov[0];
cov(1,0)=cov(0,1)=fCov[1];
cov(2,0)=cov(0,2)=fCov[2];
cov(1,1)=fCov[3];
cov(2,1)=cov(1,2)=fCov[4];
cov(2,2)=fCov[5];
jacob(0,0) = 1; jacob(1,0) = 0; jacob(2,0) = 0;
jacob(0,1) = 0; jacob(1,1) = 1; jacob(2,1) = 0;
jacob(0,2) = 0; jacob(1,2) = 0; jacob(2,2) = 1;
jacob(0,3) = 0; jacob(1,3) =-fZ; jacob(2,3) = fY;
jacob(0,4) = fZ; jacob(1,4) = 0; jacob(2,4) =-fX;
jacob(0,5) = -fY; jacob(1,5) = fX; jacob(2,5) = 0;
TMatrixD jacobT=jacob.T();jacob.T();
coval=jacob*alignparmtrx*jacobT+cov;
newcov[0]=coval(0,0);
newcov[1]=coval(1,0);
newcov[2]=coval(2,0);
newcov[3]=coval(1,1);
newcov[4]=coval(2,1);
newcov[5]=coval(2,2);
SetXYZ(fX,fY,fZ,newcov);
}
AliTrackPointArray.cxx:10 AliTrackPointArray.cxx:11 AliTrackPointArray.cxx:12 AliTrackPointArray.cxx:13 AliTrackPointArray.cxx:14 AliTrackPointArray.cxx:15 AliTrackPointArray.cxx:16 AliTrackPointArray.cxx:17 AliTrackPointArray.cxx:18 AliTrackPointArray.cxx:19 AliTrackPointArray.cxx:20 AliTrackPointArray.cxx:21 AliTrackPointArray.cxx:22 AliTrackPointArray.cxx:23 AliTrackPointArray.cxx:24 AliTrackPointArray.cxx:25 AliTrackPointArray.cxx:26 AliTrackPointArray.cxx:27 AliTrackPointArray.cxx:28 AliTrackPointArray.cxx:29 AliTrackPointArray.cxx:30 AliTrackPointArray.cxx:31 AliTrackPointArray.cxx:32 AliTrackPointArray.cxx:33 AliTrackPointArray.cxx:34 AliTrackPointArray.cxx:35 AliTrackPointArray.cxx:36 AliTrackPointArray.cxx:37 AliTrackPointArray.cxx:38 AliTrackPointArray.cxx:39 AliTrackPointArray.cxx:40 AliTrackPointArray.cxx:41 AliTrackPointArray.cxx:42 AliTrackPointArray.cxx:43 AliTrackPointArray.cxx:44 AliTrackPointArray.cxx:45 AliTrackPointArray.cxx:46 AliTrackPointArray.cxx:47 AliTrackPointArray.cxx:48 AliTrackPointArray.cxx:49 AliTrackPointArray.cxx:50 AliTrackPointArray.cxx:51 AliTrackPointArray.cxx:52 AliTrackPointArray.cxx:53 AliTrackPointArray.cxx:54 AliTrackPointArray.cxx:55 AliTrackPointArray.cxx:56 AliTrackPointArray.cxx:57 AliTrackPointArray.cxx:58 AliTrackPointArray.cxx:59 AliTrackPointArray.cxx:60 AliTrackPointArray.cxx:61 AliTrackPointArray.cxx:62 AliTrackPointArray.cxx:63 AliTrackPointArray.cxx:64 AliTrackPointArray.cxx:65 AliTrackPointArray.cxx:66 AliTrackPointArray.cxx:67 AliTrackPointArray.cxx:68 AliTrackPointArray.cxx:69 AliTrackPointArray.cxx:70 AliTrackPointArray.cxx:71 AliTrackPointArray.cxx:72 AliTrackPointArray.cxx:73 AliTrackPointArray.cxx:74 AliTrackPointArray.cxx:75 AliTrackPointArray.cxx:76 AliTrackPointArray.cxx:77 AliTrackPointArray.cxx:78 AliTrackPointArray.cxx:79 AliTrackPointArray.cxx:80 AliTrackPointArray.cxx:81 AliTrackPointArray.cxx:82 AliTrackPointArray.cxx:83 AliTrackPointArray.cxx:84 AliTrackPointArray.cxx:85 AliTrackPointArray.cxx:86 AliTrackPointArray.cxx:87 AliTrackPointArray.cxx:88 AliTrackPointArray.cxx:89 AliTrackPointArray.cxx:90 AliTrackPointArray.cxx:91 AliTrackPointArray.cxx:92 AliTrackPointArray.cxx:93 AliTrackPointArray.cxx:94 AliTrackPointArray.cxx:95 AliTrackPointArray.cxx:96 AliTrackPointArray.cxx:97 AliTrackPointArray.cxx:98 AliTrackPointArray.cxx:99 AliTrackPointArray.cxx:100 AliTrackPointArray.cxx:101 AliTrackPointArray.cxx:102 AliTrackPointArray.cxx:103 AliTrackPointArray.cxx:104 AliTrackPointArray.cxx:105 AliTrackPointArray.cxx:106 AliTrackPointArray.cxx:107 AliTrackPointArray.cxx:108 AliTrackPointArray.cxx:109 AliTrackPointArray.cxx:110 AliTrackPointArray.cxx:111 AliTrackPointArray.cxx:112 AliTrackPointArray.cxx:113 AliTrackPointArray.cxx:114 AliTrackPointArray.cxx:115 AliTrackPointArray.cxx:116 AliTrackPointArray.cxx:117 AliTrackPointArray.cxx:118 AliTrackPointArray.cxx:119 AliTrackPointArray.cxx:120 AliTrackPointArray.cxx:121 AliTrackPointArray.cxx:122 AliTrackPointArray.cxx:123 AliTrackPointArray.cxx:124 AliTrackPointArray.cxx:125 AliTrackPointArray.cxx:126 AliTrackPointArray.cxx:127 AliTrackPointArray.cxx:128 AliTrackPointArray.cxx:129 AliTrackPointArray.cxx:130 AliTrackPointArray.cxx:131 AliTrackPointArray.cxx:132 AliTrackPointArray.cxx:133 AliTrackPointArray.cxx:134 AliTrackPointArray.cxx:135 AliTrackPointArray.cxx:136 AliTrackPointArray.cxx:137 AliTrackPointArray.cxx:138 AliTrackPointArray.cxx:139 AliTrackPointArray.cxx:140 AliTrackPointArray.cxx:141 AliTrackPointArray.cxx:142 AliTrackPointArray.cxx:143 AliTrackPointArray.cxx:144 AliTrackPointArray.cxx:145 AliTrackPointArray.cxx:146 AliTrackPointArray.cxx:147 AliTrackPointArray.cxx:148 AliTrackPointArray.cxx:149 AliTrackPointArray.cxx:150 AliTrackPointArray.cxx:151 AliTrackPointArray.cxx:152 AliTrackPointArray.cxx:153 AliTrackPointArray.cxx:154 AliTrackPointArray.cxx:155 AliTrackPointArray.cxx:156 AliTrackPointArray.cxx:157 AliTrackPointArray.cxx:158 AliTrackPointArray.cxx:159 AliTrackPointArray.cxx:160 AliTrackPointArray.cxx:161 AliTrackPointArray.cxx:162 AliTrackPointArray.cxx:163 AliTrackPointArray.cxx:164 AliTrackPointArray.cxx:165 AliTrackPointArray.cxx:166 AliTrackPointArray.cxx:167 AliTrackPointArray.cxx:168 AliTrackPointArray.cxx:169 AliTrackPointArray.cxx:170 AliTrackPointArray.cxx:171 AliTrackPointArray.cxx:172 AliTrackPointArray.cxx:173 AliTrackPointArray.cxx:174 AliTrackPointArray.cxx:175 AliTrackPointArray.cxx:176 AliTrackPointArray.cxx:177 AliTrackPointArray.cxx:178 AliTrackPointArray.cxx:179 AliTrackPointArray.cxx:180 AliTrackPointArray.cxx:181 AliTrackPointArray.cxx:182 AliTrackPointArray.cxx:183 AliTrackPointArray.cxx:184 AliTrackPointArray.cxx:185 AliTrackPointArray.cxx:186 AliTrackPointArray.cxx:187 AliTrackPointArray.cxx:188 AliTrackPointArray.cxx:189 AliTrackPointArray.cxx:190 AliTrackPointArray.cxx:191 AliTrackPointArray.cxx:192 AliTrackPointArray.cxx:193 AliTrackPointArray.cxx:194 AliTrackPointArray.cxx:195 AliTrackPointArray.cxx:196 AliTrackPointArray.cxx:197 AliTrackPointArray.cxx:198 AliTrackPointArray.cxx:199 AliTrackPointArray.cxx:200 AliTrackPointArray.cxx:201 AliTrackPointArray.cxx:202 AliTrackPointArray.cxx:203 AliTrackPointArray.cxx:204 AliTrackPointArray.cxx:205 AliTrackPointArray.cxx:206 AliTrackPointArray.cxx:207 AliTrackPointArray.cxx:208 AliTrackPointArray.cxx:209 AliTrackPointArray.cxx:210 AliTrackPointArray.cxx:211 AliTrackPointArray.cxx:212 AliTrackPointArray.cxx:213 AliTrackPointArray.cxx:214 AliTrackPointArray.cxx:215 AliTrackPointArray.cxx:216 AliTrackPointArray.cxx:217 AliTrackPointArray.cxx:218 AliTrackPointArray.cxx:219 AliTrackPointArray.cxx:220 AliTrackPointArray.cxx:221 AliTrackPointArray.cxx:222 AliTrackPointArray.cxx:223 AliTrackPointArray.cxx:224 AliTrackPointArray.cxx:225 AliTrackPointArray.cxx:226 AliTrackPointArray.cxx:227 AliTrackPointArray.cxx:228 AliTrackPointArray.cxx:229 AliTrackPointArray.cxx:230 AliTrackPointArray.cxx:231 AliTrackPointArray.cxx:232 AliTrackPointArray.cxx:233 AliTrackPointArray.cxx:234 AliTrackPointArray.cxx:235 AliTrackPointArray.cxx:236 AliTrackPointArray.cxx:237 AliTrackPointArray.cxx:238 AliTrackPointArray.cxx:239 AliTrackPointArray.cxx:240 AliTrackPointArray.cxx:241 AliTrackPointArray.cxx:242 AliTrackPointArray.cxx:243 AliTrackPointArray.cxx:244 AliTrackPointArray.cxx:245 AliTrackPointArray.cxx:246 AliTrackPointArray.cxx:247 AliTrackPointArray.cxx:248 AliTrackPointArray.cxx:249 AliTrackPointArray.cxx:250 AliTrackPointArray.cxx:251 AliTrackPointArray.cxx:252 AliTrackPointArray.cxx:253 AliTrackPointArray.cxx:254 AliTrackPointArray.cxx:255 AliTrackPointArray.cxx:256 AliTrackPointArray.cxx:257 AliTrackPointArray.cxx:258 AliTrackPointArray.cxx:259 AliTrackPointArray.cxx:260 AliTrackPointArray.cxx:261 AliTrackPointArray.cxx:262 AliTrackPointArray.cxx:263 AliTrackPointArray.cxx:264 AliTrackPointArray.cxx:265 AliTrackPointArray.cxx:266 AliTrackPointArray.cxx:267 AliTrackPointArray.cxx:268 AliTrackPointArray.cxx:269 AliTrackPointArray.cxx:270 AliTrackPointArray.cxx:271 AliTrackPointArray.cxx:272 AliTrackPointArray.cxx:273 AliTrackPointArray.cxx:274 AliTrackPointArray.cxx:275 AliTrackPointArray.cxx:276 AliTrackPointArray.cxx:277 AliTrackPointArray.cxx:278 AliTrackPointArray.cxx:279 AliTrackPointArray.cxx:280 AliTrackPointArray.cxx:281 AliTrackPointArray.cxx:282 AliTrackPointArray.cxx:283 AliTrackPointArray.cxx:284 AliTrackPointArray.cxx:285 AliTrackPointArray.cxx:286 AliTrackPointArray.cxx:287 AliTrackPointArray.cxx:288 AliTrackPointArray.cxx:289 AliTrackPointArray.cxx:290 AliTrackPointArray.cxx:291 AliTrackPointArray.cxx:292 AliTrackPointArray.cxx:293 AliTrackPointArray.cxx:294 AliTrackPointArray.cxx:295 AliTrackPointArray.cxx:296 AliTrackPointArray.cxx:297 AliTrackPointArray.cxx:298 AliTrackPointArray.cxx:299 AliTrackPointArray.cxx:300 AliTrackPointArray.cxx:301 AliTrackPointArray.cxx:302 AliTrackPointArray.cxx:303 AliTrackPointArray.cxx:304 AliTrackPointArray.cxx:305 AliTrackPointArray.cxx:306 AliTrackPointArray.cxx:307 AliTrackPointArray.cxx:308 AliTrackPointArray.cxx:309 AliTrackPointArray.cxx:310 AliTrackPointArray.cxx:311 AliTrackPointArray.cxx:312 AliTrackPointArray.cxx:313 AliTrackPointArray.cxx:314 AliTrackPointArray.cxx:315 AliTrackPointArray.cxx:316 AliTrackPointArray.cxx:317 AliTrackPointArray.cxx:318 AliTrackPointArray.cxx:319 AliTrackPointArray.cxx:320 AliTrackPointArray.cxx:321 AliTrackPointArray.cxx:322 AliTrackPointArray.cxx:323 AliTrackPointArray.cxx:324 AliTrackPointArray.cxx:325 AliTrackPointArray.cxx:326 AliTrackPointArray.cxx:327 AliTrackPointArray.cxx:328 AliTrackPointArray.cxx:329 AliTrackPointArray.cxx:330 AliTrackPointArray.cxx:331 AliTrackPointArray.cxx:332 AliTrackPointArray.cxx:333 AliTrackPointArray.cxx:334 AliTrackPointArray.cxx:335 AliTrackPointArray.cxx:336 AliTrackPointArray.cxx:337 AliTrackPointArray.cxx:338 AliTrackPointArray.cxx:339 AliTrackPointArray.cxx:340 AliTrackPointArray.cxx:341 AliTrackPointArray.cxx:342 AliTrackPointArray.cxx:343 AliTrackPointArray.cxx:344 AliTrackPointArray.cxx:345 AliTrackPointArray.cxx:346 AliTrackPointArray.cxx:347 AliTrackPointArray.cxx:348 AliTrackPointArray.cxx:349 AliTrackPointArray.cxx:350 AliTrackPointArray.cxx:351 AliTrackPointArray.cxx:352 AliTrackPointArray.cxx:353 AliTrackPointArray.cxx:354 AliTrackPointArray.cxx:355 AliTrackPointArray.cxx:356 AliTrackPointArray.cxx:357 AliTrackPointArray.cxx:358 AliTrackPointArray.cxx:359 AliTrackPointArray.cxx:360 AliTrackPointArray.cxx:361 AliTrackPointArray.cxx:362 AliTrackPointArray.cxx:363 AliTrackPointArray.cxx:364 AliTrackPointArray.cxx:365 AliTrackPointArray.cxx:366 AliTrackPointArray.cxx:367 AliTrackPointArray.cxx:368 AliTrackPointArray.cxx:369 AliTrackPointArray.cxx:370 AliTrackPointArray.cxx:371 AliTrackPointArray.cxx:372 AliTrackPointArray.cxx:373 AliTrackPointArray.cxx:374 AliTrackPointArray.cxx:375 AliTrackPointArray.cxx:376 AliTrackPointArray.cxx:377 AliTrackPointArray.cxx:378 AliTrackPointArray.cxx:379 AliTrackPointArray.cxx:380 AliTrackPointArray.cxx:381 AliTrackPointArray.cxx:382 AliTrackPointArray.cxx:383 AliTrackPointArray.cxx:384 AliTrackPointArray.cxx:385 AliTrackPointArray.cxx:386 AliTrackPointArray.cxx:387 AliTrackPointArray.cxx:388 AliTrackPointArray.cxx:389 AliTrackPointArray.cxx:390 AliTrackPointArray.cxx:391 AliTrackPointArray.cxx:392 AliTrackPointArray.cxx:393 AliTrackPointArray.cxx:394 AliTrackPointArray.cxx:395 AliTrackPointArray.cxx:396 AliTrackPointArray.cxx:397 AliTrackPointArray.cxx:398 AliTrackPointArray.cxx:399 AliTrackPointArray.cxx:400 AliTrackPointArray.cxx:401 AliTrackPointArray.cxx:402 AliTrackPointArray.cxx:403 AliTrackPointArray.cxx:404 AliTrackPointArray.cxx:405 AliTrackPointArray.cxx:406 AliTrackPointArray.cxx:407 AliTrackPointArray.cxx:408 AliTrackPointArray.cxx:409 AliTrackPointArray.cxx:410 AliTrackPointArray.cxx:411 AliTrackPointArray.cxx:412 AliTrackPointArray.cxx:413 AliTrackPointArray.cxx:414 AliTrackPointArray.cxx:415 AliTrackPointArray.cxx:416 AliTrackPointArray.cxx:417 AliTrackPointArray.cxx:418 AliTrackPointArray.cxx:419 AliTrackPointArray.cxx:420 AliTrackPointArray.cxx:421 AliTrackPointArray.cxx:422 AliTrackPointArray.cxx:423 AliTrackPointArray.cxx:424 AliTrackPointArray.cxx:425 AliTrackPointArray.cxx:426 AliTrackPointArray.cxx:427 AliTrackPointArray.cxx:428 AliTrackPointArray.cxx:429 AliTrackPointArray.cxx:430 AliTrackPointArray.cxx:431 AliTrackPointArray.cxx:432 AliTrackPointArray.cxx:433 AliTrackPointArray.cxx:434 AliTrackPointArray.cxx:435 AliTrackPointArray.cxx:436 AliTrackPointArray.cxx:437 AliTrackPointArray.cxx:438 AliTrackPointArray.cxx:439 AliTrackPointArray.cxx:440 AliTrackPointArray.cxx:441 AliTrackPointArray.cxx:442 AliTrackPointArray.cxx:443 AliTrackPointArray.cxx:444 AliTrackPointArray.cxx:445 AliTrackPointArray.cxx:446 AliTrackPointArray.cxx:447 AliTrackPointArray.cxx:448 AliTrackPointArray.cxx:449 AliTrackPointArray.cxx:450 AliTrackPointArray.cxx:451 AliTrackPointArray.cxx:452 AliTrackPointArray.cxx:453 AliTrackPointArray.cxx:454 AliTrackPointArray.cxx:455 AliTrackPointArray.cxx:456 AliTrackPointArray.cxx:457 AliTrackPointArray.cxx:458 AliTrackPointArray.cxx:459 AliTrackPointArray.cxx:460 AliTrackPointArray.cxx:461 AliTrackPointArray.cxx:462 AliTrackPointArray.cxx:463 AliTrackPointArray.cxx:464 AliTrackPointArray.cxx:465 AliTrackPointArray.cxx:466 AliTrackPointArray.cxx:467 AliTrackPointArray.cxx:468 AliTrackPointArray.cxx:469 AliTrackPointArray.cxx:470 AliTrackPointArray.cxx:471 AliTrackPointArray.cxx:472 AliTrackPointArray.cxx:473 AliTrackPointArray.cxx:474 AliTrackPointArray.cxx:475 AliTrackPointArray.cxx:476 AliTrackPointArray.cxx:477 AliTrackPointArray.cxx:478 AliTrackPointArray.cxx:479 AliTrackPointArray.cxx:480 AliTrackPointArray.cxx:481 AliTrackPointArray.cxx:482 AliTrackPointArray.cxx:483 AliTrackPointArray.cxx:484 AliTrackPointArray.cxx:485 AliTrackPointArray.cxx:486 AliTrackPointArray.cxx:487 AliTrackPointArray.cxx:488 AliTrackPointArray.cxx:489 AliTrackPointArray.cxx:490 AliTrackPointArray.cxx:491 AliTrackPointArray.cxx:492 AliTrackPointArray.cxx:493 AliTrackPointArray.cxx:494 AliTrackPointArray.cxx:495 AliTrackPointArray.cxx:496 AliTrackPointArray.cxx:497 AliTrackPointArray.cxx:498 AliTrackPointArray.cxx:499 AliTrackPointArray.cxx:500 AliTrackPointArray.cxx:501 AliTrackPointArray.cxx:502 AliTrackPointArray.cxx:503 AliTrackPointArray.cxx:504 AliTrackPointArray.cxx:505 AliTrackPointArray.cxx:506 AliTrackPointArray.cxx:507 AliTrackPointArray.cxx:508 AliTrackPointArray.cxx:509 AliTrackPointArray.cxx:510 AliTrackPointArray.cxx:511 AliTrackPointArray.cxx:512 AliTrackPointArray.cxx:513 AliTrackPointArray.cxx:514 AliTrackPointArray.cxx:515 AliTrackPointArray.cxx:516 AliTrackPointArray.cxx:517 AliTrackPointArray.cxx:518 AliTrackPointArray.cxx:519 AliTrackPointArray.cxx:520 AliTrackPointArray.cxx:521 AliTrackPointArray.cxx:522 AliTrackPointArray.cxx:523 AliTrackPointArray.cxx:524 AliTrackPointArray.cxx:525 AliTrackPointArray.cxx:526 AliTrackPointArray.cxx:527 AliTrackPointArray.cxx:528 AliTrackPointArray.cxx:529 AliTrackPointArray.cxx:530 AliTrackPointArray.cxx:531 AliTrackPointArray.cxx:532 AliTrackPointArray.cxx:533 AliTrackPointArray.cxx:534 AliTrackPointArray.cxx:535 AliTrackPointArray.cxx:536 AliTrackPointArray.cxx:537 AliTrackPointArray.cxx:538 AliTrackPointArray.cxx:539 AliTrackPointArray.cxx:540 AliTrackPointArray.cxx:541 AliTrackPointArray.cxx:542 AliTrackPointArray.cxx:543 AliTrackPointArray.cxx:544 AliTrackPointArray.cxx:545 AliTrackPointArray.cxx:546 AliTrackPointArray.cxx:547 AliTrackPointArray.cxx:548 AliTrackPointArray.cxx:549 AliTrackPointArray.cxx:550 AliTrackPointArray.cxx:551 AliTrackPointArray.cxx:552 AliTrackPointArray.cxx:553 AliTrackPointArray.cxx:554 AliTrackPointArray.cxx:555 AliTrackPointArray.cxx:556 AliTrackPointArray.cxx:557 AliTrackPointArray.cxx:558 AliTrackPointArray.cxx:559 AliTrackPointArray.cxx:560 AliTrackPointArray.cxx:561 AliTrackPointArray.cxx:562 AliTrackPointArray.cxx:563 AliTrackPointArray.cxx:564 AliTrackPointArray.cxx:565 AliTrackPointArray.cxx:566 AliTrackPointArray.cxx:567 AliTrackPointArray.cxx:568 AliTrackPointArray.cxx:569 AliTrackPointArray.cxx:570 AliTrackPointArray.cxx:571 AliTrackPointArray.cxx:572 AliTrackPointArray.cxx:573 AliTrackPointArray.cxx:574 AliTrackPointArray.cxx:575 AliTrackPointArray.cxx:576 AliTrackPointArray.cxx:577 AliTrackPointArray.cxx:578 AliTrackPointArray.cxx:579 AliTrackPointArray.cxx:580 AliTrackPointArray.cxx:581 AliTrackPointArray.cxx:582 AliTrackPointArray.cxx:583 AliTrackPointArray.cxx:584 AliTrackPointArray.cxx:585 AliTrackPointArray.cxx:586 AliTrackPointArray.cxx:587 AliTrackPointArray.cxx:588 AliTrackPointArray.cxx:589 AliTrackPointArray.cxx:590 AliTrackPointArray.cxx:591 AliTrackPointArray.cxx:592 AliTrackPointArray.cxx:593 AliTrackPointArray.cxx:594 AliTrackPointArray.cxx:595 AliTrackPointArray.cxx:596 AliTrackPointArray.cxx:597 AliTrackPointArray.cxx:598 AliTrackPointArray.cxx:599 AliTrackPointArray.cxx:600 AliTrackPointArray.cxx:601 AliTrackPointArray.cxx:602 AliTrackPointArray.cxx:603 AliTrackPointArray.cxx:604 AliTrackPointArray.cxx:605 AliTrackPointArray.cxx:606 AliTrackPointArray.cxx:607 AliTrackPointArray.cxx:608 AliTrackPointArray.cxx:609 AliTrackPointArray.cxx:610 AliTrackPointArray.cxx:611 AliTrackPointArray.cxx:612 AliTrackPointArray.cxx:613 AliTrackPointArray.cxx:614 AliTrackPointArray.cxx:615 AliTrackPointArray.cxx:616 AliTrackPointArray.cxx:617 AliTrackPointArray.cxx:618 AliTrackPointArray.cxx:619 AliTrackPointArray.cxx:620 AliTrackPointArray.cxx:621 AliTrackPointArray.cxx:622 AliTrackPointArray.cxx:623 AliTrackPointArray.cxx:624 AliTrackPointArray.cxx:625 AliTrackPointArray.cxx:626 AliTrackPointArray.cxx:627 AliTrackPointArray.cxx:628 AliTrackPointArray.cxx:629 AliTrackPointArray.cxx:630 AliTrackPointArray.cxx:631 AliTrackPointArray.cxx:632 AliTrackPointArray.cxx:633 AliTrackPointArray.cxx:634 AliTrackPointArray.cxx:635 AliTrackPointArray.cxx:636 AliTrackPointArray.cxx:637 AliTrackPointArray.cxx:638 AliTrackPointArray.cxx:639 AliTrackPointArray.cxx:640 AliTrackPointArray.cxx:641 AliTrackPointArray.cxx:642 AliTrackPointArray.cxx:643 AliTrackPointArray.cxx:644 AliTrackPointArray.cxx:645 AliTrackPointArray.cxx:646 AliTrackPointArray.cxx:647 AliTrackPointArray.cxx:648 AliTrackPointArray.cxx:649 AliTrackPointArray.cxx:650 AliTrackPointArray.cxx:651 AliTrackPointArray.cxx:652 AliTrackPointArray.cxx:653 AliTrackPointArray.cxx:654 AliTrackPointArray.cxx:655 AliTrackPointArray.cxx:656 AliTrackPointArray.cxx:657 AliTrackPointArray.cxx:658 AliTrackPointArray.cxx:659 AliTrackPointArray.cxx:660 AliTrackPointArray.cxx:661 AliTrackPointArray.cxx:662 AliTrackPointArray.cxx:663 AliTrackPointArray.cxx:664 AliTrackPointArray.cxx:665 AliTrackPointArray.cxx:666 AliTrackPointArray.cxx:667 AliTrackPointArray.cxx:668 AliTrackPointArray.cxx:669 AliTrackPointArray.cxx:670 AliTrackPointArray.cxx:671 AliTrackPointArray.cxx:672 AliTrackPointArray.cxx:673 AliTrackPointArray.cxx:674 AliTrackPointArray.cxx:675 AliTrackPointArray.cxx:676 AliTrackPointArray.cxx:677 AliTrackPointArray.cxx:678 AliTrackPointArray.cxx:679 AliTrackPointArray.cxx:680 AliTrackPointArray.cxx:681 AliTrackPointArray.cxx:682 AliTrackPointArray.cxx:683 AliTrackPointArray.cxx:684 AliTrackPointArray.cxx:685 AliTrackPointArray.cxx:686 AliTrackPointArray.cxx:687 AliTrackPointArray.cxx:688 AliTrackPointArray.cxx:689 AliTrackPointArray.cxx:690 AliTrackPointArray.cxx:691 AliTrackPointArray.cxx:692 AliTrackPointArray.cxx:693 AliTrackPointArray.cxx:694 AliTrackPointArray.cxx:695 AliTrackPointArray.cxx:696 AliTrackPointArray.cxx:697 AliTrackPointArray.cxx:698