ROOT logo
/**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
*                                                                        *
* Author: The ALICE Off-line Project.                                    *
* Contributors are mentioned in the code where appropriate.              *
*                                                                        *
* Permission to use, copy, modify and distribute this software and its   *
* documentation strictly for non-commercial purposes is hereby granted   *
* without fee, provided that the above copyright notice appears in all   *
* copies and that both the copyright notice and this permission notice   *
* appear in the supporting documentation. The authors make no claims     *
* about the suitability of this software for any purpose. It is          *
* provided "as is" without express or implied warranty.                  *
**************************************************************************/

/* $Id: AliTRDtrackInfo.cxx 27496 2008-07-22 08:35:45Z cblume $ */

////////////////////////////////////////////////////////////////////////////
//                                                                        //
//  Reconstruction QA                                                     //
//                                                                        //
//  Authors:                                                              //
//    Alex Bercuci <A.Bercuci@gsi.de>                                     //
//    Markus Fasel <M.Fasel@gsi.de>                                       //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

#include "TDatabasePDG.h"
#include "TPDGCode.h"
#include "TVectorT.h"

#include "AliTrackReference.h"
#include "AliTrackPointArray.h"
#include "AliExternalTrackParam.h"

#include "AliTRDseedV1.h"
#include "AliTRDtrackV1.h"
#include "AliTRDgeometry.h"
#include "AliTRDtrackerV1.h"

#include "AliTRDtrackInfo.h"

ClassImp(AliTRDtrackInfo)
ClassImp(AliTRDtrackInfo::AliMCinfo)
ClassImp(AliTRDtrackInfo::AliESDinfo)
Double_t AliTRDtrackInfo::AliMCinfo::fgKalmanStep = 2.;
Bool_t AliTRDtrackInfo::AliMCinfo::fgKalmanUpdate = kTRUE;

//___________________________________________________
AliTRDtrackInfo::AliTRDtrackInfo():
  TObject()
  ,fNClusters(0)
  ,fTRDtrack(NULL)
  ,fMC(NULL)
  ,fESD()
{
  //
  // Default constructor
  //
}


//___________________________________________________
AliTRDtrackInfo::AliTRDtrackInfo(const AliTRDtrackInfo &trdInfo):
  TObject((const TObject&)trdInfo)  
  ,fNClusters(trdInfo.fNClusters)
  ,fTRDtrack(NULL)
  ,fMC(NULL)
  ,fESD(trdInfo.fESD)
{
  //
  // copy Entries
  //

  if(trdInfo.fMC) fMC = new AliMCinfo(*trdInfo.fMC);
  SetTrack(trdInfo.fTRDtrack);
}

//___________________________________________________
AliTRDtrackInfo::AliMCinfo::AliMCinfo()
  :fLabel(0)
  ,fTRDlabel(0)
  ,fPDG(0)
  ,fNTrackRefs(0)
  ,fEta(-999.)
  ,fPhi(-999.)
  ,fPt(-1.)
{
  // Set 0-Pointers
  memset(fTrackRefs, 0, sizeof(AliTrackReference *) * 12);
}

//___________________________________________________
AliTRDtrackInfo::AliMCinfo::AliMCinfo(const AliMCinfo &mc)
  :fLabel(mc.fLabel)
  ,fTRDlabel(mc.fTRDlabel)
  ,fPDG(mc.fPDG)
  ,fNTrackRefs(mc.fNTrackRefs)
  ,fEta(mc.fEta)
  ,fPhi(mc.fPhi)
  ,fPt(mc.fPt)
{
  //
  // Constructor
  //

  memset(fTrackRefs, 0, sizeof(AliTrackReference *) * 12);
  for(Int_t ien = 0; ien < 12; ien++){
    if(mc.fTrackRefs[ien])
      fTrackRefs[ien] = new AliTrackReference(*(mc.fTrackRefs[ien]));
  }
}

//________________________________________________________
Int_t AliTRDtrackInfo::AliMCinfo::GetPID() const
{
// Translate pdg code to PID index

  switch(fPDG){
  case kElectron: 
  case kPositron: return AliPID::kElectron;  
  case kMuonPlus:
  case kMuonMinus: return AliPID::kMuon;  
  case kPiPlus: 
  case kPiMinus: return AliPID::kPion;  
  case kKPlus: 
  case kKMinus: return AliPID::kKaon;
  case kProton: 
  case kProtonBar: return AliPID::kProton;
  } 
  return -1;
}

//___________________________________________________
AliTRDtrackInfo::AliESDinfo::AliESDinfo()
  :fSteer(0)
  ,fId(-1)
  ,fStatus(0)
  ,fKinkIndex(0)
  ,fTPCncls(0)
  ,fTPCdedx(0.)
  ,fTOFbeta(0.)
  ,fTOFbc(0)
  ,fTRDpidQuality(0)
  ,fTRDnSlices(0)
  ,fPt(0.)
  ,fPhi(-999.)
  ,fEta(-999.)
  ,fTRDslices(NULL)
  ,fOP(NULL)
  ,fTPCout(NULL)
  ,fITSout(NULL)
  ,fTPArray(NULL)
{
  //
  // Constructor
  //

  memset(fTRDr, 0, AliPID::kSPECIES*sizeof(Double32_t));
  memset(fTRDv0pid, 0, AliPID::kSPECIES*sizeof(Int_t));
}

//___________________________________________________
AliTRDtrackInfo::AliESDinfo::AliESDinfo(const AliESDinfo &esd)
  :fSteer(esd.fSteer)
  ,fId(esd.fId)
  ,fStatus(esd.fStatus)
  ,fKinkIndex(esd.fKinkIndex)
  ,fTPCncls(esd.fTPCncls)
  ,fTPCdedx(esd.fTPCdedx)
  ,fTOFbeta(esd.fTOFbeta)
  ,fTOFbc(esd.fTOFbc)
  ,fTRDpidQuality(esd.fTRDpidQuality)
  ,fTRDnSlices(esd.fTRDnSlices)
  ,fPt(esd.fPt)
  ,fPhi(esd.fPhi)
  ,fEta(esd.fEta)
  ,fTRDslices(NULL)
  ,fOP(NULL)
  ,fTPCout(NULL)
  ,fITSout(NULL)
  ,fTPArray(NULL)
{
  //
  // Constructor
  //

  memcpy(fTRDr, esd.fTRDr, AliPID::kSPECIES*sizeof(Double32_t));
  memcpy(fTRDv0pid, esd.fTRDv0pid, AliPID::kSPECIES*sizeof(Int_t));

  if(fTRDnSlices){
    fTRDslices = new Double32_t[fTRDnSlices];
    memcpy(fTRDslices, esd.fTRDslices, fTRDnSlices*sizeof(Double32_t));
  }
  SetOuterParam(esd.fOP);
  SetTPCoutParam(esd.fTPCout);
  SetITSoutParam(esd.fITSout);
  SetTrackPointArray(esd.fTPArray);
}


//___________________________________________________
AliTRDtrackInfo::~AliTRDtrackInfo()
{
  //
  // Destructor
  //

  if(fMC) delete fMC;
  if(fTRDtrack) delete fTRDtrack;
}

