#include <TGeoManager.h>
#include "AliITSAlignMilleModule.h"
#include "AliITSgeomTGeo.h"
#include "AliGeomManager.h"
#include "AliAlignObjParams.h"
#include "AliLog.h"
ClassImp(AliITSAlignMilleModule)
AliITSAlignMilleModule::AliITSAlignMilleModule() : TNamed(),
fNSensVol(0),
fIndex(-1),
fVolumeID(0),
fMatrix(NULL),
fSensVolMatrix(NULL),
fSensVolModifMatrix(NULL),
fTempAlignObj(NULL)
{
fMatrix = new TGeoHMatrix;
fSensVolMatrix = new TGeoHMatrix;
fSensVolModifMatrix = new TGeoHMatrix;
fTempAlignObj=new AliAlignObjParams;
for(Int_t k=0; k<fgkSensModules; k++){
fSensVolIndex[k] = 0;
fSensVolVolumeID[k] = 0;
}
}
AliITSAlignMilleModule::AliITSAlignMilleModule(Int_t index, UShort_t volid, char* symname, const TGeoHMatrix *m, Int_t nsv, const UShort_t *volidsv) : TNamed(),
fNSensVol(0),
fIndex(-1),
fVolumeID(0),
fMatrix(NULL),
fSensVolMatrix(NULL),
fSensVolModifMatrix(NULL),
fTempAlignObj(NULL)
{
fMatrix = new TGeoHMatrix;
fSensVolMatrix = new TGeoHMatrix;
fSensVolModifMatrix = new TGeoHMatrix;
fTempAlignObj=new AliAlignObjParams;
if (Set(index,volid,symname,m,nsv,volidsv)) {
AliInfo("Error in AliITSAlignMilleModule::Set() - initializing void supermodule...");
}
for(Int_t k=0; k<fgkSensModules; k++){
fSensVolIndex[k] = 0;
fSensVolVolumeID[k] = 0;
}
}
AliITSAlignMilleModule::AliITSAlignMilleModule(UShort_t volid) : TNamed(),
fNSensVol(0),
fIndex(-1),
fVolumeID(0),
fMatrix(NULL),
fSensVolMatrix(NULL),
fSensVolModifMatrix(NULL),
fTempAlignObj(NULL)
{
fMatrix = new TGeoHMatrix;
fSensVolMatrix = new TGeoHMatrix;
fSensVolModifMatrix = new TGeoHMatrix;
fTempAlignObj=new AliAlignObjParams;
fIndex = GetIndexFromVolumeID(volid);
if (fIndex>=0 && gGeoManager) {
SetName(AliGeomManager::SymName(volid));
fVolumeID = volid;
AddSensitiveVolume(volid);
if (SensVolMatrix(volid, fMatrix))
AliInfo("Matrix not defined");
}
else {
AliInfo("Wrong VolumeID or Geometry not loaded - initializing void supermodule...");
for(Int_t k=0; k<fgkSensModules; k++){
fSensVolIndex[k] = 0;
fSensVolVolumeID[k] = 0;
}
}
}
AliITSAlignMilleModule::~AliITSAlignMilleModule() {
delete fMatrix;
delete fSensVolMatrix;
delete fSensVolModifMatrix;
delete fTempAlignObj;
}
Int_t AliITSAlignMilleModule::Set(Int_t index, UShort_t volid, char* symname, const TGeoHMatrix * const m, Int_t nsv, const UShort_t *volidsv)
{
if (index<2198) {
AliInfo("Index must be >= 2198");
return -1;
}
if (volid<14336) {
AliInfo("VolumeID must be >= 14336");
return -2;
}
if (!symname) return -3;
for (Int_t i=0; i<2198; i++) {
if (!strcmp(symname,AliITSgeomTGeo::GetSymName(i))) {
AliInfo("Symname already used by a Sensitive Volume");
return -3;
}
}
if (!m) return -4;
fIndex = index;
fVolumeID = volid;
SetName(symname);
(*fMatrix) = (*m);
for (Int_t i=0; i<nsv; i++) AddSensitiveVolume(volidsv[i]);
return 0;
}
Int_t AliITSAlignMilleModule::GetIndexFromVolumeID(UShort_t voluid) {
AliGeomManager::ELayerID lay = AliGeomManager::VolUIDToLayer(voluid);
if (lay<1|| lay>6) return -1;
Int_t idx=Int_t(voluid)-2048*lay;
if (idx>=AliGeomManager::LayerSize(lay)) return -1;
for (Int_t ilay=1; ilay<lay; ilay++)
idx += AliGeomManager::LayerSize(ilay);
return idx;
}
void AliITSAlignMilleModule::AddSensitiveVolume(UShort_t voluid)
{
if (GetIndexFromVolumeID(voluid)<0) return;
fSensVolVolumeID[fNSensVol] = voluid;
fSensVolIndex[fNSensVol] = GetIndexFromVolumeID(voluid);
fNSensVol++;
}
Bool_t AliITSAlignMilleModule::IsIn(UShort_t voluid) const
{
if (!voluid) return kFALSE;
for (Int_t i=0; i<fNSensVol; i++) {
if (fSensVolVolumeID[i]==voluid) return kTRUE;
}
return kFALSE;
}
TGeoHMatrix *AliITSAlignMilleModule::GetSensitiveVolumeModifiedMatrix(UShort_t voluid, const Double_t * const deltalocal)
{
if (!IsIn(voluid)) return NULL;
if (!gGeoManager) return NULL;
Double_t tr[3],ang[3];
tr[0]=deltalocal[0];
tr[1]=deltalocal[1];
tr[2]=deltalocal[2];
ang[0]=deltalocal[3];
ang[1]=deltalocal[4];
ang[2]=deltalocal[5];
fTempAlignObj->SetVolUID(0);
fTempAlignObj->SetSymName("");
fTempAlignObj->SetRotation(ang[0],ang[1],ang[2]);
fTempAlignObj->SetTranslation(tr[0],tr[1],tr[2]);
AliDebug(3,Form("Delta angles: psi=%f theta=%f phi=%f",ang[0],ang[1],ang[2]));
TGeoHMatrix hm;
fTempAlignObj->GetMatrix(hm);
if (SensVolMatrix(voluid, fSensVolModifMatrix)) return NULL;
fSensVolModifMatrix->MultiplyLeft( &fMatrix->Inverse() );
fSensVolModifMatrix->MultiplyLeft( &hm );
fSensVolModifMatrix->MultiplyLeft( fMatrix );
return fSensVolModifMatrix;
}
AliAlignObjParams *AliITSAlignMilleModule::GetSensitiveVolumeMisalignment(UShort_t voluid, const Double_t * const deltalocal)
{
if (!IsIn(voluid)) return NULL;
if (!gGeoManager) return NULL;
Double_t tr[3],ang[3];
tr[0]=deltalocal[0];
tr[1]=deltalocal[1];
tr[2]=deltalocal[2];
ang[0]=deltalocal[3];
ang[1]=deltalocal[4];
ang[2]=deltalocal[5];
fTempAlignObj->SetVolUID(0);
fTempAlignObj->SetSymName("");
fTempAlignObj->SetRotation(ang[0],ang[1],ang[2]);
fTempAlignObj->SetTranslation(tr[0],tr[1],tr[2]);
AliDebug(3,Form("Delta angles: psi=%f theta=%f phi=%f",ang[0],ang[1],ang[2]));
return GetSensitiveVolumeMisalignment(voluid,fTempAlignObj);
}
AliAlignObjParams *AliITSAlignMilleModule::GetSensitiveVolumeMisalignment(UShort_t voluid, const AliAlignObjParams *a)
{
if (!IsIn(voluid)) return NULL;
if (!gGeoManager) return NULL;
TGeoHMatrix dg;
a->GetMatrix(dg);
if (SensVolMatrix(voluid, fSensVolModifMatrix)) return NULL;
fSensVolModifMatrix->MultiplyLeft( &fMatrix->Inverse() );
fSensVolModifMatrix->MultiplyLeft( &dg );
fSensVolModifMatrix->MultiplyLeft( fMatrix );
if (SensVolMatrix(voluid, &dg)) return NULL;
fSensVolModifMatrix->MultiplyLeft( &dg.Inverse() );
fTempAlignObj->SetVolUID(0);
fTempAlignObj->SetSymName("");
fTempAlignObj->SetTranslation(0,0,0);
fTempAlignObj->SetRotation(0,0,0);
if (voluid>=2048 && voluid<4256) {
TGeoHMatrix deltay;
double dy[3]={0.,0.0081,0.};
deltay.SetTranslation(dy);
fSensVolModifMatrix->MultiplyLeft( &deltay );
fSensVolModifMatrix->Multiply( &deltay.Inverse() );
}
if (!fTempAlignObj->SetMatrix(*fSensVolModifMatrix)) return NULL;
fTempAlignObj->SetVolUID(voluid);
fTempAlignObj->SetSymName(AliGeomManager::SymName(voluid));
return fTempAlignObj;
}
AliAlignObjParams *AliITSAlignMilleModule::GetSensitiveVolumeTotalMisalignment(UShort_t voluid, const Double_t * const deltalocal)
{
if (!IsIn(voluid)) return NULL;
if (!gGeoManager) return NULL;
Double_t tr[3],ang[3];
tr[0]=deltalocal[0];
tr[1]=deltalocal[1];
tr[2]=deltalocal[2];
ang[0]=deltalocal[3];
ang[1]=deltalocal[4];
ang[2]=deltalocal[5];
fTempAlignObj->SetVolUID(0);
fTempAlignObj->SetSymName("");
fTempAlignObj->SetRotation(ang[0],ang[1],ang[2]);
fTempAlignObj->SetTranslation(tr[0],tr[1],tr[2]);
AliDebug(3,Form("Delta angles: psi=%f theta=%f phi=%f",ang[0],ang[1],ang[2]));
TGeoHMatrix dg;
fTempAlignObj->GetMatrix(dg);
if (SensVolMatrix(voluid, fSensVolModifMatrix)) return NULL;
fSensVolModifMatrix->MultiplyLeft( &fMatrix->Inverse() );
fSensVolModifMatrix->MultiplyLeft( &dg );
fSensVolModifMatrix->MultiplyLeft( fMatrix );
if (SensVolOrigGlobalMatrix(voluid, &dg)) return NULL;
fSensVolModifMatrix->MultiplyLeft( &dg.Inverse() );
fTempAlignObj->SetVolUID(0);
fTempAlignObj->SetSymName("");
fTempAlignObj->SetTranslation(0,0,0);
fTempAlignObj->SetRotation(0,0,0);
if (voluid>=2048 && voluid<4256) {
TGeoHMatrix deltay;
double dy[3]={0.,0.0081,0.};
deltay.SetTranslation(dy);
fSensVolModifMatrix->MultiplyLeft( &deltay );
fSensVolModifMatrix->Multiply( &deltay.Inverse() );
}
if (!fTempAlignObj->SetMatrix(*fSensVolModifMatrix)) return NULL;
fTempAlignObj->SetVolUID(voluid);
fTempAlignObj->SetSymName(AliGeomManager::SymName(voluid));
return fTempAlignObj;
}
AliAlignObjParams *AliITSAlignMilleModule::GetSensitiveVolumeGlobalMisalignment(UShort_t voluid, const Double_t * const deltalocal)
{
if (!IsIn(voluid)) return NULL;
if (!gGeoManager) return NULL;
Double_t tr[3],ang[3];
tr[0]=deltalocal[0];
tr[1]=deltalocal[1];
tr[2]=deltalocal[2];
ang[0]=deltalocal[3];
ang[1]=deltalocal[4];
ang[2]=deltalocal[5];
fTempAlignObj->SetTranslation(0,0,0);
fTempAlignObj->SetRotation(0,0,0);
fTempAlignObj->SetRotation(ang[0],ang[1],ang[2]);
fTempAlignObj->SetTranslation(tr[0],tr[1],tr[2]);
AliDebug(3,Form("Delta angles: psi=%f theta=%f phi=%f",ang[0],ang[1],ang[2]));
TGeoHMatrix dg;
fTempAlignObj->GetMatrix(dg);
dg.MultiplyLeft( fMatrix );
dg.Multiply( &fMatrix->Inverse() );
fTempAlignObj->SetTranslation(0,0,0);
fTempAlignObj->SetRotation(0,0,0);
fTempAlignObj->SetVolUID(voluid);
fTempAlignObj->SetSymName(AliGeomManager::SymName(voluid));
if (!fTempAlignObj->SetMatrix(dg)) return NULL;
return fTempAlignObj;
}
TGeoHMatrix *AliITSAlignMilleModule::GetSensitiveVolumeMatrix(UShort_t voluid)
{
if (SensVolMatrix(voluid,fSensVolMatrix)) return NULL;
return fSensVolMatrix;
}
TGeoHMatrix *AliITSAlignMilleModule::GetSensitiveVolumeOrigGlobalMatrix(UShort_t voluid)
{
if (SensVolOrigGlobalMatrix(voluid,fSensVolMatrix)) return NULL;
return fSensVolMatrix;
}
Int_t AliITSAlignMilleModule::SensVolMatrix(UShort_t volid, TGeoHMatrix *m)
{
Double_t rot[9];
Int_t idx=GetIndexFromVolumeID(volid);
if (idx<0) return -1;
if (!AliITSgeomTGeo::GetRotation(idx,rot)) return -2;
m->SetRotation(rot);
Double_t oLoc[3]={0,0,0};
Double_t oGlo[3]={0,0,0};
if (!AliITSgeomTGeo::LocalToGlobal(idx,oLoc,oGlo)) return -3;
m->SetTranslation(oGlo);
return 0;
}
Int_t AliITSAlignMilleModule::SensVolOrigGlobalMatrix(UShort_t volid, TGeoHMatrix *m)
{
Int_t idx=GetIndexFromVolumeID(volid);
if (idx<0) return -1;
TGeoHMatrix mo;
if (!AliGeomManager::GetOrigGlobalMatrix(AliGeomManager::SymName(volid),mo)) return -1;
(*m)=mo;
if (volid<5000) {
Double_t oLoc[3]={0.0,0.0081,0.0};
Double_t oGlo[3]={0,0,0};
m->LocalToMaster(oLoc,oGlo);
m->SetTranslation(oGlo);
}
return 0;
}
UShort_t AliITSAlignMilleModule::GetVolumeIDFromSymname(const Char_t *symname) {
if (!symname) return 0;
for (UShort_t voluid=2000; voluid<13300; voluid++) {
Int_t modId;
AliGeomManager::ELayerID layerId = AliGeomManager::VolUIDToLayer(voluid,modId);
if (layerId>0 && layerId<7 && modId>=0 && modId<AliGeomManager::LayerSize(layerId)) {
if (!strcmp(symname,AliGeomManager::SymName(layerId,modId))) return voluid;
}
}
return 0;
}
UShort_t AliITSAlignMilleModule::GetVolumeIDFromIndex(Int_t index) {
if (index<0 || index>2197) return 0;
return GetVolumeIDFromSymname(AliITSgeomTGeo::GetSymName(index));
}
void AliITSAlignMilleModule::Print(Option_t*) const
{
printf("*** ITS SuperModule for AliITSAlignMille ***\n");
printf("symname : %s\n",GetName());
printf("volumeID : %d\n",fVolumeID);
printf("index : %d\n",fIndex);
fMatrix->Print();
printf("number of sensitive modules : %d\n",fNSensVol);
for (Int_t i=0; i<fNSensVol; i++) printf(" voluid[%d] = %d\n",i,fSensVolVolumeID[i]);
}
AliITSAlignMilleModule::AliITSAlignMilleModule(const AliITSAlignMilleModule &m) :
TNamed(m),
fNSensVol(m.fNSensVol),
fIndex(m.fIndex),
fVolumeID(m.fVolumeID),
fMatrix(new TGeoHMatrix(*m.GetMatrix())),
fSensVolMatrix(new TGeoHMatrix),
fSensVolModifMatrix(new TGeoHMatrix),
fTempAlignObj(new AliAlignObjParams)
{
for(Int_t k=0; k<fgkSensModules; k++){
fSensVolIndex[k] = 0;
fSensVolVolumeID[k] = 0;
}
for (int i=0; i<fNSensVol; i++) {
fSensVolIndex[i]=m.fSensVolIndex[i];
fSensVolVolumeID[i]=m.fSensVolVolumeID[i];
}
}
AliITSAlignMilleModule& AliITSAlignMilleModule::operator=(const AliITSAlignMilleModule &m)
{
if(this==&m) return *this;
((TNamed *)this)->operator=(m);
fNSensVol=m.fNSensVol;
fIndex=m.fIndex;
fVolumeID=m.fVolumeID;
delete fMatrix;
fMatrix=new TGeoHMatrix(*m.GetMatrix());
for (int i=0; i<fNSensVol; i++) {
fSensVolIndex[i]=m.fSensVolIndex[i];
fSensVolVolumeID[i]=m.fSensVolVolumeID[i];
}
return *this;
}
AliITSAlignMilleModule.cxx:1 AliITSAlignMilleModule.cxx:2 AliITSAlignMilleModule.cxx:3 AliITSAlignMilleModule.cxx:4 AliITSAlignMilleModule.cxx:5 AliITSAlignMilleModule.cxx:6 AliITSAlignMilleModule.cxx:7 AliITSAlignMilleModule.cxx:8 AliITSAlignMilleModule.cxx:9 AliITSAlignMilleModule.cxx:10 AliITSAlignMilleModule.cxx:11 AliITSAlignMilleModule.cxx:12 AliITSAlignMilleModule.cxx:13 AliITSAlignMilleModule.cxx:14 AliITSAlignMilleModule.cxx:15 AliITSAlignMilleModule.cxx:16 AliITSAlignMilleModule.cxx:17 AliITSAlignMilleModule.cxx:18 AliITSAlignMilleModule.cxx:19 AliITSAlignMilleModule.cxx:20 AliITSAlignMilleModule.cxx:21 AliITSAlignMilleModule.cxx:22 AliITSAlignMilleModule.cxx:23 AliITSAlignMilleModule.cxx:24 AliITSAlignMilleModule.cxx:25 AliITSAlignMilleModule.cxx:26 AliITSAlignMilleModule.cxx:27 AliITSAlignMilleModule.cxx:28 AliITSAlignMilleModule.cxx:29 AliITSAlignMilleModule.cxx:30 AliITSAlignMilleModule.cxx:31 AliITSAlignMilleModule.cxx:32 AliITSAlignMilleModule.cxx:33 AliITSAlignMilleModule.cxx:34 AliITSAlignMilleModule.cxx:35 AliITSAlignMilleModule.cxx:36 AliITSAlignMilleModule.cxx:37 AliITSAlignMilleModule.cxx:38 AliITSAlignMilleModule.cxx:39 AliITSAlignMilleModule.cxx:40 AliITSAlignMilleModule.cxx:41 AliITSAlignMilleModule.cxx:42 AliITSAlignMilleModule.cxx:43 AliITSAlignMilleModule.cxx:44 AliITSAlignMilleModule.cxx:45 AliITSAlignMilleModule.cxx:46 AliITSAlignMilleModule.cxx:47 AliITSAlignMilleModule.cxx:48 AliITSAlignMilleModule.cxx:49 AliITSAlignMilleModule.cxx:50 AliITSAlignMilleModule.cxx:51 AliITSAlignMilleModule.cxx:52 AliITSAlignMilleModule.cxx:53 AliITSAlignMilleModule.cxx:54 AliITSAlignMilleModule.cxx:55 AliITSAlignMilleModule.cxx:56 AliITSAlignMilleModule.cxx:57 AliITSAlignMilleModule.cxx:58 AliITSAlignMilleModule.cxx:59 AliITSAlignMilleModule.cxx:60 AliITSAlignMilleModule.cxx:61 AliITSAlignMilleModule.cxx:62 AliITSAlignMilleModule.cxx:63 AliITSAlignMilleModule.cxx:64 AliITSAlignMilleModule.cxx:65 AliITSAlignMilleModule.cxx:66 AliITSAlignMilleModule.cxx:67 AliITSAlignMilleModule.cxx:68 AliITSAlignMilleModule.cxx:69 AliITSAlignMilleModule.cxx:70 AliITSAlignMilleModule.cxx:71 AliITSAlignMilleModule.cxx:72 AliITSAlignMilleModule.cxx:73 AliITSAlignMilleModule.cxx:74 AliITSAlignMilleModule.cxx:75 AliITSAlignMilleModule.cxx:76 AliITSAlignMilleModule.cxx:77 AliITSAlignMilleModule.cxx:78 AliITSAlignMilleModule.cxx:79 AliITSAlignMilleModule.cxx:80 AliITSAlignMilleModule.cxx:81 AliITSAlignMilleModule.cxx:82 AliITSAlignMilleModule.cxx:83 AliITSAlignMilleModule.cxx:84 AliITSAlignMilleModule.cxx:85 AliITSAlignMilleModule.cxx:86 AliITSAlignMilleModule.cxx:87 AliITSAlignMilleModule.cxx:88 AliITSAlignMilleModule.cxx:89 AliITSAlignMilleModule.cxx:90 AliITSAlignMilleModule.cxx:91 AliITSAlignMilleModule.cxx:92 AliITSAlignMilleModule.cxx:93 AliITSAlignMilleModule.cxx:94 AliITSAlignMilleModule.cxx:95 AliITSAlignMilleModule.cxx:96 AliITSAlignMilleModule.cxx:97 AliITSAlignMilleModule.cxx:98 AliITSAlignMilleModule.cxx:99 AliITSAlignMilleModule.cxx:100 AliITSAlignMilleModule.cxx:101 AliITSAlignMilleModule.cxx:102 AliITSAlignMilleModule.cxx:103 AliITSAlignMilleModule.cxx:104 AliITSAlignMilleModule.cxx:105 AliITSAlignMilleModule.cxx:106 AliITSAlignMilleModule.cxx:107 AliITSAlignMilleModule.cxx:108 AliITSAlignMilleModule.cxx:109 AliITSAlignMilleModule.cxx:110 AliITSAlignMilleModule.cxx:111 AliITSAlignMilleModule.cxx:112 AliITSAlignMilleModule.cxx:113 AliITSAlignMilleModule.cxx:114 AliITSAlignMilleModule.cxx:115 AliITSAlignMilleModule.cxx:116 AliITSAlignMilleModule.cxx:117 AliITSAlignMilleModule.cxx:118 AliITSAlignMilleModule.cxx:119 AliITSAlignMilleModule.cxx:120 AliITSAlignMilleModule.cxx:121 AliITSAlignMilleModule.cxx:122 AliITSAlignMilleModule.cxx:123 AliITSAlignMilleModule.cxx:124 AliITSAlignMilleModule.cxx:125 AliITSAlignMilleModule.cxx:126 AliITSAlignMilleModule.cxx:127 AliITSAlignMilleModule.cxx:128 AliITSAlignMilleModule.cxx:129 AliITSAlignMilleModule.cxx:130 AliITSAlignMilleModule.cxx:131 AliITSAlignMilleModule.cxx:132 AliITSAlignMilleModule.cxx:133 AliITSAlignMilleModule.cxx:134 AliITSAlignMilleModule.cxx:135 AliITSAlignMilleModule.cxx:136 AliITSAlignMilleModule.cxx:137 AliITSAlignMilleModule.cxx:138 AliITSAlignMilleModule.cxx:139 AliITSAlignMilleModule.cxx:140 AliITSAlignMilleModule.cxx:141 AliITSAlignMilleModule.cxx:142 AliITSAlignMilleModule.cxx:143 AliITSAlignMilleModule.cxx:144 AliITSAlignMilleModule.cxx:145 AliITSAlignMilleModule.cxx:146 AliITSAlignMilleModule.cxx:147 AliITSAlignMilleModule.cxx:148 AliITSAlignMilleModule.cxx:149 AliITSAlignMilleModule.cxx:150 AliITSAlignMilleModule.cxx:151 AliITSAlignMilleModule.cxx:152 AliITSAlignMilleModule.cxx:153 AliITSAlignMilleModule.cxx:154 AliITSAlignMilleModule.cxx:155 AliITSAlignMilleModule.cxx:156 AliITSAlignMilleModule.cxx:157 AliITSAlignMilleModule.cxx:158 AliITSAlignMilleModule.cxx:159 AliITSAlignMilleModule.cxx:160 AliITSAlignMilleModule.cxx:161 AliITSAlignMilleModule.cxx:162 AliITSAlignMilleModule.cxx:163 AliITSAlignMilleModule.cxx:164 AliITSAlignMilleModule.cxx:165 AliITSAlignMilleModule.cxx:166 AliITSAlignMilleModule.cxx:167 AliITSAlignMilleModule.cxx:168 AliITSAlignMilleModule.cxx:169 AliITSAlignMilleModule.cxx:170 AliITSAlignMilleModule.cxx:171 AliITSAlignMilleModule.cxx:172 AliITSAlignMilleModule.cxx:173 AliITSAlignMilleModule.cxx:174 AliITSAlignMilleModule.cxx:175 AliITSAlignMilleModule.cxx:176 AliITSAlignMilleModule.cxx:177 AliITSAlignMilleModule.cxx:178 AliITSAlignMilleModule.cxx:179 AliITSAlignMilleModule.cxx:180 AliITSAlignMilleModule.cxx:181 AliITSAlignMilleModule.cxx:182 AliITSAlignMilleModule.cxx:183 AliITSAlignMilleModule.cxx:184 AliITSAlignMilleModule.cxx:185 AliITSAlignMilleModule.cxx:186 AliITSAlignMilleModule.cxx:187 AliITSAlignMilleModule.cxx:188 AliITSAlignMilleModule.cxx:189 AliITSAlignMilleModule.cxx:190 AliITSAlignMilleModule.cxx:191 AliITSAlignMilleModule.cxx:192 AliITSAlignMilleModule.cxx:193 AliITSAlignMilleModule.cxx:194 AliITSAlignMilleModule.cxx:195 AliITSAlignMilleModule.cxx:196 AliITSAlignMilleModule.cxx:197 AliITSAlignMilleModule.cxx:198 AliITSAlignMilleModule.cxx:199 AliITSAlignMilleModule.cxx:200 AliITSAlignMilleModule.cxx:201 AliITSAlignMilleModule.cxx:202 AliITSAlignMilleModule.cxx:203 AliITSAlignMilleModule.cxx:204 AliITSAlignMilleModule.cxx:205 AliITSAlignMilleModule.cxx:206 AliITSAlignMilleModule.cxx:207 AliITSAlignMilleModule.cxx:208 AliITSAlignMilleModule.cxx:209 AliITSAlignMilleModule.cxx:210 AliITSAlignMilleModule.cxx:211 AliITSAlignMilleModule.cxx:212 AliITSAlignMilleModule.cxx:213 AliITSAlignMilleModule.cxx:214 AliITSAlignMilleModule.cxx:215 AliITSAlignMilleModule.cxx:216 AliITSAlignMilleModule.cxx:217 AliITSAlignMilleModule.cxx:218 AliITSAlignMilleModule.cxx:219 AliITSAlignMilleModule.cxx:220 AliITSAlignMilleModule.cxx:221 AliITSAlignMilleModule.cxx:222 AliITSAlignMilleModule.cxx:223 AliITSAlignMilleModule.cxx:224 AliITSAlignMilleModule.cxx:225 AliITSAlignMilleModule.cxx:226 AliITSAlignMilleModule.cxx:227 AliITSAlignMilleModule.cxx:228 AliITSAlignMilleModule.cxx:229 AliITSAlignMilleModule.cxx:230 AliITSAlignMilleModule.cxx:231 AliITSAlignMilleModule.cxx:232 AliITSAlignMilleModule.cxx:233 AliITSAlignMilleModule.cxx:234 AliITSAlignMilleModule.cxx:235 AliITSAlignMilleModule.cxx:236 AliITSAlignMilleModule.cxx:237 AliITSAlignMilleModule.cxx:238 AliITSAlignMilleModule.cxx:239 AliITSAlignMilleModule.cxx:240 AliITSAlignMilleModule.cxx:241 AliITSAlignMilleModule.cxx:242 AliITSAlignMilleModule.cxx:243 AliITSAlignMilleModule.cxx:244 AliITSAlignMilleModule.cxx:245 AliITSAlignMilleModule.cxx:246 AliITSAlignMilleModule.cxx:247 AliITSAlignMilleModule.cxx:248 AliITSAlignMilleModule.cxx:249 AliITSAlignMilleModule.cxx:250 AliITSAlignMilleModule.cxx:251 AliITSAlignMilleModule.cxx:252 AliITSAlignMilleModule.cxx:253 AliITSAlignMilleModule.cxx:254 AliITSAlignMilleModule.cxx:255 AliITSAlignMilleModule.cxx:256 AliITSAlignMilleModule.cxx:257 AliITSAlignMilleModule.cxx:258 AliITSAlignMilleModule.cxx:259 AliITSAlignMilleModule.cxx:260 AliITSAlignMilleModule.cxx:261 AliITSAlignMilleModule.cxx:262 AliITSAlignMilleModule.cxx:263 AliITSAlignMilleModule.cxx:264 AliITSAlignMilleModule.cxx:265 AliITSAlignMilleModule.cxx:266 AliITSAlignMilleModule.cxx:267 AliITSAlignMilleModule.cxx:268 AliITSAlignMilleModule.cxx:269 AliITSAlignMilleModule.cxx:270 AliITSAlignMilleModule.cxx:271 AliITSAlignMilleModule.cxx:272 AliITSAlignMilleModule.cxx:273 AliITSAlignMilleModule.cxx:274 AliITSAlignMilleModule.cxx:275 AliITSAlignMilleModule.cxx:276 AliITSAlignMilleModule.cxx:277 AliITSAlignMilleModule.cxx:278 AliITSAlignMilleModule.cxx:279 AliITSAlignMilleModule.cxx:280 AliITSAlignMilleModule.cxx:281 AliITSAlignMilleModule.cxx:282 AliITSAlignMilleModule.cxx:283 AliITSAlignMilleModule.cxx:284 AliITSAlignMilleModule.cxx:285 AliITSAlignMilleModule.cxx:286 AliITSAlignMilleModule.cxx:287 AliITSAlignMilleModule.cxx:288 AliITSAlignMilleModule.cxx:289 AliITSAlignMilleModule.cxx:290 AliITSAlignMilleModule.cxx:291 AliITSAlignMilleModule.cxx:292 AliITSAlignMilleModule.cxx:293 AliITSAlignMilleModule.cxx:294 AliITSAlignMilleModule.cxx:295 AliITSAlignMilleModule.cxx:296 AliITSAlignMilleModule.cxx:297 AliITSAlignMilleModule.cxx:298 AliITSAlignMilleModule.cxx:299 AliITSAlignMilleModule.cxx:300 AliITSAlignMilleModule.cxx:301 AliITSAlignMilleModule.cxx:302 AliITSAlignMilleModule.cxx:303 AliITSAlignMilleModule.cxx:304 AliITSAlignMilleModule.cxx:305 AliITSAlignMilleModule.cxx:306 AliITSAlignMilleModule.cxx:307 AliITSAlignMilleModule.cxx:308 AliITSAlignMilleModule.cxx:309 AliITSAlignMilleModule.cxx:310 AliITSAlignMilleModule.cxx:311 AliITSAlignMilleModule.cxx:312 AliITSAlignMilleModule.cxx:313 AliITSAlignMilleModule.cxx:314 AliITSAlignMilleModule.cxx:315 AliITSAlignMilleModule.cxx:316 AliITSAlignMilleModule.cxx:317 AliITSAlignMilleModule.cxx:318 AliITSAlignMilleModule.cxx:319 AliITSAlignMilleModule.cxx:320 AliITSAlignMilleModule.cxx:321 AliITSAlignMilleModule.cxx:322 AliITSAlignMilleModule.cxx:323 AliITSAlignMilleModule.cxx:324 AliITSAlignMilleModule.cxx:325 AliITSAlignMilleModule.cxx:326 AliITSAlignMilleModule.cxx:327 AliITSAlignMilleModule.cxx:328 AliITSAlignMilleModule.cxx:329 AliITSAlignMilleModule.cxx:330 AliITSAlignMilleModule.cxx:331 AliITSAlignMilleModule.cxx:332 AliITSAlignMilleModule.cxx:333 AliITSAlignMilleModule.cxx:334 AliITSAlignMilleModule.cxx:335 AliITSAlignMilleModule.cxx:336 AliITSAlignMilleModule.cxx:337 AliITSAlignMilleModule.cxx:338 AliITSAlignMilleModule.cxx:339 AliITSAlignMilleModule.cxx:340 AliITSAlignMilleModule.cxx:341 AliITSAlignMilleModule.cxx:342 AliITSAlignMilleModule.cxx:343 AliITSAlignMilleModule.cxx:344 AliITSAlignMilleModule.cxx:345 AliITSAlignMilleModule.cxx:346 AliITSAlignMilleModule.cxx:347 AliITSAlignMilleModule.cxx:348 AliITSAlignMilleModule.cxx:349 AliITSAlignMilleModule.cxx:350 AliITSAlignMilleModule.cxx:351 AliITSAlignMilleModule.cxx:352 AliITSAlignMilleModule.cxx:353 AliITSAlignMilleModule.cxx:354 AliITSAlignMilleModule.cxx:355 AliITSAlignMilleModule.cxx:356 AliITSAlignMilleModule.cxx:357 AliITSAlignMilleModule.cxx:358 AliITSAlignMilleModule.cxx:359 AliITSAlignMilleModule.cxx:360 AliITSAlignMilleModule.cxx:361 AliITSAlignMilleModule.cxx:362 AliITSAlignMilleModule.cxx:363 AliITSAlignMilleModule.cxx:364 AliITSAlignMilleModule.cxx:365 AliITSAlignMilleModule.cxx:366 AliITSAlignMilleModule.cxx:367 AliITSAlignMilleModule.cxx:368 AliITSAlignMilleModule.cxx:369 AliITSAlignMilleModule.cxx:370 AliITSAlignMilleModule.cxx:371 AliITSAlignMilleModule.cxx:372 AliITSAlignMilleModule.cxx:373 AliITSAlignMilleModule.cxx:374 AliITSAlignMilleModule.cxx:375 AliITSAlignMilleModule.cxx:376 AliITSAlignMilleModule.cxx:377 AliITSAlignMilleModule.cxx:378 AliITSAlignMilleModule.cxx:379 AliITSAlignMilleModule.cxx:380 AliITSAlignMilleModule.cxx:381 AliITSAlignMilleModule.cxx:382 AliITSAlignMilleModule.cxx:383 AliITSAlignMilleModule.cxx:384 AliITSAlignMilleModule.cxx:385 AliITSAlignMilleModule.cxx:386 AliITSAlignMilleModule.cxx:387 AliITSAlignMilleModule.cxx:388 AliITSAlignMilleModule.cxx:389 AliITSAlignMilleModule.cxx:390 AliITSAlignMilleModule.cxx:391 AliITSAlignMilleModule.cxx:392 AliITSAlignMilleModule.cxx:393 AliITSAlignMilleModule.cxx:394 AliITSAlignMilleModule.cxx:395 AliITSAlignMilleModule.cxx:396 AliITSAlignMilleModule.cxx:397 AliITSAlignMilleModule.cxx:398 AliITSAlignMilleModule.cxx:399 AliITSAlignMilleModule.cxx:400 AliITSAlignMilleModule.cxx:401 AliITSAlignMilleModule.cxx:402 AliITSAlignMilleModule.cxx:403 AliITSAlignMilleModule.cxx:404 AliITSAlignMilleModule.cxx:405 AliITSAlignMilleModule.cxx:406 AliITSAlignMilleModule.cxx:407 AliITSAlignMilleModule.cxx:408 AliITSAlignMilleModule.cxx:409 AliITSAlignMilleModule.cxx:410 AliITSAlignMilleModule.cxx:411 AliITSAlignMilleModule.cxx:412 AliITSAlignMilleModule.cxx:413 AliITSAlignMilleModule.cxx:414 AliITSAlignMilleModule.cxx:415 AliITSAlignMilleModule.cxx:416 AliITSAlignMilleModule.cxx:417 AliITSAlignMilleModule.cxx:418 AliITSAlignMilleModule.cxx:419 AliITSAlignMilleModule.cxx:420 AliITSAlignMilleModule.cxx:421 AliITSAlignMilleModule.cxx:422 AliITSAlignMilleModule.cxx:423 AliITSAlignMilleModule.cxx:424 AliITSAlignMilleModule.cxx:425 AliITSAlignMilleModule.cxx:426 AliITSAlignMilleModule.cxx:427 AliITSAlignMilleModule.cxx:428 AliITSAlignMilleModule.cxx:429 AliITSAlignMilleModule.cxx:430 AliITSAlignMilleModule.cxx:431 AliITSAlignMilleModule.cxx:432 AliITSAlignMilleModule.cxx:433 AliITSAlignMilleModule.cxx:434 AliITSAlignMilleModule.cxx:435 AliITSAlignMilleModule.cxx:436 AliITSAlignMilleModule.cxx:437 AliITSAlignMilleModule.cxx:438 AliITSAlignMilleModule.cxx:439 AliITSAlignMilleModule.cxx:440 AliITSAlignMilleModule.cxx:441 AliITSAlignMilleModule.cxx:442 AliITSAlignMilleModule.cxx:443 AliITSAlignMilleModule.cxx:444 AliITSAlignMilleModule.cxx:445 AliITSAlignMilleModule.cxx:446 AliITSAlignMilleModule.cxx:447 AliITSAlignMilleModule.cxx:448 AliITSAlignMilleModule.cxx:449 AliITSAlignMilleModule.cxx:450 AliITSAlignMilleModule.cxx:451 AliITSAlignMilleModule.cxx:452 AliITSAlignMilleModule.cxx:453 AliITSAlignMilleModule.cxx:454 AliITSAlignMilleModule.cxx:455 AliITSAlignMilleModule.cxx:456 AliITSAlignMilleModule.cxx:457 AliITSAlignMilleModule.cxx:458 AliITSAlignMilleModule.cxx:459 AliITSAlignMilleModule.cxx:460 AliITSAlignMilleModule.cxx:461 AliITSAlignMilleModule.cxx:462 AliITSAlignMilleModule.cxx:463 AliITSAlignMilleModule.cxx:464 AliITSAlignMilleModule.cxx:465 AliITSAlignMilleModule.cxx:466 AliITSAlignMilleModule.cxx:467 AliITSAlignMilleModule.cxx:468 AliITSAlignMilleModule.cxx:469 AliITSAlignMilleModule.cxx:470 AliITSAlignMilleModule.cxx:471 AliITSAlignMilleModule.cxx:472 AliITSAlignMilleModule.cxx:473 AliITSAlignMilleModule.cxx:474 AliITSAlignMilleModule.cxx:475 AliITSAlignMilleModule.cxx:476 AliITSAlignMilleModule.cxx:477 AliITSAlignMilleModule.cxx:478 AliITSAlignMilleModule.cxx:479 AliITSAlignMilleModule.cxx:480 AliITSAlignMilleModule.cxx:481 AliITSAlignMilleModule.cxx:482 AliITSAlignMilleModule.cxx:483 AliITSAlignMilleModule.cxx:484 AliITSAlignMilleModule.cxx:485 AliITSAlignMilleModule.cxx:486 AliITSAlignMilleModule.cxx:487 AliITSAlignMilleModule.cxx:488 AliITSAlignMilleModule.cxx:489 AliITSAlignMilleModule.cxx:490 AliITSAlignMilleModule.cxx:491 AliITSAlignMilleModule.cxx:492 AliITSAlignMilleModule.cxx:493 AliITSAlignMilleModule.cxx:494 AliITSAlignMilleModule.cxx:495 AliITSAlignMilleModule.cxx:496 AliITSAlignMilleModule.cxx:497 AliITSAlignMilleModule.cxx:498 AliITSAlignMilleModule.cxx:499 AliITSAlignMilleModule.cxx:500 AliITSAlignMilleModule.cxx:501 AliITSAlignMilleModule.cxx:502 AliITSAlignMilleModule.cxx:503 AliITSAlignMilleModule.cxx:504 AliITSAlignMilleModule.cxx:505 AliITSAlignMilleModule.cxx:506 AliITSAlignMilleModule.cxx:507 AliITSAlignMilleModule.cxx:508 AliITSAlignMilleModule.cxx:509 AliITSAlignMilleModule.cxx:510 AliITSAlignMilleModule.cxx:511 AliITSAlignMilleModule.cxx:512 AliITSAlignMilleModule.cxx:513 AliITSAlignMilleModule.cxx:514 AliITSAlignMilleModule.cxx:515 AliITSAlignMilleModule.cxx:516 AliITSAlignMilleModule.cxx:517 AliITSAlignMilleModule.cxx:518 AliITSAlignMilleModule.cxx:519 AliITSAlignMilleModule.cxx:520 AliITSAlignMilleModule.cxx:521 AliITSAlignMilleModule.cxx:522 AliITSAlignMilleModule.cxx:523 AliITSAlignMilleModule.cxx:524 AliITSAlignMilleModule.cxx:525 AliITSAlignMilleModule.cxx:526 AliITSAlignMilleModule.cxx:527 AliITSAlignMilleModule.cxx:528 AliITSAlignMilleModule.cxx:529 AliITSAlignMilleModule.cxx:530 AliITSAlignMilleModule.cxx:531 AliITSAlignMilleModule.cxx:532 AliITSAlignMilleModule.cxx:533 AliITSAlignMilleModule.cxx:534 AliITSAlignMilleModule.cxx:535 AliITSAlignMilleModule.cxx:536 AliITSAlignMilleModule.cxx:537 AliITSAlignMilleModule.cxx:538 AliITSAlignMilleModule.cxx:539 AliITSAlignMilleModule.cxx:540 AliITSAlignMilleModule.cxx:541 AliITSAlignMilleModule.cxx:542 AliITSAlignMilleModule.cxx:543 AliITSAlignMilleModule.cxx:544 AliITSAlignMilleModule.cxx:545 AliITSAlignMilleModule.cxx:546 AliITSAlignMilleModule.cxx:547 AliITSAlignMilleModule.cxx:548 AliITSAlignMilleModule.cxx:549 AliITSAlignMilleModule.cxx:550 AliITSAlignMilleModule.cxx:551 AliITSAlignMilleModule.cxx:552 AliITSAlignMilleModule.cxx:553 AliITSAlignMilleModule.cxx:554 AliITSAlignMilleModule.cxx:555 AliITSAlignMilleModule.cxx:556 AliITSAlignMilleModule.cxx:557 AliITSAlignMilleModule.cxx:558 AliITSAlignMilleModule.cxx:559 AliITSAlignMilleModule.cxx:560 AliITSAlignMilleModule.cxx:561 AliITSAlignMilleModule.cxx:562 AliITSAlignMilleModule.cxx:563 AliITSAlignMilleModule.cxx:564 AliITSAlignMilleModule.cxx:565 AliITSAlignMilleModule.cxx:566 AliITSAlignMilleModule.cxx:567 AliITSAlignMilleModule.cxx:568 AliITSAlignMilleModule.cxx:569 AliITSAlignMilleModule.cxx:570 AliITSAlignMilleModule.cxx:571 AliITSAlignMilleModule.cxx:572 AliITSAlignMilleModule.cxx:573 AliITSAlignMilleModule.cxx:574 AliITSAlignMilleModule.cxx:575 AliITSAlignMilleModule.cxx:576 AliITSAlignMilleModule.cxx:577 AliITSAlignMilleModule.cxx:578 AliITSAlignMilleModule.cxx:579 AliITSAlignMilleModule.cxx:580 AliITSAlignMilleModule.cxx:581 AliITSAlignMilleModule.cxx:582 AliITSAlignMilleModule.cxx:583 AliITSAlignMilleModule.cxx:584 AliITSAlignMilleModule.cxx:585 AliITSAlignMilleModule.cxx:586 AliITSAlignMilleModule.cxx:587 AliITSAlignMilleModule.cxx:588 AliITSAlignMilleModule.cxx:589 AliITSAlignMilleModule.cxx:590 AliITSAlignMilleModule.cxx:591 AliITSAlignMilleModule.cxx:592 AliITSAlignMilleModule.cxx:593 AliITSAlignMilleModule.cxx:594 AliITSAlignMilleModule.cxx:595 AliITSAlignMilleModule.cxx:596 AliITSAlignMilleModule.cxx:597 AliITSAlignMilleModule.cxx:598 AliITSAlignMilleModule.cxx:599 AliITSAlignMilleModule.cxx:600 AliITSAlignMilleModule.cxx:601 AliITSAlignMilleModule.cxx:602 AliITSAlignMilleModule.cxx:603 AliITSAlignMilleModule.cxx:604 AliITSAlignMilleModule.cxx:605 AliITSAlignMilleModule.cxx:606 AliITSAlignMilleModule.cxx:607 AliITSAlignMilleModule.cxx:608 AliITSAlignMilleModule.cxx:609 AliITSAlignMilleModule.cxx:610 AliITSAlignMilleModule.cxx:611 AliITSAlignMilleModule.cxx:612 AliITSAlignMilleModule.cxx:613 AliITSAlignMilleModule.cxx:614 AliITSAlignMilleModule.cxx:615 AliITSAlignMilleModule.cxx:616 AliITSAlignMilleModule.cxx:617 AliITSAlignMilleModule.cxx:618 AliITSAlignMilleModule.cxx:619 AliITSAlignMilleModule.cxx:620 AliITSAlignMilleModule.cxx:621 AliITSAlignMilleModule.cxx:622 AliITSAlignMilleModule.cxx:623 AliITSAlignMilleModule.cxx:624 AliITSAlignMilleModule.cxx:625 AliITSAlignMilleModule.cxx:626 AliITSAlignMilleModule.cxx:627 AliITSAlignMilleModule.cxx:628 AliITSAlignMilleModule.cxx:629 AliITSAlignMilleModule.cxx:630 AliITSAlignMilleModule.cxx:631 AliITSAlignMilleModule.cxx:632 AliITSAlignMilleModule.cxx:633 AliITSAlignMilleModule.cxx:634 AliITSAlignMilleModule.cxx:635 AliITSAlignMilleModule.cxx:636 AliITSAlignMilleModule.cxx:637 AliITSAlignMilleModule.cxx:638 AliITSAlignMilleModule.cxx:639 AliITSAlignMilleModule.cxx:640 AliITSAlignMilleModule.cxx:641 AliITSAlignMilleModule.cxx:642 AliITSAlignMilleModule.cxx:643 AliITSAlignMilleModule.cxx:644 AliITSAlignMilleModule.cxx:645 AliITSAlignMilleModule.cxx:646 AliITSAlignMilleModule.cxx:647 AliITSAlignMilleModule.cxx:648 AliITSAlignMilleModule.cxx:649 AliITSAlignMilleModule.cxx:650 AliITSAlignMilleModule.cxx:651 AliITSAlignMilleModule.cxx:652 AliITSAlignMilleModule.cxx:653 AliITSAlignMilleModule.cxx:654 AliITSAlignMilleModule.cxx:655 AliITSAlignMilleModule.cxx:656 AliITSAlignMilleModule.cxx:657 AliITSAlignMilleModule.cxx:658 AliITSAlignMilleModule.cxx:659 AliITSAlignMilleModule.cxx:660 AliITSAlignMilleModule.cxx:661 AliITSAlignMilleModule.cxx:662 AliITSAlignMilleModule.cxx:663 AliITSAlignMilleModule.cxx:664 AliITSAlignMilleModule.cxx:665 AliITSAlignMilleModule.cxx:666 AliITSAlignMilleModule.cxx:667 AliITSAlignMilleModule.cxx:668 AliITSAlignMilleModule.cxx:669 AliITSAlignMilleModule.cxx:670 AliITSAlignMilleModule.cxx:671 AliITSAlignMilleModule.cxx:672 AliITSAlignMilleModule.cxx:673 AliITSAlignMilleModule.cxx:674 AliITSAlignMilleModule.cxx:675 AliITSAlignMilleModule.cxx:676 AliITSAlignMilleModule.cxx:677 AliITSAlignMilleModule.cxx:678 AliITSAlignMilleModule.cxx:679 AliITSAlignMilleModule.cxx:680 AliITSAlignMilleModule.cxx:681 AliITSAlignMilleModule.cxx:682 AliITSAlignMilleModule.cxx:683 AliITSAlignMilleModule.cxx:684 AliITSAlignMilleModule.cxx:685 AliITSAlignMilleModule.cxx:686 AliITSAlignMilleModule.cxx:687 AliITSAlignMilleModule.cxx:688 AliITSAlignMilleModule.cxx:689 AliITSAlignMilleModule.cxx:690 AliITSAlignMilleModule.cxx:691 AliITSAlignMilleModule.cxx:692 AliITSAlignMilleModule.cxx:693 AliITSAlignMilleModule.cxx:694 AliITSAlignMilleModule.cxx:695 AliITSAlignMilleModule.cxx:696 AliITSAlignMilleModule.cxx:697 AliITSAlignMilleModule.cxx:698 AliITSAlignMilleModule.cxx:699 AliITSAlignMilleModule.cxx:700 AliITSAlignMilleModule.cxx:701