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$ */
 
#include <TGeoManager.h>
#include <TGeoVolume.h>
#include <TGeoTube.h>
#include <TVector3.h>
#include <TMath.h>
#include "AliGeomManager.h"
#include "AliITSsegmentationUpgrade.h"
#include "AliLog.h"
#include <TFile.h>
//////////////////////////////////////////////////////
// Segmentation class for                           //
// ITS upgrade                                      //
//                                                  //
//////////////////////////////////////////////////////

ClassImp(AliITSsegmentationUpgrade)

//_____________________________________________________________________________

  AliITSsegmentationUpgrade::AliITSsegmentationUpgrade(): 
TObject(),
							  fCellSizeX(0),
							  fCellSizeZ(0),
 							  fNSectors(0),
							  fMinRadius(0),
							  fMaxRadius(0),
							  fHalfLength(0)
{ 

  AliDebug(2,"Default constructor is called");
  // Default constructor

  if(!gGeoManager) AliGeomManager::LoadGeometry("geometry.root");
  TFile *f=TFile::Open("Segmentation.root");
  TArrayD *x=0;
  TArrayD *z=0; 
  TArrayD *nS=0;

  if(!f){
    AliError("Segmentation not available");
    return;
  }else {
    x=(TArrayD*)f->Get("CellSizeX");  
    z=(TArrayD*)f->Get("CellSizeZ");
    nS=(TArrayD*)f->Get("nSectors");
  }
  f->Close(); 
    
  Int_t i=0;
  while(gGeoManager->GetVolume(Form("LayerSilicon%i",i))){
    TGeoVolume *vol = gGeoManager->GetVolume(Form("LayerSilicon%i",i));
    if(!vol) {
      AliInfo(Form("the volume %s has not been found... exiting!",Form("LayerSilicon%i",i)));
      return;
    }

    TGeoTube *shape = (TGeoTube*)vol->GetShape();
    if(!shape) {
      AliInfo(Form("the volume %s has not shape defined... exiting!",vol->GetName()));
      return;
    }   
   // AliInfo(Form(" volume index %i ", i));
    // setting the geometry parameters (needed for trasformations Global-Local)
    fMaxRadius.Set(i+1);   fMaxRadius.AddAt(shape->GetRmax(),i);
    fMinRadius.Set(i+1);   fMinRadius.AddAt(shape->GetRmin(),i);
    fHalfLength.Set(i+1); fHalfLength.AddAt(shape->GetDz(),i);
    fCellSizeX.Set(i+1);
    fCellSizeZ.Set(i+1);
    fCellSizeX.AddAt(x->At(i),i);
    fCellSizeZ.AddAt(z->At(i),i); 
    i++;  
  }
 fNSectors = (Int_t)(nS->At(0));

}
//_______________________________________________________________
AliITSsegmentationUpgrade::AliITSsegmentationUpgrade(TArrayD radii, TArrayD widths, TArrayD Length): 
TObject(),
												     fCellSizeX(0),
												     fCellSizeZ(0),
												     fNSectors(110),
												     fMinRadius(0),
												     fMaxRadius(0),
												     fHalfLength(0)
{
  for(Int_t i=0; i<radii.GetSize();i++){
    fMaxRadius.Set(i+1);
    fMaxRadius.AddAt(radii.At(i)+widths.At(i),i);
    fMinRadius.Set(i+1);
    fMinRadius.AddAt(radii.At(i),i);
    fHalfLength.Set(i+1);
    fHalfLength.AddAt(Length.At(i),i);
  }
}
//_____________________________________________________________________________
void AliITSsegmentationUpgrade::SetSegmentation(Int_t ilayer, Double_t xsize, Double_t zsize){
  
  // x/z size in microns
  if(fCellSizeX.GetSize()<ilayer+1) fCellSizeX.Set(ilayer+1);
  if(fCellSizeZ.GetSize()<ilayer+1) fCellSizeZ.Set(ilayer+1); 
  AliDebug(10,Form("xsize %f zsize %f ilayer %i", xsize,zsize,ilayer));
  fCellSizeX.AddAt(xsize,ilayer); 
  fCellSizeZ.AddAt(zsize,ilayer);  
  AliDebug(10,Form("fCellsizeX %f fCellSizeZ %f", fCellSizeX.At(ilayer), fCellSizeZ.At(ilayer)));       
}
//_____________________________________________________________________________
void AliITSsegmentationUpgrade::SetFullSegmentation(TArrayD xsize, TArrayD zsize){
 
  if(xsize.GetSize()!=zsize.GetSize())AliDebug(1,"Be Carefull Array Size Differ!!");
    
  if(xsize.GetSize()!=fMaxRadius.GetSize())AliDebug(10,Form("Be Carefull Segmentation Array (%i) and Geometry Array Differ (%i)!!",xsize.GetSize(),fMaxRadius.GetSize()));
   
  for(Int_t ilayer=0; ilayer<fMaxRadius.GetSize(); ilayer++)SetSegmentation(ilayer, xsize.At(ilayer),  zsize.At(ilayer));
}
//_________________________________________________________________________________
void AliITSsegmentationUpgrade::GetSegmentation(Int_t ilayer, Double_t &xsize, Double_t &zsize ) const{
  
  xsize = fCellSizeX.At(ilayer);
  zsize =fCellSizeZ.At(ilayer);
}
//_____________________________________________________________________________
Bool_t  AliITSsegmentationUpgrade::GlobalToDet(Int_t ilayer, Double_t x,Double_t y,Double_t z,Double_t &xl,Double_t &zl) const{
  

  if(TMath::Abs(z)>fHalfLength.At(ilayer)) return kFALSE;
  
  zl = z;
  Double_t xyproj= TMath::Sqrt(x*x+y*y);
  if(xyproj==0 || xyproj-0.001 > fMaxRadius.At(ilayer))return kFALSE;  
  Double_t alpha= TMath::ATan2(y,x);
  if(x>0 && y<0)alpha=alpha+2.*(TMath::Pi());
  if(x<0 && y<0)alpha=alpha+2.*(TMath::Pi());
  xl = xyproj*alpha;

  return kTRUE;
}
//_____________________________________________________________________________
Bool_t AliITSsegmentationUpgrade::DetToGlobal(Int_t ilayer, Double_t xl,Double_t zl,Double_t &x,Double_t &y, Double_t &z) const {
  
  if(TMath::Abs(z)>fHalfLength.At(ilayer)) return kFALSE;
  z = zl;
  Double_t alpha = xl/fMaxRadius.At(ilayer);

  
  x = fMaxRadius.At(ilayer)*TMath::Cos(alpha);
  y = fMaxRadius.At(ilayer)*TMath::Sin(alpha);

  return kTRUE;
}
//_______________________________________________________________________________
void AliITSsegmentationUpgrade::GetNpad(Int_t ilayer, Int_t &nx, Int_t &nz){
      
  if(fCellSizeX.At(ilayer)==0)AliDebug(1,"Attention! Check your X Segmentation!!");
  if(fCellSizeZ.At(ilayer)==0)AliDebug(1,"Attention! Check your Z Segmentation!!");
     
  nx=(Int_t)(2.*TMath::Pi()*fMaxRadius.At(ilayer)/fCellSizeX.At(ilayer));
  nz=(Int_t)(2.*fHalfLength.At(ilayer)/fCellSizeZ.At(ilayer));     

}
//________________________________________________________________________________
Int_t AliITSsegmentationUpgrade::GetNLayers(){

  if(!gGeoManager) TGeoManager::Import("geometry.root");

  Int_t nlay=0;

  for(Int_t ivol=0; ivol<gGeoManager->GetListOfVolumes()->GetEntries();ivol++){
    TString volname = gGeoManager->GetListOfVolumes()->At(ivol)->GetName();
    if(!volname.Contains("Silicon")) continue;

    nlay++;

  }

  return nlay;




}
//__________________________________________________________________________________
Bool_t AliITSsegmentationUpgrade::DetToGlobal(Int_t ilayer, Int_t module, Double_t xl,Double_t zl,Double_t &x,Double_t &y, Double_t &z) const {
if(module<0){ DetToGlobal(ilayer,xl,zl, x, y, z);
return kTRUE;
}

 if(TMath::Abs(z)>fHalfLength.At(ilayer)) return kFALSE;
  z = zl;
  Double_t alpha = (xl+module*(fMaxRadius.At(ilayer)*((TMath::Pi()*2)/fNSectors)))/fMaxRadius.At(ilayer);


  x = fMaxRadius.At(ilayer)*TMath::Cos(alpha);
  y = fMaxRadius.At(ilayer)*TMath::Sin(alpha);

return kTRUE;
}
//_______________________________________________________________________________________________
Bool_t AliITSsegmentationUpgrade::GlobalToDet(Int_t ilayer, Double_t x,Double_t y,Double_t z,Double_t &xl,Double_t &zl,Int_t &module) const {
 if(module<0){
  GlobalToDet(ilayer,x,y,z, xl, zl);
  return kTRUE;
 }

  if(TMath::Abs(z)>fHalfLength.At(ilayer)) return kFALSE;

  zl = z;
 
 Double_t xyproj= TMath::Sqrt(x*x+y*y);
  if(xyproj==0 || xyproj-0.001 > fMaxRadius.At(ilayer)){
return kFALSE;
  }
  Double_t alpha= TMath::ATan2(y,x);
  if(x>0 && y<0)alpha=alpha+2.*(TMath::Pi());
  if(x<0 && y<0)alpha=alpha+2.*(TMath::Pi());
  
  module = (Int_t)(alpha*(fNSectors/(TMath::Pi()*2)));
  Double_t alphaSect= module*((TMath::Pi()*2)/fNSectors);
  xl = xyproj*(alpha-alphaSect);//with respect the module
  //AliInfo(Form(" globtodet con modulo x,y,z = %f, %f, %f,  alpha  %f  module %i alpha del modulo  %f  xlocal %f xlocal rispettp al modulo %f ", x,y,z,alpha,module, alphaSect, xyproj*alpha, xl));
  return kTRUE;
}
//____________________________________________________________________________________________________
Bool_t AliITSsegmentationUpgrade::DetToPixID(Double_t xl, Double_t zl,Int_t layer, Int_t &nx, Int_t &nz) const {

   if(xl>fMaxRadius.At(layer)*(TMath::Pi()*2/fNSectors))return kFALSE;
   if(TMath::Abs(zl)>fHalfLength.At(layer)) return kFALSE;

    nx=(Int_t)(xl/fCellSizeX.At(layer));
    //printf(" half %f \n ", fHalfLength.At(layer));
    nz=(Int_t)((zl+fHalfLength.At(layer))/fCellSizeZ.At(layer));
  return kTRUE; 
}
//_________________________________________________________________________________________________________
Bool_t AliITSsegmentationUpgrade::DetToTrack2(Int_t layer,Int_t module, Double_t xl,Double_t zl, Double_t &ytr, Double_t &ztr)const {
     //sistema di tracciamento la x=0, y è la rphi rispetto al centro del modulo
     //sistema locale è la y=0 x è rphi rispetto all'inizio del modulo 

     //voglio andare dalle locali alle tracciamento
      Double_t x=0.;
      Double_t y=0.;
      Double_t z=0.;
//     printf( " det to track xl %f  zl %f \n ", xl,  zl); 
      ztr = zl;
      Bool_t ch=kFALSE;
      ch=DetToGlobal(layer,module,xl,zl,x,y,z);      
      Double_t radius =fMaxRadius.At(layer);
      Double_t phiGrad;
      phiGrad=TMath::ATan2(y,x);//cluster phi angle (rad)
      if (phiGrad<0) phiGrad+=TMath::TwoPi();//from 0 to 360
      else if (phiGrad>=TMath::TwoPi()) phiGrad-=TMath::TwoPi();//

      Double_t alpha= (module*(((TMath::Pi()*2)/fNSectors))+(((TMath::Pi()*2)/fNSectors)/2));//angle at the center of the ladder (rad)

      Double_t phiTrk= (phiGrad-alpha);// cluster angle in the rotated system (rad)

      ytr=radius*phiTrk; // tracking system coordinate: r*phi
 //     AliInfo(Form( " det : x %f |  track y %f,  zeta %f ", xl, ytr,ztr));
 return kTRUE;
}
//__________________________________________
Bool_t AliITSsegmentationUpgrade::DetToTrack(Int_t layer,Int_t module, Double_t xl,Double_t zl, Double_t &ytr, Double_t &ztr)const {
     //sistema di tracciamento la x=0, y è la rphi rispetto al centro del modulo
     //sistema locale è la y=0 x è rphi rispetto all'inizio del modulo

     //voglio andare dalle locali alle tracciamento
      ztr = zl;
      Double_t radius =fMaxRadius.At(layer);
      Double_t alphaloc = module*(TMath::Pi()*2)/fNSectors; //alpha di riferimento per il modulo locale in rad     
      Double_t xlrif = alphaloc*radius;//xlocale di riferimento per questo modulo

      Double_t xlvera = xlrif + xl; // x locale vera rispetto a tutto il cilindro, per sapere a che angolo sto effettivamente

      Double_t alphaGlob = xlvera/radius; //in rad 

//da alpha vera posso ottenereinfo di tracciamento 

      Double_t alpha_track= (module*(((TMath::Pi()*2)/fNSectors))+(((TMath::Pi()*2)/fNSectors)/2));//angle at the center of the ladder (rad)

      Double_t phiTrk= (alphaGlob-alpha_track);// cluster angle in the rotated system (rad)

      ytr=radius*phiTrk; // tracking system coordinate: r*phi
//      AliInfo(Form( " det : x %f |  track y %f,  zeta %f ", xl, ytr,ztr));
 return kTRUE;
}
//_______________________
Int_t AliITSsegmentationUpgrade::GetModule(Double_t x,Double_t y)const{
  

  Double_t alpha= TMath::ATan2(y,x);
  if(x>0 && y<0)alpha=alpha+2.*(TMath::Pi());
  if(x<0 && y<0)alpha=alpha+2.*(TMath::Pi());

return GetModule(alpha);
}
//_______________________
Int_t AliITSsegmentationUpgrade::GetModule(Double_t phi) const {
// 
// sector corresponding to that phi [0,2Pi]
//

Int_t module = -1;
if(phi<0 || phi > TMath::TwoPi()) {
  AliError(Form("Phi is not within the acceptable range [0,2Pi] %f ",phi));
  }
else {
  module = (Int_t) (phi*((Double_t)fNSectors/(TMath::TwoPi())));
 } 

return module;

}
//_______________________
Double_t AliITSsegmentationUpgrade::GetAlpha(Int_t module)const{
//
// angle of the sector center
//
Double_t angle = TMath::DegToRad()*(360./fNSectors);
return module*angle+0.5*angle;

}



 AliITSsegmentationUpgrade.cxx:1
 AliITSsegmentationUpgrade.cxx:2
 AliITSsegmentationUpgrade.cxx:3
 AliITSsegmentationUpgrade.cxx:4
 AliITSsegmentationUpgrade.cxx:5
 AliITSsegmentationUpgrade.cxx:6
 AliITSsegmentationUpgrade.cxx:7
 AliITSsegmentationUpgrade.cxx:8
 AliITSsegmentationUpgrade.cxx:9
 AliITSsegmentationUpgrade.cxx:10
 AliITSsegmentationUpgrade.cxx:11
 AliITSsegmentationUpgrade.cxx:12
 AliITSsegmentationUpgrade.cxx:13
 AliITSsegmentationUpgrade.cxx:14
 AliITSsegmentationUpgrade.cxx:15
 AliITSsegmentationUpgrade.cxx:16
 AliITSsegmentationUpgrade.cxx:17
 AliITSsegmentationUpgrade.cxx:18
 AliITSsegmentationUpgrade.cxx:19
 AliITSsegmentationUpgrade.cxx:20
 AliITSsegmentationUpgrade.cxx:21
 AliITSsegmentationUpgrade.cxx:22
 AliITSsegmentationUpgrade.cxx:23
 AliITSsegmentationUpgrade.cxx:24
 AliITSsegmentationUpgrade.cxx:25
 AliITSsegmentationUpgrade.cxx:26
 AliITSsegmentationUpgrade.cxx:27
 AliITSsegmentationUpgrade.cxx:28
 AliITSsegmentationUpgrade.cxx:29
 AliITSsegmentationUpgrade.cxx:30
 AliITSsegmentationUpgrade.cxx:31
 AliITSsegmentationUpgrade.cxx:32
 AliITSsegmentationUpgrade.cxx:33
 AliITSsegmentationUpgrade.cxx:34
 AliITSsegmentationUpgrade.cxx:35
 AliITSsegmentationUpgrade.cxx:36
 AliITSsegmentationUpgrade.cxx:37
 AliITSsegmentationUpgrade.cxx:38
 AliITSsegmentationUpgrade.cxx:39
 AliITSsegmentationUpgrade.cxx:40
 AliITSsegmentationUpgrade.cxx:41
 AliITSsegmentationUpgrade.cxx:42
 AliITSsegmentationUpgrade.cxx:43
 AliITSsegmentationUpgrade.cxx:44
 AliITSsegmentationUpgrade.cxx:45
 AliITSsegmentationUpgrade.cxx:46
 AliITSsegmentationUpgrade.cxx:47
 AliITSsegmentationUpgrade.cxx:48
 AliITSsegmentationUpgrade.cxx:49
 AliITSsegmentationUpgrade.cxx:50
 AliITSsegmentationUpgrade.cxx:51
 AliITSsegmentationUpgrade.cxx:52
 AliITSsegmentationUpgrade.cxx:53
 AliITSsegmentationUpgrade.cxx:54
 AliITSsegmentationUpgrade.cxx:55
 AliITSsegmentationUpgrade.cxx:56
 AliITSsegmentationUpgrade.cxx:57
 AliITSsegmentationUpgrade.cxx:58
 AliITSsegmentationUpgrade.cxx:59
 AliITSsegmentationUpgrade.cxx:60
 AliITSsegmentationUpgrade.cxx:61
 AliITSsegmentationUpgrade.cxx:62
 AliITSsegmentationUpgrade.cxx:63
 AliITSsegmentationUpgrade.cxx:64
 AliITSsegmentationUpgrade.cxx:65
 AliITSsegmentationUpgrade.cxx:66
 AliITSsegmentationUpgrade.cxx:67
 AliITSsegmentationUpgrade.cxx:68
 AliITSsegmentationUpgrade.cxx:69
 AliITSsegmentationUpgrade.cxx:70
 AliITSsegmentationUpgrade.cxx:71
 AliITSsegmentationUpgrade.cxx:72
 AliITSsegmentationUpgrade.cxx:73
 AliITSsegmentationUpgrade.cxx:74
 AliITSsegmentationUpgrade.cxx:75
 AliITSsegmentationUpgrade.cxx:76
 AliITSsegmentationUpgrade.cxx:77
 AliITSsegmentationUpgrade.cxx:78
 AliITSsegmentationUpgrade.cxx:79
 AliITSsegmentationUpgrade.cxx:80
 AliITSsegmentationUpgrade.cxx:81
 AliITSsegmentationUpgrade.cxx:82
 AliITSsegmentationUpgrade.cxx:83
 AliITSsegmentationUpgrade.cxx:84
 AliITSsegmentationUpgrade.cxx:85
 AliITSsegmentationUpgrade.cxx:86
 AliITSsegmentationUpgrade.cxx:87
 AliITSsegmentationUpgrade.cxx:88
 AliITSsegmentationUpgrade.cxx:89
 AliITSsegmentationUpgrade.cxx:90
 AliITSsegmentationUpgrade.cxx:91
 AliITSsegmentationUpgrade.cxx:92
 AliITSsegmentationUpgrade.cxx:93
 AliITSsegmentationUpgrade.cxx:94
 AliITSsegmentationUpgrade.cxx:95
 AliITSsegmentationUpgrade.cxx:96
 AliITSsegmentationUpgrade.cxx:97
 AliITSsegmentationUpgrade.cxx:98
 AliITSsegmentationUpgrade.cxx:99
 AliITSsegmentationUpgrade.cxx:100
 AliITSsegmentationUpgrade.cxx:101
 AliITSsegmentationUpgrade.cxx:102
 AliITSsegmentationUpgrade.cxx:103
 AliITSsegmentationUpgrade.cxx:104
 AliITSsegmentationUpgrade.cxx:105
 AliITSsegmentationUpgrade.cxx:106
 AliITSsegmentationUpgrade.cxx:107
 AliITSsegmentationUpgrade.cxx:108
 AliITSsegmentationUpgrade.cxx:109
 AliITSsegmentationUpgrade.cxx:110
 AliITSsegmentationUpgrade.cxx:111
 AliITSsegmentationUpgrade.cxx:112
 AliITSsegmentationUpgrade.cxx:113
 AliITSsegmentationUpgrade.cxx:114
 AliITSsegmentationUpgrade.cxx:115
 AliITSsegmentationUpgrade.cxx:116
 AliITSsegmentationUpgrade.cxx:117
 AliITSsegmentationUpgrade.cxx:118
 AliITSsegmentationUpgrade.cxx:119
 AliITSsegmentationUpgrade.cxx:120
 AliITSsegmentationUpgrade.cxx:121
 AliITSsegmentationUpgrade.cxx:122
 AliITSsegmentationUpgrade.cxx:123
 AliITSsegmentationUpgrade.cxx:124
 AliITSsegmentationUpgrade.cxx:125
 AliITSsegmentationUpgrade.cxx:126
 AliITSsegmentationUpgrade.cxx:127
 AliITSsegmentationUpgrade.cxx:128
 AliITSsegmentationUpgrade.cxx:129
 AliITSsegmentationUpgrade.cxx:130
 AliITSsegmentationUpgrade.cxx:131
 AliITSsegmentationUpgrade.cxx:132
 AliITSsegmentationUpgrade.cxx:133
 AliITSsegmentationUpgrade.cxx:134
 AliITSsegmentationUpgrade.cxx:135
 AliITSsegmentationUpgrade.cxx:136
 AliITSsegmentationUpgrade.cxx:137
 AliITSsegmentationUpgrade.cxx:138
 AliITSsegmentationUpgrade.cxx:139
 AliITSsegmentationUpgrade.cxx:140
 AliITSsegmentationUpgrade.cxx:141
 AliITSsegmentationUpgrade.cxx:142
 AliITSsegmentationUpgrade.cxx:143
 AliITSsegmentationUpgrade.cxx:144
 AliITSsegmentationUpgrade.cxx:145
 AliITSsegmentationUpgrade.cxx:146
 AliITSsegmentationUpgrade.cxx:147
 AliITSsegmentationUpgrade.cxx:148
 AliITSsegmentationUpgrade.cxx:149
 AliITSsegmentationUpgrade.cxx:150
 AliITSsegmentationUpgrade.cxx:151
 AliITSsegmentationUpgrade.cxx:152
 AliITSsegmentationUpgrade.cxx:153
 AliITSsegmentationUpgrade.cxx:154
 AliITSsegmentationUpgrade.cxx:155
 AliITSsegmentationUpgrade.cxx:156
 AliITSsegmentationUpgrade.cxx:157
 AliITSsegmentationUpgrade.cxx:158
 AliITSsegmentationUpgrade.cxx:159
 AliITSsegmentationUpgrade.cxx:160
 AliITSsegmentationUpgrade.cxx:161
 AliITSsegmentationUpgrade.cxx:162
 AliITSsegmentationUpgrade.cxx:163
 AliITSsegmentationUpgrade.cxx:164
 AliITSsegmentationUpgrade.cxx:165
 AliITSsegmentationUpgrade.cxx:166
 AliITSsegmentationUpgrade.cxx:167
 AliITSsegmentationUpgrade.cxx:168
 AliITSsegmentationUpgrade.cxx:169
 AliITSsegmentationUpgrade.cxx:170
 AliITSsegmentationUpgrade.cxx:171
 AliITSsegmentationUpgrade.cxx:172
 AliITSsegmentationUpgrade.cxx:173
 AliITSsegmentationUpgrade.cxx:174
 AliITSsegmentationUpgrade.cxx:175
 AliITSsegmentationUpgrade.cxx:176
 AliITSsegmentationUpgrade.cxx:177
 AliITSsegmentationUpgrade.cxx:178
 AliITSsegmentationUpgrade.cxx:179
 AliITSsegmentationUpgrade.cxx:180
 AliITSsegmentationUpgrade.cxx:181
 AliITSsegmentationUpgrade.cxx:182
 AliITSsegmentationUpgrade.cxx:183
 AliITSsegmentationUpgrade.cxx:184
 AliITSsegmentationUpgrade.cxx:185
 AliITSsegmentationUpgrade.cxx:186
 AliITSsegmentationUpgrade.cxx:187
 AliITSsegmentationUpgrade.cxx:188
 AliITSsegmentationUpgrade.cxx:189
 AliITSsegmentationUpgrade.cxx:190
 AliITSsegmentationUpgrade.cxx:191
 AliITSsegmentationUpgrade.cxx:192
 AliITSsegmentationUpgrade.cxx:193
 AliITSsegmentationUpgrade.cxx:194
 AliITSsegmentationUpgrade.cxx:195
 AliITSsegmentationUpgrade.cxx:196
 AliITSsegmentationUpgrade.cxx:197
 AliITSsegmentationUpgrade.cxx:198
 AliITSsegmentationUpgrade.cxx:199
 AliITSsegmentationUpgrade.cxx:200
 AliITSsegmentationUpgrade.cxx:201
 AliITSsegmentationUpgrade.cxx:202
 AliITSsegmentationUpgrade.cxx:203
 AliITSsegmentationUpgrade.cxx:204
 AliITSsegmentationUpgrade.cxx:205
 AliITSsegmentationUpgrade.cxx:206
 AliITSsegmentationUpgrade.cxx:207
 AliITSsegmentationUpgrade.cxx:208
 AliITSsegmentationUpgrade.cxx:209
 AliITSsegmentationUpgrade.cxx:210
 AliITSsegmentationUpgrade.cxx:211
 AliITSsegmentationUpgrade.cxx:212
 AliITSsegmentationUpgrade.cxx:213
 AliITSsegmentationUpgrade.cxx:214
 AliITSsegmentationUpgrade.cxx:215
 AliITSsegmentationUpgrade.cxx:216
 AliITSsegmentationUpgrade.cxx:217
 AliITSsegmentationUpgrade.cxx:218
 AliITSsegmentationUpgrade.cxx:219
 AliITSsegmentationUpgrade.cxx:220
 AliITSsegmentationUpgrade.cxx:221
 AliITSsegmentationUpgrade.cxx:222
 AliITSsegmentationUpgrade.cxx:223
 AliITSsegmentationUpgrade.cxx:224
 AliITSsegmentationUpgrade.cxx:225
 AliITSsegmentationUpgrade.cxx:226
 AliITSsegmentationUpgrade.cxx:227
 AliITSsegmentationUpgrade.cxx:228
 AliITSsegmentationUpgrade.cxx:229
 AliITSsegmentationUpgrade.cxx:230
 AliITSsegmentationUpgrade.cxx:231
 AliITSsegmentationUpgrade.cxx:232
 AliITSsegmentationUpgrade.cxx:233
 AliITSsegmentationUpgrade.cxx:234
 AliITSsegmentationUpgrade.cxx:235
 AliITSsegmentationUpgrade.cxx:236
 AliITSsegmentationUpgrade.cxx:237
 AliITSsegmentationUpgrade.cxx:238
 AliITSsegmentationUpgrade.cxx:239
 AliITSsegmentationUpgrade.cxx:240
 AliITSsegmentationUpgrade.cxx:241
 AliITSsegmentationUpgrade.cxx:242
 AliITSsegmentationUpgrade.cxx:243
 AliITSsegmentationUpgrade.cxx:244
 AliITSsegmentationUpgrade.cxx:245
 AliITSsegmentationUpgrade.cxx:246
 AliITSsegmentationUpgrade.cxx:247
 AliITSsegmentationUpgrade.cxx:248
 AliITSsegmentationUpgrade.cxx:249
 AliITSsegmentationUpgrade.cxx:250
 AliITSsegmentationUpgrade.cxx:251
 AliITSsegmentationUpgrade.cxx:252
 AliITSsegmentationUpgrade.cxx:253
 AliITSsegmentationUpgrade.cxx:254
 AliITSsegmentationUpgrade.cxx:255
 AliITSsegmentationUpgrade.cxx:256
 AliITSsegmentationUpgrade.cxx:257
 AliITSsegmentationUpgrade.cxx:258
 AliITSsegmentationUpgrade.cxx:259
 AliITSsegmentationUpgrade.cxx:260
 AliITSsegmentationUpgrade.cxx:261
 AliITSsegmentationUpgrade.cxx:262
 AliITSsegmentationUpgrade.cxx:263
 AliITSsegmentationUpgrade.cxx:264
 AliITSsegmentationUpgrade.cxx:265
 AliITSsegmentationUpgrade.cxx:266
 AliITSsegmentationUpgrade.cxx:267
 AliITSsegmentationUpgrade.cxx:268
 AliITSsegmentationUpgrade.cxx:269
 AliITSsegmentationUpgrade.cxx:270
 AliITSsegmentationUpgrade.cxx:271
 AliITSsegmentationUpgrade.cxx:272
 AliITSsegmentationUpgrade.cxx:273
 AliITSsegmentationUpgrade.cxx:274
 AliITSsegmentationUpgrade.cxx:275
 AliITSsegmentationUpgrade.cxx:276
 AliITSsegmentationUpgrade.cxx:277
 AliITSsegmentationUpgrade.cxx:278
 AliITSsegmentationUpgrade.cxx:279
 AliITSsegmentationUpgrade.cxx:280
 AliITSsegmentationUpgrade.cxx:281
 AliITSsegmentationUpgrade.cxx:282
 AliITSsegmentationUpgrade.cxx:283
 AliITSsegmentationUpgrade.cxx:284
 AliITSsegmentationUpgrade.cxx:285
 AliITSsegmentationUpgrade.cxx:286
 AliITSsegmentationUpgrade.cxx:287
 AliITSsegmentationUpgrade.cxx:288
 AliITSsegmentationUpgrade.cxx:289
 AliITSsegmentationUpgrade.cxx:290
 AliITSsegmentationUpgrade.cxx:291
 AliITSsegmentationUpgrade.cxx:292
 AliITSsegmentationUpgrade.cxx:293
 AliITSsegmentationUpgrade.cxx:294
 AliITSsegmentationUpgrade.cxx:295
 AliITSsegmentationUpgrade.cxx:296
 AliITSsegmentationUpgrade.cxx:297
 AliITSsegmentationUpgrade.cxx:298
 AliITSsegmentationUpgrade.cxx:299
 AliITSsegmentationUpgrade.cxx:300
 AliITSsegmentationUpgrade.cxx:301
 AliITSsegmentationUpgrade.cxx:302
 AliITSsegmentationUpgrade.cxx:303
 AliITSsegmentationUpgrade.cxx:304
 AliITSsegmentationUpgrade.cxx:305
 AliITSsegmentationUpgrade.cxx:306
 AliITSsegmentationUpgrade.cxx:307
 AliITSsegmentationUpgrade.cxx:308
 AliITSsegmentationUpgrade.cxx:309
 AliITSsegmentationUpgrade.cxx:310
 AliITSsegmentationUpgrade.cxx:311
 AliITSsegmentationUpgrade.cxx:312
 AliITSsegmentationUpgrade.cxx:313
 AliITSsegmentationUpgrade.cxx:314
 AliITSsegmentationUpgrade.cxx:315
 AliITSsegmentationUpgrade.cxx:316
 AliITSsegmentationUpgrade.cxx:317
 AliITSsegmentationUpgrade.cxx:318
 AliITSsegmentationUpgrade.cxx:319
 AliITSsegmentationUpgrade.cxx:320
 AliITSsegmentationUpgrade.cxx:321
 AliITSsegmentationUpgrade.cxx:322
 AliITSsegmentationUpgrade.cxx:323
 AliITSsegmentationUpgrade.cxx:324
 AliITSsegmentationUpgrade.cxx:325
 AliITSsegmentationUpgrade.cxx:326
 AliITSsegmentationUpgrade.cxx:327
 AliITSsegmentationUpgrade.cxx:328
 AliITSsegmentationUpgrade.cxx:329
 AliITSsegmentationUpgrade.cxx:330
 AliITSsegmentationUpgrade.cxx:331
 AliITSsegmentationUpgrade.cxx:332
 AliITSsegmentationUpgrade.cxx:333
 AliITSsegmentationUpgrade.cxx:334
 AliITSsegmentationUpgrade.cxx:335
 AliITSsegmentationUpgrade.cxx:336
 AliITSsegmentationUpgrade.cxx:337
 AliITSsegmentationUpgrade.cxx:338
 AliITSsegmentationUpgrade.cxx:339
 AliITSsegmentationUpgrade.cxx:340