//___________________________________________________
AliTRDtrackInfo::AliMCinfo::~AliMCinfo()
{
  //
  // Destructor
  //

  fNTrackRefs = 0;
  for(Int_t ien = 0; ien < 12; ien++){
    if(fTrackRefs[ien]) delete fTrackRefs[ien];
    fTrackRefs[ien] = NULL;
  }
}

//___________________________________________________
AliTRDtrackInfo::AliESDinfo::~AliESDinfo()
{
  //
  // Destructor
  //

  if(fTRDnSlices){
    delete [] fTRDslices;
    fTRDslices = NULL;
    fTRDnSlices = 0;
  }
  if(fOP) delete fOP; fOP = NULL;
  if(fTPCout) delete fTPCout; fTPCout = NULL;
  if(fITSout) delete fITSout; fITSout = NULL;
  if(fTPArray) delete fTPArray;
}

//___________________________________________________
void AliTRDtrackInfo::AliESDinfo::Delete(const Option_t *){
  //
  // Delete Pointer members 
  // 
  if(fTRDnSlices){
    delete [] fTRDslices;
    fTRDslices = NULL;
    fTRDnSlices = 0;
  }
  if(fOP) delete fOP; fOP = NULL;
  if(fTPCout) delete fTPCout; fTPCout = NULL;
  if(fITSout) delete fITSout; fITSout = NULL;
  if(fTPArray) delete fTPArray; fTPArray = NULL;
}


//___________________________________________________
AliTRDtrackInfo& AliTRDtrackInfo::operator=(const AliTRDtrackInfo &trdInfo)
{
  //
  // = Operator
  //
  if(this == &trdInfo) return *this;

  fNClusters  = trdInfo.fNClusters;
  fESD        = trdInfo.fESD;

  if(trdInfo.fMC){
    if(!fMC) fMC = new AliMCinfo(*trdInfo.fMC);
    else{
      fMC->~AliMCinfo();
      new(fMC) AliMCinfo(*trdInfo.fMC);
    }
  } else {if(fMC) delete fMC; fMC = NULL;}

  SetTrack(trdInfo.fTRDtrack);

  return *this;
}

//___________________________________________________
AliTRDtrackInfo::AliMCinfo& AliTRDtrackInfo::AliMCinfo::operator=(const AliMCinfo &mc)
{
  //
  // Assignment operator
  //

  if(this == &mc) return *this;
  fLabel      = mc.fLabel;
  fTRDlabel   = mc.fTRDlabel;
  fPDG        = mc.fPDG;
  fNTrackRefs = mc.fNTrackRefs;

  AliTrackReference **itr = &fTrackRefs[0];
  AliTrackReference* const *jtr = &mc.fTrackRefs[0];
  for(Int_t ien = 0; ien < 2*AliTRDgeometry::kNlayer; ien++, itr++, jtr++){
    if((*jtr)){
      if(!(*itr)) (*itr) = new AliTrackReference(*(*jtr));
      else{
        (*itr)->~AliTrackReference();
        new(&(*itr)) AliTrackReference(*(*jtr));
      }
    } else {if((*itr)) delete (*itr); (*itr) = NULL;}
  }
  return *this;
}

//___________________________________________________
AliTRDtrackInfo::AliESDinfo& AliTRDtrackInfo::AliESDinfo::operator=(const AliESDinfo &esd)
{
  //
  // Assignment operator
  //

  if(this == &esd) return *this;
  fSteer       = esd.fSteer;
  fId          = esd.fId;
  fStatus      = esd.fStatus;
  fKinkIndex   = esd.fKinkIndex;
  fTPCncls     = esd.fTPCncls;
  fTPCdedx     = esd.fTPCdedx;
  fTOFbeta     = esd.fTOFbeta;
  fTOFbc       = esd.fTOFbc;
  fTRDpidQuality= esd.fTRDpidQuality;
  fTRDnSlices  = esd.fTRDnSlices;
  fPt          = esd.fPt;
  fPhi         = esd.fPhi;
  fEta         = esd.fEta;
  
  memcpy(fTRDr, esd.fTRDr, AliPID::kSPECIES*sizeof(Double32_t));
  memcpy(fTRDv0pid, esd.fTRDv0pid, AliPID::kSPECIES*sizeof(Int_t));

  if(fTRDnSlices){
    if(!fTRDslices) fTRDslices = new Double32_t[fTRDnSlices];
    memcpy(fTRDslices, esd.fTRDslices, fTRDnSlices*sizeof(Double32_t));
  }
  SetOuterParam(esd.fOP);
  SetTPCoutParam(esd.fTPCout);
  SetITSoutParam(esd.fITSout);
  SetTrackPointArray(esd.fTPArray);

  return *this;
}

//___________________________________________________
void AliTRDtrackInfo::Delete(const Option_t *)
{
  //
  // Delete
  //

  AliDebug(2, Form("track[%p] mc[%p]", (void*)fTRDtrack, (void*)fMC));
  fNClusters  = 0;
  if(fMC) delete fMC; fMC = NULL;
  fESD.Delete(NULL);
  if(fTRDtrack) delete fTRDtrack; fTRDtrack = NULL;
}

//___________________________________________________
void AliTRDtrackInfo::SetTrack(const AliTRDtrackV1 *track)
{
  //
  // Set the TRD track
  //

  if(track){
    if(!fTRDtrack) fTRDtrack = new AliTRDtrackV1(*track);
    else{
      fTRDtrack->~AliTRDtrackV1();
      new(fTRDtrack) AliTRDtrackV1(*track);
    }
    if(track->IsOwner()) fTRDtrack->SetOwner();
  } else {
    if(fTRDtrack) delete fTRDtrack; fTRDtrack = NULL;
  }
}

//___________________________________________________
void AliTRDtrackInfo::AliESDinfo::SetTrackPointArray(const AliTrackPointArray *tps)
{
  //
  // Set the track point array for alignment task
  //


  if(tps){
    if(!fTPArray) fTPArray = new AliTrackPointArray(*tps);
    else{
      fTPArray->~AliTrackPointArray();
      new(fTPArray) AliTrackPointArray(*tps);
    }
  } else {
    if(fTPArray) delete fTPArray; fTPArray = NULL;
  }
}

//___________________________________________________
void AliTRDtrackInfo::AddTrackRef(const AliTrackReference *tref)
{
  //
  // Add track reference
  //

  if(fMC->fNTrackRefs >= 2*AliTRDgeometry::kNlayer){ 
    SetCurved();
    return;
  }
  // Make a copy for the object in order to avoid ownership problems
  fMC->fTrackRefs[fMC->fNTrackRefs++] = new AliTrackReference(*tref);
}

//___________________________________________________
AliTrackReference* AliTRDtrackInfo::GetTrackRef(Int_t idx) const
{
//
// Returns a track reference
//
  if(!fMC) return NULL;
  return (idx>=0 && idx < 12) ? fMC->fTrackRefs[idx] : NULL;
}

