+ for (i=0; i<5; i++) {
+ fRp[i]=fCp[i]=fIp[i]=fTp[i]=0.;
+ }
+ for (i=0; i<15; i++) {
+ fRc[i]=fCc[i]=fIc[i]=fTc[i]=0.;
+ }
+ for (i=0; i<6; i++) { fITSindex[i]=0; }
+ for (i=0; i<180; i++){ fTPCindex[i]=0; }
+ for (i=0; i<3;i++) { fKinkIndexes[i]=0;}
+ for (i=0; i<3;i++) { fV0Indexes[i]=-1;}
+ for (i=0; i<130; i++) { fTRDindex[i]=0; }
+ for (i=0;i<kNPlane;i++) {fTRDsignals[i]=0.; fTRDTimBin[i]=-1;}
+ for (Int_t i=0;i<4;i++) {fTPCPoints[i]=-1;}
+ for (Int_t i=0;i<3;i++) {fTOFLabel[i]=-1;}
+ for (Int_t i=0;i<10;i++) {fTOFInfo[i]=-1;}
+ fTPCLabel = 0;
+ fTRDLabel = 0;
+ fTRDQuality =0;
+ fTRDBudget =0;
+ fITSLabel = 0;
+ fITStrack = 0;
+ fTRDtrack = 0;
+}
+
+//_______________________________________________________________________
+AliESDtrack::AliESDtrack(const AliESDtrack& track):
+ TObject(track),
+ fFlags(track.fFlags),
+ fLabel(track.fLabel),
+ fID(track.fID),
+ fTrackLength(track.fTrackLength),
+ fD(track.fD),
+ fZ(track.fZ),
+ fStopVertex(track.fStopVertex),
+ fRalpha(track.fRalpha),
+ fRx(track.fRx),
+ fCalpha(track.fCalpha),
+ fCx(track.fCx),
+ fCchi2(track.fCchi2),
+ fIalpha(track.fIalpha),
+ fIx(track.fIx),
+ fTalpha(track.fTalpha),
+ fTx(track.fTx),
+ fITSchi2(track.fITSchi2),
+ fITSncls(track.fITSncls),
+ fITSsignal(track.fITSsignal),
+ fITSLabel(track.fITSLabel),
+ fITSFakeRatio(track.fITSFakeRatio),
+ fITStrack(0), //coping separatelly - in user code
+ fTPCchi2(track.fTPCchi2),
+ fTPCncls(track.fTPCncls),
+ fTPCClusterMap(track.fTPCClusterMap),
+ fTPCsignal(track.fTPCsignal),
+ fTPCLabel(track.fTPCLabel),
+ fTRDchi2(track.fTRDchi2),
+ fTRDncls(track.fTRDncls),
+ fTRDncls0(track.fTRDncls0),
+ fTRDsignal(track.fTRDsignal),
+ fTRDLabel(track.fTRDLabel),
+ fTRDQuality(track.fTRDQuality),
+ fTRDBudget(track.fTRDBudget),
+ fTRDtrack(0),
+ fTOFchi2(track.fTOFchi2),
+ fTOFindex(track.fTOFindex),
+ fTOFsignal(track.fTOFsignal),
+ fPHOSsignal(track.fPHOSsignal),
+ fEMCALsignal(track.fEMCALsignal),
+ fRICHchi2(track.fRICHchi2),
+ fRICHncls(track.fRICHncls),
+ fRICHindex(track.fRICHindex),
+ fRICHsignal(track.fRICHsignal),
+ fRICHtheta(track.fRICHtheta),
+ fRICHphi(track.fRICHphi),
+ fRICHdx(track.fRICHdx),
+ fRICHdy(track.fRICHdy),
+ fPoints(track.fPoints)
+{
+ //
+ //copy constructor
+ //
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fTrackTime[i] =track.fTrackTime[i];
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fR[i] =track.fR[i];
+ //
+ for (Int_t i=0;i<5;i++) fRp[i] =track.fRp[i];
+ for (Int_t i=0;i<15;i++) fRc[i] =track.fRc[i];
+ //
+ for (Int_t i=0;i<5;i++) fCp[i] =track.fCp[i];
+ for (Int_t i=0;i<15;i++) fCc[i] =track.fCc[i];
+ //
+ for (Int_t i=0;i<5;i++) fIp[i] =track.fIp[i];
+ for (Int_t i=0;i<15;i++) fIc[i] =track.fIc[i];
+ //
+ for (Int_t i=0;i<5;i++) fTp[i] =track.fTp[i];
+ for (Int_t i=0;i<15;i++) fTc[i] =track.fTc[i];
+ //
+ for (Int_t i=0;i<12;i++) fITSchi2MIP[i] =track.fITSchi2MIP[i];
+ for (Int_t i=0;i<6;i++) fITSindex[i]=track.fITSindex[i];
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fITSr[i]=track.fITSr[i];
+ //
+ for (Int_t i=0;i<180;i++) fTPCindex[i]=track.fTPCindex[i];
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fTPCr[i]=track.fTPCr[i];
+ for (Int_t i=0;i<4;i++) {fTPCPoints[i]=track.fTPCPoints[i];}
+ for (Int_t i=0; i<3;i++) { fKinkIndexes[i]=track.fKinkIndexes[i];}
+ for (Int_t i=0; i<3;i++) { fV0Indexes[i]=track.fV0Indexes[i];}
+ //
+ for (Int_t i=0;i<130;i++) fTRDindex[i]=track.fTRDindex[i];
+ for (Int_t i=0;i<kNPlane;i++) {
+ fTRDsignals[i]=track.fTRDsignals[i];
+ fTRDTimBin[i]=track.fTRDTimBin[i];
+ }
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fTRDr[i]=track.fTRDr[i];
+ //
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fTOFr[i]=track.fTOFr[i];
+ for (Int_t i=0;i<3;i++) fTOFLabel[i]=track.fTOFLabel[i];
+ for (Int_t i=0;i<10;i++) fTOFInfo[i]=track.fTOFInfo[i];
+ //
+ for (Int_t i=0;i<3;i++) fPHOSpos[i]=track.fPHOSpos[i];
+ for (Int_t i=0;i<AliPID::kSPECIESN;i++) fPHOSr[i]=track.fPHOSr[i];
+ //
+ for (Int_t i=0;i<3;i++) fEMCALpos[i]=track.fEMCALpos[i];
+ for (Int_t i=0;i<AliPID::kSPECIESN;i++) fEMCALr[i]=track.fEMCALr[i];
+ //
+ for (Int_t i=0;i<AliPID::kSPECIES;i++) fRICHr[i]=track.fRICHr[i];
+}
+//_______________________________________________________________________
+AliESDtrack::~AliESDtrack(){
+ //
+ // This is destructor according Coding Conventrions
+ //
+ //printf("Delete track\n");
+ delete fITStrack;
+ delete fTRDtrack;
+ delete fPoints;