//___________________________________________________
AliTrackReference* AliTRDtrackInfo::GetTrackRef(const AliTRDseedV1* const tracklet) const
{
//
// Returns a track reference
//
  if(!fMC) return NULL;
  Double_t cw = AliTRDgeometry::CamHght() + AliTRDgeometry::CdrHght();
  AliTrackReference * const* jtr = &(fMC->fTrackRefs[0]);
  for(Int_t itr = 0; itr < fMC->fNTrackRefs; itr++, ++jtr){
    if(!(*jtr)) break;   
    if(TMath::Abs(tracklet->GetX0() - (*jtr)->LocalX()) < cw) return (*jtr);
  }
  return NULL;
}

//___________________________________________________
Int_t AliTRDtrackInfo::GetNumberOfClusters() const
{
  //
  // Returns the number of clusters
  //

  Int_t n = 0;
  if(!fTRDtrack) return 0;
  if(fTRDtrack->GetNumberOfTracklets() == 0) return n;
  AliTRDseedV1 *tracklet = NULL;
  for(Int_t ip=0; ip<AliTRDgeometry::kNlayer; ip++){
    if(!(tracklet = const_cast<AliTRDseedV1 *>(fTRDtrack->GetTracklet(ip)))) continue;
    n+=tracklet->GetN();
  }
  return n;
}


//___________________________________________________
void  AliTRDtrackInfo::AliESDinfo::SetOuterParam(const AliExternalTrackParam *op)
{
  //
  // Set outer track parameters
  //

  if(op){
    if(fOP){
      fOP->~AliExternalTrackParam();
      // RS: Constructor from VTrack was used instead of Constructor from AliExternalTrackParam
      new(fOP) AliExternalTrackParam(*op);
    } else fOP = new AliExternalTrackParam(*op);
  } else {
    if(fOP) delete fOP; fOP = NULL;
  }
}

//___________________________________________________
void  AliTRDtrackInfo::AliESDinfo::SetITSoutParam(const AliExternalTrackParam *op)
{
  //
  // Set TPCout track parameters
  //

  if(op){
    if(fITSout){
      fITSout->~AliExternalTrackParam();
      // RS: Constructor from VTrack was used instead of Constructor from AliExternalTrackParam
      new(fITSout) AliExternalTrackParam(*op);
    } else fITSout = new AliExternalTrackParam(*op);
  } else {
    if(fITSout) delete fITSout; fITSout = NULL;
  }
}

//___________________________________________________
void  AliTRDtrackInfo::AliESDinfo::SetTPCoutParam(const AliExternalTrackParam *op)
{
  //
  // Set TPCout track parameters
  //

  if(op){
    if(fTPCout){
      fTPCout->~AliExternalTrackParam();
      // RS: Constructor from VTrack was used instead of Constructor from AliExternalTrackParam
      new(fTPCout) AliExternalTrackParam(*op);
    } else fTPCout = new AliExternalTrackParam(*op);
  } else {
    if(fTPCout) delete fTPCout; fTPCout = NULL;
  }
}

//___________________________________________________
Int_t AliTRDtrackInfo::GetNTracklets() const
{
  //
  // Return the number of tracklets
  //

  if(!fTRDtrack) return 0;
  return fTRDtrack->GetNumberOfTracklets();
}

//___________________________________________________
void AliTRDtrackInfo::SetSlices(Int_t n, Double32_t *s)
{
  //
  // Set the slices
  //
  if(fESD.fTRDnSlices != n){
    fESD.fTRDnSlices = 0;
    delete [] fESD.fTRDslices;
    fESD.fTRDslices = NULL;
  }

  if(!fESD.fTRDnSlices){
    fESD.fTRDnSlices = n;
    fESD.fTRDslices = new Double32_t[fESD.fTRDnSlices];
  }

  memcpy(fESD.fTRDslices, s, n*sizeof(Double32_t));
}
 
//___________________________________________________
Bool_t AliTRDtrackInfo::AliMCinfo::GetDirections(Float_t &x0, Float_t &y0, Float_t &z0, Float_t &dydx, Float_t &dzdx, Float_t &pt, Float_t &p, Float_t &eta, Float_t &phi, UChar_t &status) const
{
// Check for 2 track ref for the tracklet defined bythe radial position x0
// The "status" is a bit map and gives a more informative output in case of failure:
//   - 0 : everything is OK
//   - BIT(0) : 0 track refs found
//   - BIT(1) : 1 track reference found
//   - BIT(2) : dx <= 0 between track references
//   - BIT(3) : dx > 0 && dx < 3.7 - tangent tracks 

  status = 0;
  Double_t cw = AliTRDgeometry::CamHght() + AliTRDgeometry::CdrHght();
  Int_t nFound = 0;
  AliTrackReference *tr[2] = {NULL, NULL};
  AliTrackReference * const* jtr = &fTrackRefs[0];
  for(Int_t itr = 0; itr < fNTrackRefs; itr++, ++jtr){
    if(!(*jtr)) break;
/*
    if(fDebugLevel>=5) printf("\t\tref[%2d] x[%6.3f]\n", itr, (*jtr)->LocalX());*/
    if(TMath::Abs(x0 - (*jtr)->LocalX()) > cw) continue;
    tr[nFound++] = (*jtr);
    if(nFound == 2) break;
  } 
  if(nFound < 2){ 
    //AliDebug(1, Form("Missing track ref x0[%6.3f] nref[%d]", x0, nFound));
    if(!nFound) SETBIT(status, 0);
    else SETBIT(status, 1);
    return kFALSE;
  }
  pt=tr[1]->Pt();
  p =tr[1]->P();
  if(pt < 1.e-3) return kFALSE;

  Double_t dx = tr[1]->LocalX() - tr[0]->LocalX();
  if(dx <= 0.){
    AliWarningGeneral("AliTRDtrackInfo::AliMCinfo::GetDirections()", Form("Track ref with wrong radial distances refX0[%6.3f] refX1[%6.3f]", tr[0]->LocalX(), tr[1]->LocalX()));
    SETBIT(status, 2);
    return kFALSE;
  }
  if(TMath::Abs(dx-AliTRDgeometry::CamHght()-AliTRDgeometry::CdrHght())>1.E-3) SETBIT(status, 3); 

  dydx = (tr[1]->LocalY() - tr[0]->LocalY()) / dx;
  dzdx = (tr[1]->Z() - tr[0]->Z()) / dx;
  //Float_t dx0 = tr[1]->LocalX() - x0;
  y0   =  tr[1]->LocalY()/* - dydx*dx0*/;
  z0   =  tr[1]->Z()/* - dzdx*dx0*/;
  x0   =  tr[1]->LocalX();
  eta  =  -TMath::Log(TMath::Tan(0.5 * tr[1]->Theta()));
  phi  =  TMath::ATan2(tr[1]->Y(), tr[1]->X());
  return kTRUE;
}

//___________________________________________________
Bool_t AliTRDtrackInfo::AliMCinfo::PropagateKalman(
      TVectorD *x, TVectorD *y, TVectorD *z,
      TVectorD *dx, TVectorD *dy, TVectorD *dz,
      TVectorD *pt, TVectorD *dpt, TVectorD *budget, TVectorD *c, Double_t mass) const
{
// Propagate Kalman from the first TRD track reference to 
// last one and save residuals in the y, z and pt.
// 
// This is to calibrate the dEdx and MS corrections

  if(!fNTrackRefs) return kFALSE;
  for(Int_t itr=kNTrackRefs; itr--;){
    (*x)[itr] = 0.;(*y)[itr] = 0.;(*z)[itr] = 0.;
    (*dx)[itr] = -1.; (*dy)[itr] = 100.; (*dz)[itr] = 100.; (*dpt)[itr] = 100.;
  }

  // Initialize TRD track to the first track reference
  AliTrackReference *tr(NULL);
  Int_t itr(0); while(!(tr = fTrackRefs[itr])) itr++;
  if(tr->Pt()<1.e-3) return kFALSE;

  AliTRDtrackV1 tt;
  Double_t xyz[3]={tr->X(),tr->Y(),tr->Z()};
  Double_t pxyz[3]={tr->Px(),tr->Py(),tr->Pz()};
  Double_t var[6] = {1.e-4, 1.e-4, 1.e-4, 1.e-4, 1.e-4, 1.e-4};
  Double_t cov[21]={
    var[0],  0.,  0.,  0.,  0.,  0.,
         var[1],  0.,  0.,  0.,  0.,
              var[2],  0.,  0.,  0.,
                   var[3],  0.,  0.,
                        var[4],  0.,
                             var[5]
  };
  TDatabasePDG db;
  const TParticlePDG *pdg=db.GetParticle(fPDG);
  if(!pdg){
    AliWarningGeneral("AliTRDtrackInfo::AliMCinfo::PropagateKalman()", Form("PDG entry missing for code %d. References for track %d", fPDG, fNTrackRefs));
    return kFALSE;
  }
  tt.Set(xyz, pxyz, cov, Short_t(pdg->Charge()));
  if(mass<0){ // mass 0 use PDG
    tt.SetMass(pdg->Mass());
  } else { // use rec value
    tt.SetMass(mass);
  }

//  Double_t bg(tr->P()/pdg->Mass());
//  printf("\n\nNEW track PDG[%d] bg[%f] x[%f]\n", fPDG, bg, TMath::Log(bg));
  Double_t x0(tr->LocalX());
  const Double_t *cc(NULL);
  for(Int_t ip=0; itr<fNTrackRefs; itr++){
    if(!(tr = fTrackRefs[itr])) continue;
//    printf("ip[%d] det[%d]\n", ip, tr->DetectorId());
    if(!AliTRDtrackerV1::PropagateToX(tt, tr->LocalX(), fgKalmanStep)) continue;

    //if(update) ...
    tt.GetXYZ(xyz);
    (*x)[ip]   = xyz[0];
    (*y)[ip]   = xyz[1];
    (*z)[ip]   = xyz[2];
    (*dx)[ip]  = tt.GetX() - x0;
    (*dy)[ip]  = tt.GetY() - tr->LocalY();
    (*dz)[ip]  = tt.GetZ() - tr->Z();
    (*pt)[ip]  = tr->Pt();
    (*dpt)[ip] = tt.Pt()- tr->Pt();
//    printf("pt : kalman[%e] MC[%e]\n", tt.Pt(), tr->Pt());
    (*budget)[ip] = tt.GetBudget(0);
    cc = tt.GetCovariance();
//    printf("dx[%5.2f] sy[%f]\n", (*dx)[ip], TMath::Sqrt(cc[0]));
    for(Int_t ic(0), jp(ip*15); ic<15; ic++, jp++) (*c)[jp]=cc[ic];
    ip++;
  }
  return kTRUE;
}
 AliTRDtrackInfo.cxx:1
 AliTRDtrackInfo.cxx:2
 AliTRDtrackInfo.cxx:3
 AliTRDtrackInfo.cxx:4
 AliTRDtrackInfo.cxx:5
 AliTRDtrackInfo.cxx:6
 AliTRDtrackInfo.cxx:7
 AliTRDtrackInfo.cxx:8
 AliTRDtrackInfo.cxx:9
 AliTRDtrackInfo.cxx:10
 AliTRDtrackInfo.cxx:11
 AliTRDtrackInfo.cxx:12
 AliTRDtrackInfo.cxx:13
 AliTRDtrackInfo.cxx:14
 AliTRDtrackInfo.cxx:15
 AliTRDtrackInfo.cxx:16
 AliTRDtrackInfo.cxx:17
 AliTRDtrackInfo.cxx:18
 AliTRDtrackInfo.cxx:19
 AliTRDtrackInfo.cxx:20
 AliTRDtrackInfo.cxx:21
 AliTRDtrackInfo.cxx:22
 AliTRDtrackInfo.cxx:23
 AliTRDtrackInfo.cxx:24
 AliTRDtrackInfo.cxx:25
 AliTRDtrackInfo.cxx:26
 AliTRDtrackInfo.cxx:27
 AliTRDtrackInfo.cxx:28
 AliTRDtrackInfo.cxx:29
 AliTRDtrackInfo.cxx:30
 AliTRDtrackInfo.cxx:31
 AliTRDtrackInfo.cxx:32
 AliTRDtrackInfo.cxx:33
 AliTRDtrackInfo.cxx:34
 AliTRDtrackInfo.cxx:35
 AliTRDtrackInfo.cxx:36
 AliTRDtrackInfo.cxx:37
 AliTRDtrackInfo.cxx:38
 AliTRDtrackInfo.cxx:39
 AliTRDtrackInfo.cxx:40
 AliTRDtrackInfo.cxx:41
 AliTRDtrackInfo.cxx:42
 AliTRDtrackInfo.cxx:43
 AliTRDtrackInfo.cxx:44
 AliTRDtrackInfo.cxx:45
 AliTRDtrackInfo.cxx:46
 AliTRDtrackInfo.cxx:47
 AliTRDtrackInfo.cxx:48
 AliTRDtrackInfo.cxx:49
 AliTRDtrackInfo.cxx:50
 AliTRDtrackInfo.cxx:51
 AliTRDtrackInfo.cxx:52
 AliTRDtrackInfo.cxx:53
 AliTRDtrackInfo.cxx:54
 AliTRDtrackInfo.cxx:55
 AliTRDtrackInfo.cxx:56
 AliTRDtrackInfo.cxx:57
 AliTRDtrackInfo.cxx:58
 AliTRDtrackInfo.cxx:59
 AliTRDtrackInfo.cxx:60
 AliTRDtrackInfo.cxx:61
 AliTRDtrackInfo.cxx:62
 AliTRDtrackInfo.cxx:63
 AliTRDtrackInfo.cxx:64
 AliTRDtrackInfo.cxx:65
 AliTRDtrackInfo.cxx:66
 AliTRDtrackInfo.cxx:67
 AliTRDtrackInfo.cxx:68
 AliTRDtrackInfo.cxx:69
 AliTRDtrackInfo.cxx:70
 AliTRDtrackInfo.cxx:71
 AliTRDtrackInfo.cxx:72
 AliTRDtrackInfo.cxx:73
 AliTRDtrackInfo.cxx:74
 AliTRDtrackInfo.cxx:75
 AliTRDtrackInfo.cxx:76
 AliTRDtrackInfo.cxx:77
 AliTRDtrackInfo.cxx:78
 AliTRDtrackInfo.cxx:79
 AliTRDtrackInfo.cxx:80
 AliTRDtrackInfo.cxx:81
 AliTRDtrackInfo.cxx:82
 AliTRDtrackInfo.cxx:83
 AliTRDtrackInfo.cxx:84
 AliTRDtrackInfo.cxx:85
 AliTRDtrackInfo.cxx:86
 AliTRDtrackInfo.cxx:87
 AliTRDtrackInfo.cxx:88
 AliTRDtrackInfo.cxx:89
 AliTRDtrackInfo.cxx:90
 AliTRDtrackInfo.cxx:91
 AliTRDtrackInfo.cxx:92
 AliTRDtrackInfo.cxx:93
 AliTRDtrackInfo.cxx:94
 AliTRDtrackInfo.cxx:95
 AliTRDtrackInfo.cxx:96
 AliTRDtrackInfo.cxx:97
 AliTRDtrackInfo.cxx:98
 AliTRDtrackInfo.cxx:99
 AliTRDtrackInfo.cxx:100
 AliTRDtrackInfo.cxx:101
 AliTRDtrackInfo.cxx:102
 AliTRDtrackInfo.cxx:103
 AliTRDtrackInfo.cxx:104
 AliTRDtrackInfo.cxx:105
 AliTRDtrackInfo.cxx:106
 AliTRDtrackInfo.cxx:107
 AliTRDtrackInfo.cxx:108
 AliTRDtrackInfo.cxx:109
 AliTRDtrackInfo.cxx:110
 AliTRDtrackInfo.cxx:111
 AliTRDtrackInfo.cxx:112
 AliTRDtrackInfo.cxx:113
 AliTRDtrackInfo.cxx:114
 AliTRDtrackInfo.cxx:115
 AliTRDtrackInfo.cxx:116
 AliTRDtrackInfo.cxx:117
 AliTRDtrackInfo.cxx:118
 AliTRDtrackInfo.cxx:119
 AliTRDtrackInfo.cxx:120
 AliTRDtrackInfo.cxx:121
 AliTRDtrackInfo.cxx:122
 AliTRDtrackInfo.cxx:123
 AliTRDtrackInfo.cxx:124
 AliTRDtrackInfo.cxx:125
 AliTRDtrackInfo.cxx:126
 AliTRDtrackInfo.cxx:127
 AliTRDtrackInfo.cxx:128
 AliTRDtrackInfo.cxx:129
 AliTRDtrackInfo.cxx:130
 AliTRDtrackInfo.cxx:131
 AliTRDtrackInfo.cxx:132
 AliTRDtrackInfo.cxx:133
 AliTRDtrackInfo.cxx:134
 AliTRDtrackInfo.cxx:135
 AliTRDtrackInfo.cxx:136
 AliTRDtrackInfo.cxx:137
 AliTRDtrackInfo.cxx:138
 AliTRDtrackInfo.cxx:139
 AliTRDtrackInfo.cxx:140
 AliTRDtrackInfo.cxx:141
 AliTRDtrackInfo.cxx:142
 AliTRDtrackInfo.cxx:143
 AliTRDtrackInfo.cxx:144
 AliTRDtrackInfo.cxx:145
 AliTRDtrackInfo.cxx:146
 AliTRDtrackInfo.cxx:147
 AliTRDtrackInfo.cxx:148
 AliTRDtrackInfo.cxx:149
 AliTRDtrackInfo.cxx:150
 AliTRDtrackInfo.cxx:151
 AliTRDtrackInfo.cxx:152
 AliTRDtrackInfo.cxx:153
 AliTRDtrackInfo.cxx:154
 AliTRDtrackInfo.cxx:155
 AliTRDtrackInfo.cxx:156
 AliTRDtrackInfo.cxx:157
 AliTRDtrackInfo.cxx:158
 AliTRDtrackInfo.cxx:159
 AliTRDtrackInfo.cxx:160
 AliTRDtrackInfo.cxx:161
 AliTRDtrackInfo.cxx:162
 AliTRDtrackInfo.cxx:163
 AliTRDtrackInfo.cxx:164
 AliTRDtrackInfo.cxx:165
 AliTRDtrackInfo.cxx:166
 AliTRDtrackInfo.cxx:167
 AliTRDtrackInfo.cxx:168
 AliTRDtrackInfo.cxx:169
 AliTRDtrackInfo.cxx:170
 AliTRDtrackInfo.cxx:171
 AliTRDtrackInfo.cxx:172
 AliTRDtrackInfo.cxx:173
 AliTRDtrackInfo.cxx:174
 AliTRDtrackInfo.cxx:175
 AliTRDtrackInfo.cxx:176
 AliTRDtrackInfo.cxx:177
 AliTRDtrackInfo.cxx:178
 AliTRDtrackInfo.cxx:179
 AliTRDtrackInfo.cxx:180
 AliTRDtrackInfo.cxx:181
 AliTRDtrackInfo.cxx:182
 AliTRDtrackInfo.cxx:183
 AliTRDtrackInfo.cxx:184
 AliTRDtrackInfo.cxx:185
 AliTRDtrackInfo.cxx:186
 AliTRDtrackInfo.cxx:187
 AliTRDtrackInfo.cxx:188
 AliTRDtrackInfo.cxx:189
 AliTRDtrackInfo.cxx:190
 AliTRDtrackInfo.cxx:191
 AliTRDtrackInfo.cxx:192
 AliTRDtrackInfo.cxx:193
 AliTRDtrackInfo.cxx:194
 AliTRDtrackInfo.cxx:195
 AliTRDtrackInfo.cxx:196
 AliTRDtrackInfo.cxx:197
 AliTRDtrackInfo.cxx:198
 AliTRDtrackInfo.cxx:199
 AliTRDtrackInfo.cxx:200
 AliTRDtrackInfo.cxx:201
 AliTRDtrackInfo.cxx:202
 AliTRDtrackInfo.cxx:203
 AliTRDtrackInfo.cxx:204
 AliTRDtrackInfo.cxx:205
 AliTRDtrackInfo.cxx:206
 AliTRDtrackInfo.cxx:207
 AliTRDtrackInfo.cxx:208
 AliTRDtrackInfo.cxx:209
 AliTRDtrackInfo.cxx:210
 AliTRDtrackInfo.cxx:211
 AliTRDtrackInfo.cxx:212
 AliTRDtrackInfo.cxx:213
 AliTRDtrackInfo.cxx:214
 AliTRDtrackInfo.cxx:215
 AliTRDtrackInfo.cxx:216
 AliTRDtrackInfo.cxx:217
 AliTRDtrackInfo.cxx:218
 AliTRDtrackInfo.cxx:219
 AliTRDtrackInfo.cxx:220
 AliTRDtrackInfo.cxx:221
 AliTRDtrackInfo.cxx:222
 AliTRDtrackInfo.cxx:223
 AliTRDtrackInfo.cxx:224
 AliTRDtrackInfo.cxx:225
 AliTRDtrackInfo.cxx:226
 AliTRDtrackInfo.cxx:227
 AliTRDtrackInfo.cxx:228
 AliTRDtrackInfo.cxx:229
 AliTRDtrackInfo.cxx:230
 AliTRDtrackInfo.cxx:231
 AliTRDtrackInfo.cxx:232
 AliTRDtrackInfo.cxx:233
 AliTRDtrackInfo.cxx:234
 AliTRDtrackInfo.cxx:235
 AliTRDtrackInfo.cxx:236
 AliTRDtrackInfo.cxx:237
 AliTRDtrackInfo.cxx:238
 AliTRDtrackInfo.cxx:239
 AliTRDtrackInfo.cxx:240
 AliTRDtrackInfo.cxx:241
 AliTRDtrackInfo.cxx:242
 AliTRDtrackInfo.cxx:243
 AliTRDtrackInfo.cxx:244
 AliTRDtrackInfo.cxx:245
 AliTRDtrackInfo.cxx:246
 AliTRDtrackInfo.cxx:247
 AliTRDtrackInfo.cxx:248
 AliTRDtrackInfo.cxx:249
 AliTRDtrackInfo.cxx:250
 AliTRDtrackInfo.cxx:251
 AliTRDtrackInfo.cxx:252
 AliTRDtrackInfo.cxx:253
 AliTRDtrackInfo.cxx:254
 AliTRDtrackInfo.cxx:255
 AliTRDtrackInfo.cxx:256
 AliTRDtrackInfo.cxx:257
 AliTRDtrackInfo.cxx:258
 AliTRDtrackInfo.cxx:259
 AliTRDtrackInfo.cxx:260
 AliTRDtrackInfo.cxx:261
 AliTRDtrackInfo.cxx:262
 AliTRDtrackInfo.cxx:263
 AliTRDtrackInfo.cxx:264
 AliTRDtrackInfo.cxx:265
 AliTRDtrackInfo.cxx:266
 AliTRDtrackInfo.cxx:267
 AliTRDtrackInfo.cxx:268
 AliTRDtrackInfo.cxx:269
 AliTRDtrackInfo.cxx:270
 AliTRDtrackInfo.cxx:271
 AliTRDtrackInfo.cxx:272
 AliTRDtrackInfo.cxx:273
 AliTRDtrackInfo.cxx:274
 AliTRDtrackInfo.cxx:275
 AliTRDtrackInfo.cxx:276
 AliTRDtrackInfo.cxx:277
 AliTRDtrackInfo.cxx:278
 AliTRDtrackInfo.cxx:279
 AliTRDtrackInfo.cxx:280
 AliTRDtrackInfo.cxx:281
 AliTRDtrackInfo.cxx:282
 AliTRDtrackInfo.cxx:283
 AliTRDtrackInfo.cxx:284
 AliTRDtrackInfo.cxx:285
 AliTRDtrackInfo.cxx:286
 AliTRDtrackInfo.cxx:287
 AliTRDtrackInfo.cxx:288
 AliTRDtrackInfo.cxx:289
 AliTRDtrackInfo.cxx:290
 AliTRDtrackInfo.cxx:291
 AliTRDtrackInfo.cxx:292
 AliTRDtrackInfo.cxx:293
 AliTRDtrackInfo.cxx:294
 AliTRDtrackInfo.cxx:295
 AliTRDtrackInfo.cxx:296
 AliTRDtrackInfo.cxx:297
 AliTRDtrackInfo.cxx:298
 AliTRDtrackInfo.cxx:299
 AliTRDtrackInfo.cxx:300
 AliTRDtrackInfo.cxx:301
 AliTRDtrackInfo.cxx:302
 AliTRDtrackInfo.cxx:303
 AliTRDtrackInfo.cxx:304
 AliTRDtrackInfo.cxx:305
 AliTRDtrackInfo.cxx:306
 AliTRDtrackInfo.cxx:307
 AliTRDtrackInfo.cxx:308
 AliTRDtrackInfo.cxx:309
 AliTRDtrackInfo.cxx:310
 AliTRDtrackInfo.cxx:311
 AliTRDtrackInfo.cxx:312
 AliTRDtrackInfo.cxx:313
 AliTRDtrackInfo.cxx:314
 AliTRDtrackInfo.cxx:315
 AliTRDtrackInfo.cxx:316
 AliTRDtrackInfo.cxx:317
 AliTRDtrackInfo.cxx:318
 AliTRDtrackInfo.cxx:319
 AliTRDtrackInfo.cxx:320
 AliTRDtrackInfo.cxx:321
 AliTRDtrackInfo.cxx:322
 AliTRDtrackInfo.cxx:323
 AliTRDtrackInfo.cxx:324
 AliTRDtrackInfo.cxx:325
 AliTRDtrackInfo.cxx:326
 AliTRDtrackInfo.cxx:327
 AliTRDtrackInfo.cxx:328
 AliTRDtrackInfo.cxx:329
 AliTRDtrackInfo.cxx:330
 AliTRDtrackInfo.cxx:331
 AliTRDtrackInfo.cxx:332
 AliTRDtrackInfo.cxx:333
 AliTRDtrackInfo.cxx:334
 AliTRDtrackInfo.cxx:335
 AliTRDtrackInfo.cxx:336
 AliTRDtrackInfo.cxx:337
 AliTRDtrackInfo.cxx:338
 AliTRDtrackInfo.cxx:339
 AliTRDtrackInfo.cxx:340
 AliTRDtrackInfo.cxx:341
 AliTRDtrackInfo.cxx:342
 AliTRDtrackInfo.cxx:343
 AliTRDtrackInfo.cxx:344
 AliTRDtrackInfo.cxx:345
 AliTRDtrackInfo.cxx:346
 AliTRDtrackInfo.cxx:347
 AliTRDtrackInfo.cxx:348
 AliTRDtrackInfo.cxx:349
 AliTRDtrackInfo.cxx:350
 AliTRDtrackInfo.cxx:351
 AliTRDtrackInfo.cxx:352
 AliTRDtrackInfo.cxx:353
 AliTRDtrackInfo.cxx:354
 AliTRDtrackInfo.cxx:355
 AliTRDtrackInfo.cxx:356
 AliTRDtrackInfo.cxx:357
 AliTRDtrackInfo.cxx:358
 AliTRDtrackInfo.cxx:359
 AliTRDtrackInfo.cxx:360
 AliTRDtrackInfo.cxx:361
 AliTRDtrackInfo.cxx:362
 AliTRDtrackInfo.cxx:363
 AliTRDtrackInfo.cxx:364
 AliTRDtrackInfo.cxx:365
 AliTRDtrackInfo.cxx:366
 AliTRDtrackInfo.cxx:367
 AliTRDtrackInfo.cxx:368
 AliTRDtrackInfo.cxx:369
 AliTRDtrackInfo.cxx:370
 AliTRDtrackInfo.cxx:371
 AliTRDtrackInfo.cxx:372
 AliTRDtrackInfo.cxx:373
 AliTRDtrackInfo.cxx:374
 AliTRDtrackInfo.cxx:375
 AliTRDtrackInfo.cxx:376
 AliTRDtrackInfo.cxx:377
 AliTRDtrackInfo.cxx:378
 AliTRDtrackInfo.cxx:379
 AliTRDtrackInfo.cxx:380
 AliTRDtrackInfo.cxx:381
 AliTRDtrackInfo.cxx:382
 AliTRDtrackInfo.cxx:383
 AliTRDtrackInfo.cxx:384
 AliTRDtrackInfo.cxx:385
 AliTRDtrackInfo.cxx:386
 AliTRDtrackInfo.cxx:387
 AliTRDtrackInfo.cxx:388
 AliTRDtrackInfo.cxx:389
 AliTRDtrackInfo.cxx:390
 AliTRDtrackInfo.cxx:391
 AliTRDtrackInfo.cxx:392
 AliTRDtrackInfo.cxx:393
 AliTRDtrackInfo.cxx:394
 AliTRDtrackInfo.cxx:395
 AliTRDtrackInfo.cxx:396
 AliTRDtrackInfo.cxx:397
 AliTRDtrackInfo.cxx:398
 AliTRDtrackInfo.cxx:399
 AliTRDtrackInfo.cxx:400
 AliTRDtrackInfo.cxx:401
 AliTRDtrackInfo.cxx:402
 AliTRDtrackInfo.cxx:403
 AliTRDtrackInfo.cxx:404
 AliTRDtrackInfo.cxx:405
 AliTRDtrackInfo.cxx:406
 AliTRDtrackInfo.cxx:407
 AliTRDtrackInfo.cxx:408
 AliTRDtrackInfo.cxx:409
 AliTRDtrackInfo.cxx:410
 AliTRDtrackInfo.cxx:411
 AliTRDtrackInfo.cxx:412
 AliTRDtrackInfo.cxx:413
 AliTRDtrackInfo.cxx:414
 AliTRDtrackInfo.cxx:415
 AliTRDtrackInfo.cxx:416
 AliTRDtrackInfo.cxx:417
 AliTRDtrackInfo.cxx:418
 AliTRDtrackInfo.cxx:419
 AliTRDtrackInfo.cxx:420
 AliTRDtrackInfo.cxx:421
 AliTRDtrackInfo.cxx:422
 AliTRDtrackInfo.cxx:423
 AliTRDtrackInfo.cxx:424
 AliTRDtrackInfo.cxx:425
 AliTRDtrackInfo.cxx:426
 AliTRDtrackInfo.cxx:427
 AliTRDtrackInfo.cxx:428
 AliTRDtrackInfo.cxx:429
 AliTRDtrackInfo.cxx:430
 AliTRDtrackInfo.cxx:431
 AliTRDtrackInfo.cxx:432
 AliTRDtrackInfo.cxx:433
 AliTRDtrackInfo.cxx:434
 AliTRDtrackInfo.cxx:435
 AliTRDtrackInfo.cxx:436
 AliTRDtrackInfo.cxx:437
 AliTRDtrackInfo.cxx:438
 AliTRDtrackInfo.cxx:439
 AliTRDtrackInfo.cxx:440
 AliTRDtrackInfo.cxx:441
 AliTRDtrackInfo.cxx:442
 AliTRDtrackInfo.cxx:443
 AliTRDtrackInfo.cxx:444
 AliTRDtrackInfo.cxx:445
 AliTRDtrackInfo.cxx:446
 AliTRDtrackInfo.cxx:447
 AliTRDtrackInfo.cxx:448
 AliTRDtrackInfo.cxx:449
 AliTRDtrackInfo.cxx:450
 AliTRDtrackInfo.cxx:451
 AliTRDtrackInfo.cxx:452
 AliTRDtrackInfo.cxx:453
 AliTRDtrackInfo.cxx:454
 AliTRDtrackInfo.cxx:455
 AliTRDtrackInfo.cxx:456
 AliTRDtrackInfo.cxx:457
 AliTRDtrackInfo.cxx:458
 AliTRDtrackInfo.cxx:459
 AliTRDtrackInfo.cxx:460
 AliTRDtrackInfo.cxx:461
 AliTRDtrackInfo.cxx:462
 AliTRDtrackInfo.cxx:463
 AliTRDtrackInfo.cxx:464
 AliTRDtrackInfo.cxx:465
 AliTRDtrackInfo.cxx:466
 AliTRDtrackInfo.cxx:467
 AliTRDtrackInfo.cxx:468
 AliTRDtrackInfo.cxx:469
 AliTRDtrackInfo.cxx:470
 AliTRDtrackInfo.cxx:471
 AliTRDtrackInfo.cxx:472
 AliTRDtrackInfo.cxx:473
 AliTRDtrackInfo.cxx:474
 AliTRDtrackInfo.cxx:475
 AliTRDtrackInfo.cxx:476
 AliTRDtrackInfo.cxx:477
 AliTRDtrackInfo.cxx:478
 AliTRDtrackInfo.cxx:479
 AliTRDtrackInfo.cxx:480
 AliTRDtrackInfo.cxx:481
 AliTRDtrackInfo.cxx:482
 AliTRDtrackInfo.cxx:483
 AliTRDtrackInfo.cxx:484
 AliTRDtrackInfo.cxx:485
 AliTRDtrackInfo.cxx:486
 AliTRDtrackInfo.cxx:487
 AliTRDtrackInfo.cxx:488
 AliTRDtrackInfo.cxx:489
 AliTRDtrackInfo.cxx:490
 AliTRDtrackInfo.cxx:491
 AliTRDtrackInfo.cxx:492
 AliTRDtrackInfo.cxx:493
 AliTRDtrackInfo.cxx:494
 AliTRDtrackInfo.cxx:495
 AliTRDtrackInfo.cxx:496
 AliTRDtrackInfo.cxx:497
 AliTRDtrackInfo.cxx:498
 AliTRDtrackInfo.cxx:499
 AliTRDtrackInfo.cxx:500
 AliTRDtrackInfo.cxx:501
 AliTRDtrackInfo.cxx:502
 AliTRDtrackInfo.cxx:503
 AliTRDtrackInfo.cxx:504
 AliTRDtrackInfo.cxx:505
 AliTRDtrackInfo.cxx:506
 AliTRDtrackInfo.cxx:507
 AliTRDtrackInfo.cxx:508
 AliTRDtrackInfo.cxx:509
 AliTRDtrackInfo.cxx:510
 AliTRDtrackInfo.cxx:511
 AliTRDtrackInfo.cxx:512
 AliTRDtrackInfo.cxx:513
 AliTRDtrackInfo.cxx:514
 AliTRDtrackInfo.cxx:515
 AliTRDtrackInfo.cxx:516
 AliTRDtrackInfo.cxx:517
 AliTRDtrackInfo.cxx:518
 AliTRDtrackInfo.cxx:519
 AliTRDtrackInfo.cxx:520
 AliTRDtrackInfo.cxx:521
 AliTRDtrackInfo.cxx:522
 AliTRDtrackInfo.cxx:523
 AliTRDtrackInfo.cxx:524
 AliTRDtrackInfo.cxx:525
 AliTRDtrackInfo.cxx:526
 AliTRDtrackInfo.cxx:527
 AliTRDtrackInfo.cxx:528
 AliTRDtrackInfo.cxx:529
 AliTRDtrackInfo.cxx:530
 AliTRDtrackInfo.cxx:531
 AliTRDtrackInfo.cxx:532
 AliTRDtrackInfo.cxx:533
 AliTRDtrackInfo.cxx:534
 AliTRDtrackInfo.cxx:535
 AliTRDtrackInfo.cxx:536
 AliTRDtrackInfo.cxx:537
 AliTRDtrackInfo.cxx:538
 AliTRDtrackInfo.cxx:539
 AliTRDtrackInfo.cxx:540
 AliTRDtrackInfo.cxx:541
 AliTRDtrackInfo.cxx:542
 AliTRDtrackInfo.cxx:543
 AliTRDtrackInfo.cxx:544
 AliTRDtrackInfo.cxx:545
 AliTRDtrackInfo.cxx:546
 AliTRDtrackInfo.cxx:547
 AliTRDtrackInfo.cxx:548
 AliTRDtrackInfo.cxx:549
 AliTRDtrackInfo.cxx:550
 AliTRDtrackInfo.cxx:551
 AliTRDtrackInfo.cxx:552
 AliTRDtrackInfo.cxx:553
 AliTRDtrackInfo.cxx:554
 AliTRDtrackInfo.cxx:555
 AliTRDtrackInfo.cxx:556
 AliTRDtrackInfo.cxx:557
 AliTRDtrackInfo.cxx:558
 AliTRDtrackInfo.cxx:559
 AliTRDtrackInfo.cxx:560
 AliTRDtrackInfo.cxx:561
 AliTRDtrackInfo.cxx:562
 AliTRDtrackInfo.cxx:563
 AliTRDtrackInfo.cxx:564
 AliTRDtrackInfo.cxx:565
 AliTRDtrackInfo.cxx:566
 AliTRDtrackInfo.cxx:567
 AliTRDtrackInfo.cxx:568
 AliTRDtrackInfo.cxx:569
 AliTRDtrackInfo.cxx:570
 AliTRDtrackInfo.cxx:571
 AliTRDtrackInfo.cxx:572
 AliTRDtrackInfo.cxx:573
 AliTRDtrackInfo.cxx:574
 AliTRDtrackInfo.cxx:575
 AliTRDtrackInfo.cxx:576
 AliTRDtrackInfo.cxx:577
 AliTRDtrackInfo.cxx:578
 AliTRDtrackInfo.cxx:579
 AliTRDtrackInfo.cxx:580
 AliTRDtrackInfo.cxx:581
 AliTRDtrackInfo.cxx:582
 AliTRDtrackInfo.cxx:583
 AliTRDtrackInfo.cxx:584
 AliTRDtrackInfo.cxx:585
 AliTRDtrackInfo.cxx:586
 AliTRDtrackInfo.cxx:587
 AliTRDtrackInfo.cxx:588
 AliTRDtrackInfo.cxx:589
 AliTRDtrackInfo.cxx:590
 AliTRDtrackInfo.cxx:591
 AliTRDtrackInfo.cxx:592
 AliTRDtrackInfo.cxx:593
 AliTRDtrackInfo.cxx:594
 AliTRDtrackInfo.cxx:595
 AliTRDtrackInfo.cxx:596
 AliTRDtrackInfo.cxx:597
 AliTRDtrackInfo.cxx:598
 AliTRDtrackInfo.cxx:599
 AliTRDtrackInfo.cxx:600
 AliTRDtrackInfo.cxx:601
 AliTRDtrackInfo.cxx:602
 AliTRDtrackInfo.cxx:603
 AliTRDtrackInfo.cxx:604
 AliTRDtrackInfo.cxx:605
 AliTRDtrackInfo.cxx:606
 AliTRDtrackInfo.cxx:607
 AliTRDtrackInfo.cxx:608
 AliTRDtrackInfo.cxx:609
 AliTRDtrackInfo.cxx:610
 AliTRDtrackInfo.cxx:611
 AliTRDtrackInfo.cxx:612
 AliTRDtrackInfo.cxx:613
 AliTRDtrackInfo.cxx:614
 AliTRDtrackInfo.cxx:615
 AliTRDtrackInfo.cxx:616
 AliTRDtrackInfo.cxx:617
 AliTRDtrackInfo.cxx:618
 AliTRDtrackInfo.cxx:619
 AliTRDtrackInfo.cxx:620
 AliTRDtrackInfo.cxx:621
 AliTRDtrackInfo.cxx:622
 AliTRDtrackInfo.cxx:623
 AliTRDtrackInfo.cxx:624
 AliTRDtrackInfo.cxx:625
 AliTRDtrackInfo.cxx:626
 AliTRDtrackInfo.cxx:627
 AliTRDtrackInfo.cxx:628
 AliTRDtrackInfo.cxx:629
 AliTRDtrackInfo.cxx:630
 AliTRDtrackInfo.cxx:631
 AliTRDtrackInfo.cxx:632
 AliTRDtrackInfo.cxx:633
 AliTRDtrackInfo.cxx:634
 AliTRDtrackInfo.cxx:635
 AliTRDtrackInfo.cxx:636
 AliTRDtrackInfo.cxx:637
 AliTRDtrackInfo.cxx:638
 AliTRDtrackInfo.cxx:639
 AliTRDtrackInfo.cxx:640
 AliTRDtrackInfo.cxx:641
 AliTRDtrackInfo.cxx:642
 AliTRDtrackInfo.cxx:643
 AliTRDtrackInfo.cxx:644
 AliTRDtrackInfo.cxx:645
 AliTRDtrackInfo.cxx:646
 AliTRDtrackInfo.cxx:647
 AliTRDtrackInfo.cxx:648
 AliTRDtrackInfo.cxx:649
 AliTRDtrackInfo.cxx:650
 AliTRDtrackInfo.cxx:651
 AliTRDtrackInfo.cxx:652
 AliTRDtrackInfo.cxx:653
 AliTRDtrackInfo.cxx:654
 AliTRDtrackInfo.cxx:655
 AliTRDtrackInfo.cxx:656
 AliTRDtrackInfo.cxx:657
 AliTRDtrackInfo.cxx:658
 AliTRDtrackInfo.cxx:659
 AliTRDtrackInfo.cxx:660
 AliTRDtrackInfo.cxx:661
 AliTRDtrackInfo.cxx:662
 AliTRDtrackInfo.cxx:663
 AliTRDtrackInfo.cxx:664
 AliTRDtrackInfo.cxx:665
 AliTRDtrackInfo.cxx:666
 AliTRDtrackInfo.cxx:667
 AliTRDtrackInfo.cxx:668
 AliTRDtrackInfo.cxx:669
 AliTRDtrackInfo.cxx:670
 AliTRDtrackInfo.cxx:671
 AliTRDtrackInfo.cxx:672
 AliTRDtrackInfo.cxx:673
 AliTRDtrackInfo.cxx:674