#include <TTree.h>
#include <TFile.h>
#include <TSystem.h>
#include <TChain.h>
#include <TNtuple.h>
#include <TList.h>
#include <TH1F.h>
#include <TH2F.h>
#include <TMap.h>
#include <TVector3.h>
#include <TGeoManager.h>
#include <TRandom.h>
#include "AliLog.h"
#include "AliCDBEntry.h"
#include "AliGeomManager.h"
#include "AliITSReconstructor.h"
#include "AliITSAlignMille2Module.h"
#include "AliITSgeomTGeo.h"
#include "AliTrackPointArray.h"
#include "AliESDInputHandler.h"
#include "AliESDVertex.h"
#include "AliESDtrack.h"
#include "AliESDEvent.h"
#include "AliESDfriend.h"
#include "AliAnalysisTaskSE.h"
#include "AliAnalysisManager.h"
#include "AliAlignmentDataFilterITS.h"
ClassImp(AliAlignmentDataFilterITS)
AliAlignmentDataFilterITS::AliAlignmentDataFilterITS():
AliAnalysisTaskSE(),
fOnlySPDFO(kFALSE),
fDownsamplelowpt(kFALSE),
fGeometryFileName("geometry.root"),
fITSRecoParam(0),
fESD(0),
fListOfHistos(0),
fspTree(0),
fHistNevents(0),
fHistNpoints(0),
fHistPt(0),
fHistLayer0(0),
fHistLayer1(0),
fHistLayer2(0),
fHistLayer3(0),
fHistLayer4(0),
fHistLayer5(0),
fntExtra(0),
fntCosmicMatching(0)
{
}
AliAlignmentDataFilterITS::AliAlignmentDataFilterITS(const char *name):
AliAnalysisTaskSE(name),
fOnlySPDFO(kFALSE),
fDownsamplelowpt(kFALSE),
fGeometryFileName("geometry.root"),
fITSRecoParam(0),
fESD(0),
fListOfHistos(0),
fspTree(0),
fHistNevents(0),
fHistNpoints(0),
fHistPt(0),
fHistLayer0(0),
fHistLayer1(0),
fHistLayer2(0),
fHistLayer3(0),
fHistLayer4(0),
fHistLayer5(0),
fntExtra(0),
fntCosmicMatching(0)
{
DefineOutput(1,TTree::Class());
DefineOutput(2,TList::Class());
}
AliAlignmentDataFilterITS::~AliAlignmentDataFilterITS()
{
if (fListOfHistos) {
delete fListOfHistos;
fListOfHistos = 0;
}
if (fspTree) {
delete fspTree;
fspTree = 0;
}
if (fHistNevents) {
delete fHistNevents;
fHistNevents = 0;
}
if (fHistNpoints) {
delete fHistNpoints;
fHistNpoints = 0;
}
if (fHistPt) {
delete fHistPt;
fHistPt = 0;
}
if (fHistLayer0) {
delete fHistLayer0;
fHistLayer0 = 0;
}
if (fHistLayer1) {
delete fHistLayer1;
fHistLayer1 = 0;
}
if (fHistLayer2) {
delete fHistLayer2;
fHistLayer2 = 0;
}
if (fHistLayer3) {
delete fHistLayer3;
fHistLayer3 = 0;
}
if (fHistLayer4) {
delete fHistLayer4;
fHistLayer4 = 0;
}
if (fHistLayer5) {
delete fHistLayer5;
fHistLayer5 = 0;
}
if (fntExtra) {
delete fntExtra;
fntExtra = 0;
}
if (fntCosmicMatching) {
delete fntCosmicMatching;
fntCosmicMatching = 0;
}
}
void AliAlignmentDataFilterITS::UserCreateOutputObjects()
{
if(!gGeoManager) {
printf("AliAlignmentDataFilterITS::CreateOutputObjects(): loading geometry from %s\n",fGeometryFileName.Data());
AliGeomManager::LoadGeometry(fGeometryFileName.Data());
if(!gGeoManager) {
printf("AliAlignmentDataFilterITS::CreateOutputObjects(): no geometry loaded \n");
return;
}
}
fListOfHistos = new TList();
fListOfHistos->SetOwner();
fHistNevents = new TH1F("fHistNevents", "Number of processed events; N events; bin",5,-0.5,4.5);
fHistNevents->Sumw2();
fHistNevents->SetMinimum(0);
fListOfHistos->Add(fHistNevents);
fHistNpoints = new TH1F("fHistNpoints", "Number of AliTrackPoints per track; N points; tracks",25,-0.5,24.5);
fHistNpoints->Sumw2();
fHistNpoints->SetMinimum(0);
fListOfHistos->Add(fHistNpoints);
fHistPt = new TH1F("fHistPt", "p_{t} of tracks; p_{t} [GeV/c]; tracks",100,0,50);
fHistPt->Sumw2();
fHistPt->SetMinimum(0);
fListOfHistos->Add(fHistPt);
Float_t zmax=14.;
Int_t nbinsphi=20,nbinsz=4;
fHistLayer0 = new TH2F("fHistLayer0","Points in layer inner SPD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer0);
zmax=14.;
nbinsphi=40;nbinsz=4;
fHistLayer1 = new TH2F("fHistLayer1","Points in layer outer SPD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer1);
zmax=22.;
nbinsphi=14;nbinsz=6;
fHistLayer2 = new TH2F("fHistLayer2","Points in layer inner SDD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer2);
zmax=29.5;
nbinsphi=22;nbinsz=8;
fHistLayer3 = new TH2F("fHistLayer3","Points in layer outer SDD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer3);
zmax=45.;
nbinsphi=34;nbinsz=23;
fHistLayer4 = new TH2F("fHistLayer4","Points in layer inner SSD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer4);
zmax=51.;
nbinsphi=38;nbinsz=26;
fHistLayer5 = new TH2F("fHistLayer5","Points in layer outer SSD; global #phi; global z [cm]",nbinsphi,-3.14,3.14,nbinsz,-zmax,zmax);
fListOfHistos->Add(fHistLayer5);
fntExtra = new TNtuple("fntExtra","extra clusters in ITS","ncls:layer:ladder:volid:phi:x:y:z:xloc:zloc:dxy:dz:d0mu:z0mu:pt");
fListOfHistos->Add(fntExtra);
fntCosmicMatching = new TNtuple("fntCosmicMatching","cosmic tracks matching in ITS","ncls1:ncls2:pt1:pt2:sigmad01:sigmad02:sigmaz01:sigmaz02:dxy:dz:phimu:thetamu:d0mu:z0mu");
fListOfHistos->Add(fntCosmicMatching);
fspTree = new TTree("spTree","Tree with ITS track points");
AliTrackPointArray *array = 0;
AliESDVertex *vertex = 0;
Float_t curv=0,curverr=0,runNumber=0;
TObjString *itsaligndata = 0;
TObjString *itscalibrespsdd = 0;
fspTree->Branch("SP","AliTrackPointArray",&array);
fspTree->Branch("vertex","AliESDVertex",&vertex);
fspTree->Branch("curv",&curv);
fspTree->Branch("curverr",&curverr);
fspTree->Branch("run",&runNumber);
fspTree->Branch("ITSAlignData",&itsaligndata);
fspTree->Branch("ITSCalibRespSDD",&itscalibrespsdd);
return;
}
void AliAlignmentDataFilterITS::UserExec(Option_t *)
{
if(!gGeoManager) {
printf("AliAlignmentDataFilterITS::Exec(): no geometry loaded \n");
return;
}
if(!GetRecoParam()) {
if(!fITSRecoParam) {
printf("AliAlignmentDataFilterITS::Exec(): no AliITSRecoParam\n");
return;
}
}
fESD = dynamic_cast<AliESDEvent*>(InputEvent());
if(!fESD) {
printf("AliAlignmentDataFilterITS::Exec(): no ESD \n");
return;
}
fHistNevents->Fill(0);
if(!((fspTree->GetUserInfo())->FindObject("BzkGauss"))) {
Double_t bz=fESD->GetMagneticField();
TString bzString; bzString+=bz;
TObjString *bzObjString = new TObjString(bzString);
TList *bzList = new TList();
bzList->SetOwner(1);
bzList->SetName("BzkGauss");
bzList->Add(bzObjString);
fspTree->GetUserInfo()->Add(bzList);
}
if(!((fspTree->GetUserInfo())->FindObject("cdbList"))) {
TTree* tree = dynamic_cast<TTree*> (GetInputData(0));
if(!tree) {
printf("ERROR: Could not read chain from input slot 0\n");
} else {
TMap *cdbMap = (TMap*)(tree->GetTree()->GetUserInfo())->FindObject("cdbMap");
TList *cdbList = (TList*)(tree->GetTree()->GetUserInfo())->FindObject("cdbList");
if(!fspTree) {
printf("ERROR: fspTree does not exist\n");
} else {
TMap *cdbMapCopy = new TMap(cdbMap->GetEntries());
cdbMapCopy->SetOwner(1);
cdbMapCopy->SetName("cdbMap");
TIter iter1(cdbMap->GetTable());
TPair* pair = 0;
while((pair = dynamic_cast<TPair*> (iter1.Next()))){
TObjString* keyStr = dynamic_cast<TObjString*> (pair->Key());
TObjString* valStr = dynamic_cast<TObjString*> (pair->Value());
if(keyStr && valStr) cdbMapCopy->Add(new TObjString(keyStr->GetName()), new TObjString(valStr->GetName()));
}
TList *cdbListCopy = new TList();
cdbListCopy->SetOwner(1);
cdbListCopy->SetName("cdbList");
TIter iter2(cdbList);
TObjString* cdbEntry=0;
while((cdbEntry =(TObjString*)(iter2.Next()))) {
cdbListCopy->Add(new TObjString(*cdbEntry));
}
cdbListCopy->Print();
fspTree->GetUserInfo()->Add(cdbMapCopy);
fspTree->GetUserInfo()->Add(cdbListCopy);
}
}
}
if(fESD->GetEventSpecie()<=1) {
printf("AliAlignmentDataFilterITS::Exec(): event specie not set !\n");
if(GetRecoParam()->GetAlignFilterCosmics()) {
FilterCosmic(fESD);
} else {
FilterCollision(fESD);
}
} else if(fESD->GetEventSpecie()==8) {
FilterCosmic(fESD);
} else {
FilterCollision(fESD);
}
PostData(2,fListOfHistos);
return;
}
void AliAlignmentDataFilterITS::FilterCosmic(const AliESDEvent *esd)
{
AliTrackPointArray *arrayForTree=0;
AliESDVertex *vertexForTree=0;
Float_t curv,curverr,runNumber;
TObjString *itsaligndata=0;
TObjString *itscalibrespsdd = 0;
fspTree->SetBranchAddress("SP",&arrayForTree);
fspTree->SetBranchAddress("vertex",&vertexForTree);
fspTree->SetBranchAddress("curv",&curv);
fspTree->SetBranchAddress("curverr",&curverr);
fspTree->SetBranchAddress("run",&runNumber);
fspTree->SetBranchAddress("ITSAlignData",&itsaligndata);
fspTree->SetBranchAddress("ITSCalibRespSDD",&itscalibrespsdd);
runNumber = (Float_t)esd->GetRunNumber();
Int_t uid=10000+esd->GetEventNumberInFile();
TTree* esdTree = dynamic_cast<TTree*> (GetInputData(0));
if(!esdTree) return;
TList *cdbList = (TList*)(esdTree->GetTree()->GetUserInfo())->FindObject("cdbList");
TIter iter2(cdbList);
TObjString* cdbEntry=0;
TString cdbEntryString;
while((cdbEntry =(TObjString*)(iter2.Next()))) {
cdbEntryString = cdbEntry->GetString();
if(cdbEntryString.Contains("ITS/Align/Data")) {
itsaligndata = new TObjString(*cdbEntry);
itsaligndata->SetString(itsaligndata->GetString());
}
if(cdbEntryString.Contains("ITS/Calib/RespSDD")) {
itscalibrespsdd = new TObjString(*cdbEntry);
itscalibrespsdd->SetString(itscalibrespsdd->GetString());
}
}
TString triggeredClass = esd->GetFiredTriggerClasses();
if(fOnlySPDFO && !triggeredClass.Contains("C0SCO-ABCE-NOPF-CENT")) return;
Int_t ntracks = esd->GetNumberOfTracks();
if(ntracks<2) return;
if(esd->GetPrimaryVertexSPD()->GetNContributors()<0) return;
Double_t vtxpos[3]; esd->GetPrimaryVertexSPD()->GetXYZ(vtxpos);
Int_t *goodtracksArray = new Int_t[ntracks];
Float_t *phiArray = new Float_t[ntracks];
Float_t *thetaArray = new Float_t[ntracks];
Int_t *nclsArray = new Int_t[ntracks];
Int_t ngt=0;
Int_t itrack=0;
for (itrack=0; itrack < ntracks; itrack++) {
AliESDtrack *track = esd->GetTrack(itrack);
if (!track) continue;
if(track->GetNcls(0)<GetRecoParam()->GetAlignFilterMinITSPoints()) continue;
if((GetRecoParam()->GetAlignFilterOnlyITSSATracks()) && track->GetNcls(1)>0) continue;
if((GetRecoParam()->GetAlignFilterOnlyITSTPCTracks()) && track->GetNcls(1)==0) continue;
Float_t phi = track->GetAlpha()+TMath::ASin(track->GetSnp());
Float_t theta = 0.5*TMath::Pi()-TMath::ATan(track->GetTgl());
if(track->Pt()<GetRecoParam()->GetAlignFilterMinPt() ||
track->Pt()>GetRecoParam()->GetAlignFilterMaxPt()) continue;
goodtracksArray[ngt] = itrack;
phiArray[ngt] = phi;
thetaArray[ngt] = theta;
nclsArray[ngt] = track->GetNcls(0);
ngt++;
}
if(ngt<2) {
delete [] goodtracksArray; goodtracksArray=0;
delete [] phiArray; phiArray=0;
delete [] thetaArray; thetaArray=0;
delete [] nclsArray; nclsArray=0;
return;
}
Float_t min = 10000000.;
Int_t maxCls = 0;
Int_t good1 = -1, good2 = -1;
for(Int_t itr1=0; itr1<ngt-1; itr1++) {
for(Int_t itr2=itr1+1; itr2<ngt; itr2++) {
Float_t deltatheta = TMath::Abs(TMath::Pi()-thetaArray[itr1]-thetaArray[itr2]);
if(deltatheta>GetRecoParam()->GetAlignFilterMaxMatchingAngle()) continue;
Float_t deltaphi = TMath::Abs(TMath::Abs(phiArray[itr1]-phiArray[itr2])-TMath::Pi());
if(deltaphi>GetRecoParam()->GetAlignFilterMaxMatchingAngle()) continue;
if(nclsArray[itr1]+nclsArray[itr2] > maxCls) {
maxCls = nclsArray[itr1]+nclsArray[itr2];
min = deltatheta+deltaphi;
good1 = goodtracksArray[itr1];
good2 = goodtracksArray[itr2];
} else if(nclsArray[itr1]+nclsArray[itr2] == maxCls) {
if(deltatheta+deltaphi < min) {
min = deltatheta+deltaphi;
good1 = goodtracksArray[itr1];
good2 = goodtracksArray[itr2];
}
}
}
}
delete [] goodtracksArray; goodtracksArray=0;
delete [] phiArray; phiArray=0;
delete [] thetaArray; thetaArray=0;
delete [] nclsArray; nclsArray=0;
if(good1<0) return;
AliDebug(2,"ok track matching");
AliESDtrack *track1=0;
AliESDtrack *track2=0;
AliESDtrack *track = esd->GetTrack(good1);
if(track->Py()>0) {
track1 = esd->GetTrack(good1);
track2 = esd->GetTrack(good2);
} else {
track1 = esd->GetTrack(good2);
track2 = esd->GetTrack(good1);
}
AliTrackPoint point;
const AliTrackPointArray *array=0;
Int_t ipt,volId,modId,layerId,lay,lad,det;
Int_t jpt=0;
Bool_t layerOK[6][2];
Int_t nclsTrk[2]={0,0};
for(Int_t l1=0;l1<6;l1++) for(Int_t l2=0;l2<2;l2++) layerOK[l1][l2]=kFALSE;
for(itrack=0; itrack<2; itrack++) {
if(itrack==0) {
track = track1;
} else {
track = track2;
}
array = track->GetTrackPointArray();
if(!array) {
AliWarning("No tracks points avaialble");
continue;
}
for(ipt=0; ipt<array->GetNPoints(); ipt++) {
array->GetPoint(point,ipt);
volId = point.GetVolumeID();
if(volId<=0) continue;
layerId = AliGeomManager::VolUIDToLayer(volId,modId);
AliDebug(2,Form("%d %d %d %f\n",ipt,layerId-1,volId,TMath::Sqrt(point.GetX()*point.GetX()+point.GetY()*point.GetY())));
if(point.IsExtra() &&
(GetRecoParam()->GetAlignFilterSkipExtra())) continue;
if(layerId<1 || layerId>6) continue;
if(!GetRecoParam()->GetAlignFilterUseLayer(layerId-1)) continue;
Double_t p[3]; track->GetDirection(p);
TVector3 pvec(p[0],p[1],p[2]);
Double_t rot[9]; AliGeomManager::GetOrigRotation(volId,rot);
TVector3 normvec(rot[1],rot[4],rot[7]);
Double_t angle = pvec.Angle(normvec);
if(angle>0.5*TMath::Pi()) angle = TMath::Pi()-angle;
angle = 0.5*TMath::Pi()-angle;
if(angle<GetRecoParam()->GetAlignFilterMinAngleWrtModulePlanes()) continue;
layerOK[layerId-1][itrack]=kTRUE;
jpt++;
nclsTrk[itrack]++;
}
}
AliDebug(2,Form("nClsTrk1 %d nClsTrk2 %d\n",nclsTrk[0],nclsTrk[1]));
Int_t map1[6],map2[6];
for(Int_t ilay=0;ilay<6;ilay++) {
map1[ilay]=0; map2[ilay]=0;
if(track1->HasPointOnITSLayer(ilay)) map1[ilay]=1;
if(track2->HasPointOnITSLayer(ilay)) map2[ilay]=1;
}
AliDebug(2,Form("ITS map 1: %d %d %d %d %d %d pt %f\n",map1[0],map1[1],map1[2],map1[3],map1[4],map1[5],track1->Pt()));
AliDebug(2,Form("ITS map 2: %d %d %d %d %d %d pt %f\n",map2[0],map2[1],map2[2],map2[3],map2[4],map2[5],track2->Pt()));
Int_t idx1[12],idx2[12];
track1->GetITSclusters(idx1);
track2->GetITSclusters(idx2);
AliDebug(2,Form("cls idx 1 %d %d %d %d %d %d %d %d %d %d %d %d\n",idx1[0],idx1[1],idx1[2],idx1[3],idx1[4],idx1[5],idx1[6],idx1[7],idx1[8],idx1[9],idx1[10],idx1[11]));
AliDebug(2,Form("cls idx 2 %d %d %d %d %d %d %d %d %d %d %d %d\n",idx2[0],idx2[1],idx2[2],idx2[3],idx2[4],idx2[5],idx2[6],idx2[7],idx2[8],idx2[9],idx2[10],idx2[11]));
if(jpt<GetRecoParam()->GetAlignFilterMinITSPointsMerged()) return;
AliDebug(2,Form(" Total points %d, accepted\n",jpt));
fHistNpoints->Fill(jpt);
fHistPt->Fill(0.5*(track1->Pt()+track2->Pt()));
Float_t d0z0mu[2];
track1->GetDZ(0,0,0,esd->GetMagneticField(),d0z0mu);
vertexForTree = new AliESDVertex(*(esd->GetPrimaryVertexSPD()));
vertexForTree->SetID(0);
Float_t dzOverlap[2];
Float_t curvArray[2],curverrArray[2];
Double_t globExtra[3],locExtra[3];
if(GetRecoParam()->GetAlignFilterCosmicMergeTracks()) {
arrayForTree = new AliTrackPointArray(jpt);
arrayForTree->SetUniqueID(uid);
}
jpt=0;
for(itrack=0; itrack<2; itrack++) {
if(itrack==0) {
track = track1;
} else {
track = track2;
}
curvArray[itrack] = track->GetC(esd->GetMagneticField());
curverrArray[itrack] = TMath::Sqrt(track->GetSigma1Pt2())*track->GetC(esd->GetMagneticField())/track->OneOverPt();
if(!(GetRecoParam()->GetAlignFilterCosmicMergeTracks())) {
jpt=0;
arrayForTree = new AliTrackPointArray(nclsTrk[itrack]);
arrayForTree->SetUniqueID(uid);
}
array = track->GetTrackPointArray();
for(ipt=0; ipt<array->GetNPoints(); ipt++) {
array->GetPoint(point,ipt);
volId = point.GetVolumeID();
if(volId<=0) continue;
layerId = AliGeomManager::VolUIDToLayer(volId,modId);
if(layerId<1 || layerId>6 || !layerOK[layerId-1][itrack]) continue;
arrayForTree->AddPoint(jpt,&point);
jpt++;
switch(layerId) {
case 1:
fHistLayer0->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 2:
fHistLayer1->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 3:
fHistLayer2->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 4:
fHistLayer3->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 5:
fHistLayer4->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 6:
fHistLayer5->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
}
if(jpt==1) PostData(2,fListOfHistos);
if(!point.IsExtra() ||
!(GetRecoParam()->GetAlignFilterFillQANtuples())) continue;
nclsTrk[itrack]--;
for(Int_t ll=1;ll<layerId;ll++) modId+=AliITSgeomTGeo::GetNLadders(ll)*AliITSgeomTGeo::GetNDetectors(ll);
AliITSgeomTGeo::GetModuleId(modId,lay,lad,det);
globExtra[0]=point.GetX();
globExtra[1]=point.GetY();
globExtra[2]=point.GetZ();
AliITSgeomTGeo::GlobalToLocal(lay,lad,det,globExtra,locExtra);
track->GetDZ(point.GetX(),point.GetY(),point.GetZ(),esd->GetMagneticField(),dzOverlap);
AliTrackPoint pointT;
Float_t radius,radiusT,phiv,phivT,thetav,thetavT;
for(Int_t lll=0;lll<ipt;lll++) {
array->GetPoint(pointT,lll);
if(pointT.GetVolumeID()<=0) continue;
Int_t layerIdT = AliGeomManager::VolUIDToLayer(pointT.GetVolumeID(),modId);
if(layerIdT!=layerId) continue;
radius=TMath::Sqrt((point.GetX()-vtxpos[0])*(point.GetX()-vtxpos[0])+(point.GetY()-vtxpos[1])*(point.GetY()-vtxpos[1]));
radiusT=TMath::Sqrt((pointT.GetX()-vtxpos[0])*(pointT.GetX()-vtxpos[0])+(pointT.GetY()-vtxpos[1])*(pointT.GetY()-vtxpos[1]));
phiv=TMath::ATan2(point.GetY()-vtxpos[1],point.GetX()-vtxpos[0]);
phivT=TMath::ATan2(pointT.GetY()-vtxpos[1],pointT.GetX()-vtxpos[0]);
if(TMath::Abs(point.GetZ()-vtxpos[2])<0.00001 || TMath::Abs(pointT.GetZ()-vtxpos[2])<0.00001) continue;
thetav=TMath::ATan(radius/(point.GetZ()-vtxpos[2]));
thetavT=TMath::ATan(radiusT/(pointT.GetZ()-vtxpos[2]));
dzOverlap[0]=(Float_t)((phivT-phiv)*0.5*(radiusT+radius));
if(TMath::Abs(TMath::Tan(0.5*(thetav+thetavT)))<0.00001) continue;
dzOverlap[1]=(Float_t)((pointT.GetZ()-point.GetZ())-(radiusT-radius)/TMath::Tan(0.5*(thetav+thetavT)));
fntExtra->Fill((Float_t)nclsTrk[itrack],(Float_t)(layerId-1),lad,volId,TMath::ATan2(point.GetY(),point.GetX()),point.GetX(),point.GetY(),point.GetZ(),locExtra[0],locExtra[2],dzOverlap[0],dzOverlap[1],d0z0mu[0],d0z0mu[1],track->Pt());
}
}
if(!(GetRecoParam()->GetAlignFilterCosmicMergeTracks())) {
curv = curvArray[itrack];
curverr = curverrArray[itrack];
fspTree->Fill();
}
}
if(GetRecoParam()->GetAlignFilterCosmicMergeTracks()) {
curv = 0.5*(curvArray[0]-curvArray[1]);
curverr = 0.5*TMath::Sqrt(curverrArray[0]*curverrArray[0]+curverrArray[1]*curverrArray[1]);
fspTree->Fill();
}
PostData(1,fspTree);
if(!(GetRecoParam()->GetAlignFilterFillQANtuples())) return;
Float_t phimu,thetamu,phiout,thetaout,dphi,dtheta,rotymu,rotyout,droty;
Float_t d0[2],z0[2];
Float_t sigmad0[2],sigmaz0[2];
phimu = track1->GetAlpha()+TMath::ASin(track1->GetSnp());
thetamu = 0.5*TMath::Pi()-TMath::ATan(track1->GetTgl());
phiout = track2->GetAlpha()+TMath::ASin(track2->GetSnp());
thetaout = 0.5*TMath::Pi()-TMath::ATan(track2->GetTgl());
rotymu = TMath::ATan2(track1->Px(),track1->Pz());
rotyout = TMath::ATan2(track2->Px(),track2->Pz());
dphi = phimu - (phiout+TMath::Pi());
dtheta = thetamu - (TMath::Pi()-thetaout);
if(rotymu>0) {
droty = rotymu - (rotyout+TMath::Pi());
} else {
droty = rotymu - (rotyout-TMath::Pi());
}
Double_t alpha = TMath::ATan2(track1->Py(),track1->Px());
track1->Propagate(alpha,0.,esd->GetMagneticField());
track2->Propagate(alpha,0.,esd->GetMagneticField());
d0[0] = track1->GetY();
z0[0] = track1->GetZ();
d0[1] = track2->GetY();
z0[1] = track2->GetZ();
Float_t dxy = -(d0[0]-d0[1]);
Float_t dz = z0[0]-z0[1];
sigmad0[0] = TMath::Sqrt(track1->GetSigmaY2());
sigmaz0[0] = TMath::Sqrt(track1->GetSigmaZ2());
sigmad0[1] = TMath::Sqrt(track2->GetSigmaY2());
sigmaz0[1] = TMath::Sqrt(track2->GetSigmaZ2());
fntCosmicMatching->Fill((Float_t)nclsTrk[0],(Float_t)nclsTrk[1],track1->Pt(),track2->Pt(),sigmad0[0],sigmad0[1],sigmaz0[0],sigmaz0[1],dxy,dz,phimu,thetamu,TMath::Abs(d0z0mu[0]),d0z0mu[1]);
return;
}
void AliAlignmentDataFilterITS::FilterCollision(const AliESDEvent *esd)
{
AliTrackPointArray *arrayForTree=0;
AliESDVertex *vertexForTree=0;
Float_t curv,curverr,runNumber;
TObjString *itsaligndata=0;
TObjString *itscalibrespsdd = 0;
fspTree->SetBranchAddress("SP",&arrayForTree);
fspTree->SetBranchAddress("vertex",&vertexForTree);
fspTree->SetBranchAddress("curv",&curv);
fspTree->SetBranchAddress("curverr",&curverr);
fspTree->SetBranchAddress("run",&runNumber);
fspTree->SetBranchAddress("ITSAlignData",&itsaligndata);
fspTree->SetBranchAddress("ITSCalibRespSDD",&itscalibrespsdd);
runNumber = (Float_t)esd->GetRunNumber();
Int_t uid=20000+esd->GetEventNumberInFile();
TTree* esdTree = dynamic_cast<TTree*> (GetInputData(0));
if(!esdTree) return;
TList *cdbList = (TList*)(esdTree->GetTree()->GetUserInfo())->FindObject("cdbList");
TIter iter2(cdbList);
TObjString* cdbEntry=0;
TString cdbEntryString;
while((cdbEntry =(TObjString*)(iter2.Next()))) {
cdbEntryString = cdbEntry->GetString();
if(cdbEntryString.Contains("ITS/Align/Data")) {
itsaligndata = new TObjString(*cdbEntry);
itsaligndata->SetString(itsaligndata->GetString());
}
if(cdbEntryString.Contains("ITS/Calib/RespSDD")) {
itscalibrespsdd = new TObjString(*cdbEntry);
itscalibrespsdd->SetString(itscalibrespsdd->GetString());
}
}
Int_t ntracks = esd->GetNumberOfTracks();
if(ntracks==0) return;
const AliESDVertex *vertexTracks = esd->GetPrimaryVertexTracks();
if(!vertexTracks) return;
if(vertexTracks->GetNContributors()<=0) return;
Double_t vtxpos[3]; vertexTracks->GetXYZ(vtxpos);
Int_t ncls=0;
Double_t pt=-10000.;
Double_t d0z0[2],covd0z0[3];
const AliTrackPointArray *array = 0;
for (Int_t itrack=0; itrack < ntracks; itrack++) {
AliESDtrack * track = esd->GetTrack(itrack);
if (!track) continue;
if(fDownsamplelowpt && TMath::Abs(esd->GetMagneticField())>0.01 &&
track->Pt()<gRandom->Rndm()) continue;
if(track->GetNcls(0)<GetRecoParam()->GetAlignFilterMinITSPoints()) continue;
if((GetRecoParam()->GetAlignFilterOnlyITSSATracks()) && track->GetNcls(1)>0) continue;
if((GetRecoParam()->GetAlignFilterOnlyITSTPCTracks()) && track->GetNcls(1)==0) continue;
if(track->Pt()<GetRecoParam()->GetAlignFilterMinPt() ||
track->Pt()>GetRecoParam()->GetAlignFilterMaxPt()) continue;
pt = track->Pt();
ncls = track->GetNcls(0);
Double_t maxd=10000.;
track->PropagateToDCA(vertexTracks,esd->GetMagneticField(),maxd,d0z0,covd0z0);
Int_t map[6];
for(Int_t ilay=0;ilay<6;ilay++) {
map[ilay]=0;
if(track->HasPointOnITSLayer(ilay)) map[ilay]=1;
}
AliDebug(2,Form("ITS map : %d %d %d %d %d %d pt %f\n",map[0],map[1],map[2],map[3],map[4],map[5],track->Pt()));
Int_t idx[12];
track->GetITSclusters(idx);
AliDebug(2,Form("cls idx %d %d %d %d %d %d %d %d %d %d %d %d\n",idx[0],idx[1],idx[2],idx[3],idx[4],idx[5],idx[6],idx[7],idx[8],idx[9],idx[10],idx[11]));
AliTrackPoint point;
Int_t ipt,volId,modId,layerId,lay,lad,det;
Int_t jpt=0;
Bool_t layerOK[6]; for(Int_t l1=0;l1<6;l1++) layerOK[l1]=kFALSE;
array = track->GetTrackPointArray();
if(!array) {printf("no track points\n"); continue;}
for(ipt=0; ipt<array->GetNPoints(); ipt++) {
array->GetPoint(point,ipt);
volId = point.GetVolumeID();
if(volId<=0) continue;
layerId = AliGeomManager::VolUIDToLayer(volId,modId);
if(layerId<1 || layerId>6) continue;
if(point.IsExtra() &&
(GetRecoParam()->GetAlignFilterSkipExtra())) continue;
layerOK[layerId-1]=kTRUE;
jpt++;
}
if(jpt < GetRecoParam()->GetAlignFilterMinITSPoints()) continue;
fHistNpoints->Fill(jpt);
fHistPt->Fill(pt);
PostData(2,fListOfHistos);
Float_t dzOverlap[2];
Double_t globExtra[3],locExtra[3];
arrayForTree = new AliTrackPointArray(jpt);
arrayForTree->SetUniqueID(uid);
jpt=0;
array = track->GetTrackPointArray();
if(!array) continue;
for(ipt=0; ipt<array->GetNPoints(); ipt++) {
array->GetPoint(point,ipt);
volId = point.GetVolumeID();
layerId = AliGeomManager::VolUIDToLayer(volId,modId);
if(layerId<1 || layerId>6 || !layerOK[layerId-1]) continue;
arrayForTree->AddPoint(jpt,&point);
switch(layerId) {
case 1:
fHistLayer0->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 2:
fHistLayer1->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 3:
fHistLayer2->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 4:
fHistLayer3->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 5:
fHistLayer4->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
case 6:
fHistLayer5->Fill(TMath::ATan2(point.GetY(),point.GetX()),point.GetZ());
break;
}
jpt++;
if(!point.IsExtra() ||
!(GetRecoParam()->GetAlignFilterFillQANtuples())) continue;
ncls--;
for(Int_t ll=1;ll<layerId;ll++) modId+=AliITSgeomTGeo::GetNLadders(ll)*AliITSgeomTGeo::GetNDetectors(ll);
AliITSgeomTGeo::GetModuleId(modId,lay,lad,det);
globExtra[0]=point.GetX();
globExtra[1]=point.GetY();
globExtra[2]=point.GetZ();
AliITSgeomTGeo::GlobalToLocal(lay,lad,det,globExtra,locExtra);
track->GetDZ(point.GetX(),point.GetY(),point.GetZ(),esd->GetMagneticField(),dzOverlap);
AliTrackPoint pointT;
Float_t radius,radiusT,phiv,phivT,thetav,thetavT;
for(Int_t lll=0;lll<ipt;lll++) {
array->GetPoint(pointT,lll);
Int_t layerIdT = AliGeomManager::VolUIDToLayer(pointT.GetVolumeID(),modId);
if(layerIdT!=layerId) continue;
radius=TMath::Sqrt((point.GetX()-vtxpos[0])*(point.GetX()-vtxpos[0])+(point.GetY()-vtxpos[1])*(point.GetY()-vtxpos[1]));
radiusT=TMath::Sqrt((pointT.GetX()-vtxpos[0])*(pointT.GetX()-vtxpos[0])+(pointT.GetY()-vtxpos[1])*(pointT.GetY()-vtxpos[1]));
phiv=TMath::ATan2(point.GetY()-vtxpos[1],point.GetX()-vtxpos[0]);
phivT=TMath::ATan2(pointT.GetY()-vtxpos[1],pointT.GetX()-vtxpos[0]);
if(TMath::Abs(point.GetZ()-vtxpos[2])<0.00001 || TMath::Abs(pointT.GetZ()-vtxpos[2])<0.00001) continue;
thetav=TMath::ATan(radius/(point.GetZ()-vtxpos[2]));
thetavT=TMath::ATan(radiusT/(pointT.GetZ()-vtxpos[2]));
dzOverlap[0]=(Float_t)((phivT-phiv)*0.5*(radiusT+radius));
if(TMath::Abs(TMath::Tan(0.5*(thetav+thetavT)))<0.00001) continue;
dzOverlap[1]=(Float_t)((pointT.GetZ()-point.GetZ())-(radiusT-radius)/TMath::Tan(0.5*(thetav+thetavT)));
fntExtra->Fill((Float_t)ncls,(Float_t)(layerId-1),lad,volId,TMath::ATan2(point.GetY(),point.GetX()),point.GetX(),point.GetY(),point.GetZ(),locExtra[0],locExtra[2],dzOverlap[0],dzOverlap[1],d0z0[0],d0z0[1],track->Pt());
}
}
curv = track->GetC(esd->GetMagneticField());
curverr = TMath::Sqrt(track->GetSigma1Pt2())*track->GetC(esd->GetMagneticField())/track->OneOverPt();
vertexForTree = new AliESDVertex(*vertexTracks);
if(vertexTracks->UsesTrack(track->GetID())) {
vertexForTree->SetID(1);
} else {
vertexForTree->SetID(0);
}
fspTree->Fill();
}
PostData(1,fspTree);
return;
}
void AliAlignmentDataFilterITS::Terminate(Option_t *)
{
AliDebug(2,"AliITSAlignmentDataFiler: Terminate() \n");
fspTree = dynamic_cast<TTree*> (GetOutputData(1));
if (!fspTree) {
printf("ERROR: fspTree not available\n");
return;
}
fListOfHistos = dynamic_cast<TList*> (GetOutputData(2));
if (!fListOfHistos) {
printf("ERROR: fListOfHistos not available\n");
return;
}
fHistNevents = dynamic_cast<TH1F*>(fListOfHistos->FindObject("fHistNevents"));
fHistNpoints = dynamic_cast<TH1F*>(fListOfHistos->FindObject("fHistNpoints"));
fHistPt = dynamic_cast<TH1F*>(fListOfHistos->FindObject("fHistPt"));
fHistLayer0 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer0"));
fHistLayer1 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer1"));
fHistLayer2 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer2"));
fHistLayer3 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer3"));
fHistLayer4 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer4"));
fHistLayer5 = dynamic_cast<TH2F*>(fListOfHistos->FindObject("fHistLayer5"));
fntExtra = dynamic_cast<TNtuple*>(fListOfHistos->FindObject("fntExtra"));
fntCosmicMatching = dynamic_cast<TNtuple*>(fListOfHistos->FindObject("fntCosmicMatching"));
return;
}
const AliITSRecoParam *AliAlignmentDataFilterITS::GetRecoParam() const
{
if(AliITSReconstructor::GetRecoParam()) {
return AliITSReconstructor::GetRecoParam();
} else if(fITSRecoParam) {
return fITSRecoParam;
} else return NULL;
}
Int_t AliAlignmentDataFilterITS::WriteTrackPointsInIdealGeom(const Char_t *fin,
const Char_t *fout,
const Char_t *fmis,
const Char_t *fgeo,
Bool_t prn)
{
TGeoHMatrix deltahm;
if (gSystem->AccessPathName(fgeo)) {
printf("couldn't find geometry file %s - skipping...\n",fmis);
return -1;
}
TFile *geofile=TFile::Open(fgeo);
TGeoManager *fgGeometry=NULL;
fgGeometry=(TGeoManager*)geofile->Get("ALICE");
if (!fgGeometry)
fgGeometry=(TGeoManager*)geofile->Get("Geometry");
if (!fgGeometry) {
AliCDBEntry *entry = (AliCDBEntry*)geofile->Get("AliCDBEntry");
if (entry)
fgGeometry = (TGeoManager*)entry->GetObject();
}
if (!fgGeometry) return -1;
AliGeomManager::SetGeometry(fgGeometry);
if(!AliGeomManager::GetGeometry()) return -1;
if (gSystem->AccessPathName(fmis)) {
printf("couldn't open alignment file %s - skipping...\n",fmis);
return -2;
}
TFile *pref = TFile::Open(fmis);
if (!pref->IsOpen()) return -2;
TClonesArray *prea=(TClonesArray*)pref->Get("ITSAlignObjs");
if (!prea) {
if (pref->Get("AliCDBEntry"))
prea = (TClonesArray*) ((AliCDBEntry*)pref->Get("AliCDBEntry"))->GetObject();
}
if (!prea) return -3;
Int_t nprea=prea->GetEntriesFast();
printf("Array of input misalignments with %d entries\n",nprea);
AliGeomManager::ApplyAlignObjsToGeom(*prea);
AliTrackPointArray *tpain=NULL;
TFile *tpainfile=NULL;
TTree *treein=NULL;
AliTrackPoint point;
AliITSAlignMille2Module *m2[2200];
for (Int_t i=0; i<2198; i++)
m2[i]=new AliITSAlignMille2Module(AliITSAlignMille2Module::GetVolumeIDFromIndex(i));
if (gSystem->AccessPathName(fin)) {
printf("couldn't open file %s - skipping...\n",fin);
return -4;
}
tpainfile = TFile::Open(fin);
if (!tpainfile->IsOpen()) return -4;
treein=(TTree*)tpainfile->Get("spTree");
if (!treein) return -5;
Float_t curv,curverr,runNumber;
TObjString *itsaligndata=0;
TObjString *itscalibrespsdd = 0;
treein->SetBranchAddress("SP", &tpain);
treein->SetBranchAddress("curv", &curv);
treein->SetBranchAddress("curverr", &curverr);
treein->SetBranchAddress("run",&runNumber);
treein->SetBranchAddress("ITSAlignData",&itsaligndata);
treein->SetBranchAddress("ITSCalibRespSDD",&itscalibrespsdd);
int ntrks=treein->GetEntries();
printf("Reading %d tracks from %s\n",ntrks,fin);
TFile *pointsFile = TFile::Open(fout,"RECREATE");
if (!pointsFile || !pointsFile->IsOpen()) {
printf("Can't open output file %s !",fout);
return -6;
}
AliTrackPointArray *array = new AliTrackPointArray();
TTree *treeout=(TTree*)treein->Clone("spTree");
treeout->Reset();
treeout->SetBranchAddress("SP", &array);
treeout->SetBranchAddress("curv", &curv);
treeout->SetBranchAddress("curverr", &curverr);
treeout->SetBranchAddress("run",&runNumber);
treeout->SetBranchAddress("ITSAlignData",&itsaligndata);
treeout->SetBranchAddress("ITSCalibRespSDD",&itscalibrespsdd);
for (Int_t it=0; it<ntrks; it++) {
if (!(it%5000) ) printf("...processing track n. %d\n",it);
treein->GetEvent(it);
AliTrackPointArray *atp=tpain;
AliTrackPointArray *atps=NULL;
Int_t npts=atp->GetNPoints();
AliTrackPoint p;
atps=new AliTrackPointArray(npts);
Int_t npto=0;
for (int i=0; i<npts; i++) {
atp->GetPoint(p,i);
UShort_t volid=atp->GetVolumeID()[i];
Int_t index=AliITSAlignMille2Module::GetIndexFromVolumeID(volid);
if(index<0 || index>=2200) continue;
TGeoHMatrix *svMatrix = m2[index]->GetSensitiveVolumeMatrix(p.GetVolumeID());
Double_t pg[3],pl[3];
pg[0]=p.GetX();
pg[1]=p.GetY();
pg[2]=p.GetZ();
if (prn) printf("Global coordinates of measured point : X=%f Y=%f Z=%f \n",pg[0],pg[1],pg[2]);
svMatrix->MasterToLocal(pg,pl);
if(TMath::Abs(pl[1])>1.e-6) {
printf("AliAlignmentDataFilterITS::WriteTrackPointsInIdealGeom: ERROR, local y = %f (should be zero)\n",pl[1]);
return -7;
}
if (prn) printf("Local coordinates of measured point : X=%f Y=%f Z=%f \n",pl[0],pl[1],pl[2]);
TGeoHMatrix hcov;
Double_t hcovel[9];
hcovel[0]=(Double_t)(p.GetCov()[0]);
hcovel[1]=(Double_t)(p.GetCov()[1]);
hcovel[2]=(Double_t)(p.GetCov()[2]);
hcovel[3]=(Double_t)(p.GetCov()[1]);
hcovel[4]=(Double_t)(p.GetCov()[3]);
hcovel[5]=(Double_t)(p.GetCov()[4]);
hcovel[6]=(Double_t)(p.GetCov()[2]);
hcovel[7]=(Double_t)(p.GetCov()[4]);
hcovel[8]=(Double_t)(p.GetCov()[5]);
hcov.SetRotation(hcovel);
hcov.Multiply(svMatrix);
hcov.MultiplyLeft(&svMatrix->Inverse());
TGeoHMatrix *svOrigMatrix = m2[index]->GetSensitiveVolumeOrigGlobalMatrix(p.GetVolumeID());
svOrigMatrix->LocalToMaster(pl,pg);
hcov.Multiply(&svOrigMatrix->Inverse());
hcov.MultiplyLeft(svOrigMatrix);
Float_t pcov[6];
pcov[0]=hcov.GetRotationMatrix()[0];
pcov[1]=hcov.GetRotationMatrix()[1];
pcov[2]=hcov.GetRotationMatrix()[2];
pcov[3]=hcov.GetRotationMatrix()[4];
pcov[4]=hcov.GetRotationMatrix()[5];
pcov[5]=hcov.GetRotationMatrix()[8];
p.SetXYZ(pg[0],pg[1],pg[2],pcov);
if (prn) printf("New global coordinates of measured point : X=%f Y=%f Z=%f \n",pg[0],pg[1],pg[2]);
atps->AddPoint(npto,&p);
if (prn) printf("Adding point[%d] = ( %f , %f , %f ) volid = %d\n",npto,atps->GetX()[npto],atps->GetY()[npto],atps->GetZ()[npto],atps->GetVolumeID()[npto] );
if (prn) p.Print("");
npto++;
}
array = atps;
treeout->Fill();
delete atps;
atps=NULL;
}
pointsFile->Write();
pointsFile->Close();
tpainfile->Close();
return 0;
}
AliAlignmentDataFilterITS.cxx:1 AliAlignmentDataFilterITS.cxx:2 AliAlignmentDataFilterITS.cxx:3 AliAlignmentDataFilterITS.cxx:4 AliAlignmentDataFilterITS.cxx:5 AliAlignmentDataFilterITS.cxx:6 AliAlignmentDataFilterITS.cxx:7 AliAlignmentDataFilterITS.cxx:8 AliAlignmentDataFilterITS.cxx:9 AliAlignmentDataFilterITS.cxx:10 AliAlignmentDataFilterITS.cxx:11 AliAlignmentDataFilterITS.cxx:12 AliAlignmentDataFilterITS.cxx:13 AliAlignmentDataFilterITS.cxx:14 AliAlignmentDataFilterITS.cxx:15 AliAlignmentDataFilterITS.cxx:16 AliAlignmentDataFilterITS.cxx:17 AliAlignmentDataFilterITS.cxx:18 AliAlignmentDataFilterITS.cxx:19 AliAlignmentDataFilterITS.cxx:20 AliAlignmentDataFilterITS.cxx:21 AliAlignmentDataFilterITS.cxx:22 AliAlignmentDataFilterITS.cxx:23 AliAlignmentDataFilterITS.cxx:24 AliAlignmentDataFilterITS.cxx:25 AliAlignmentDataFilterITS.cxx:26 AliAlignmentDataFilterITS.cxx:27 AliAlignmentDataFilterITS.cxx:28 AliAlignmentDataFilterITS.cxx:29 AliAlignmentDataFilterITS.cxx:30 AliAlignmentDataFilterITS.cxx:31 AliAlignmentDataFilterITS.cxx:32 AliAlignmentDataFilterITS.cxx:33 AliAlignmentDataFilterITS.cxx:34 AliAlignmentDataFilterITS.cxx:35 AliAlignmentDataFilterITS.cxx:36 AliAlignmentDataFilterITS.cxx:37 AliAlignmentDataFilterITS.cxx:38 AliAlignmentDataFilterITS.cxx:39 AliAlignmentDataFilterITS.cxx:40 AliAlignmentDataFilterITS.cxx:41 AliAlignmentDataFilterITS.cxx:42 AliAlignmentDataFilterITS.cxx:43 AliAlignmentDataFilterITS.cxx:44 AliAlignmentDataFilterITS.cxx:45 AliAlignmentDataFilterITS.cxx:46 AliAlignmentDataFilterITS.cxx:47 AliAlignmentDataFilterITS.cxx:48 AliAlignmentDataFilterITS.cxx:49 AliAlignmentDataFilterITS.cxx:50 AliAlignmentDataFilterITS.cxx:51 AliAlignmentDataFilterITS.cxx:52 AliAlignmentDataFilterITS.cxx:53 AliAlignmentDataFilterITS.cxx:54 AliAlignmentDataFilterITS.cxx:55 AliAlignmentDataFilterITS.cxx:56 AliAlignmentDataFilterITS.cxx:57 AliAlignmentDataFilterITS.cxx:58 AliAlignmentDataFilterITS.cxx:59 AliAlignmentDataFilterITS.cxx:60 AliAlignmentDataFilterITS.cxx:61 AliAlignmentDataFilterITS.cxx:62 AliAlignmentDataFilterITS.cxx:63 AliAlignmentDataFilterITS.cxx:64 AliAlignmentDataFilterITS.cxx:65 AliAlignmentDataFilterITS.cxx:66 AliAlignmentDataFilterITS.cxx:67 AliAlignmentDataFilterITS.cxx:68 AliAlignmentDataFilterITS.cxx:69 AliAlignmentDataFilterITS.cxx:70 AliAlignmentDataFilterITS.cxx:71 AliAlignmentDataFilterITS.cxx:72 AliAlignmentDataFilterITS.cxx:73 AliAlignmentDataFilterITS.cxx:74 AliAlignmentDataFilterITS.cxx:75 AliAlignmentDataFilterITS.cxx:76 AliAlignmentDataFilterITS.cxx:77 AliAlignmentDataFilterITS.cxx:78 AliAlignmentDataFilterITS.cxx:79 AliAlignmentDataFilterITS.cxx:80 AliAlignmentDataFilterITS.cxx:81 AliAlignmentDataFilterITS.cxx:82 AliAlignmentDataFilterITS.cxx:83 AliAlignmentDataFilterITS.cxx:84 AliAlignmentDataFilterITS.cxx:85 AliAlignmentDataFilterITS.cxx:86 AliAlignmentDataFilterITS.cxx:87 AliAlignmentDataFilterITS.cxx:88 AliAlignmentDataFilterITS.cxx:89 AliAlignmentDataFilterITS.cxx:90 AliAlignmentDataFilterITS.cxx:91 AliAlignmentDataFilterITS.cxx:92 AliAlignmentDataFilterITS.cxx:93 AliAlignmentDataFilterITS.cxx:94 AliAlignmentDataFilterITS.cxx:95 AliAlignmentDataFilterITS.cxx:96 AliAlignmentDataFilterITS.cxx:97 AliAlignmentDataFilterITS.cxx:98 AliAlignmentDataFilterITS.cxx:99 AliAlignmentDataFilterITS.cxx:100 AliAlignmentDataFilterITS.cxx:101 AliAlignmentDataFilterITS.cxx:102 AliAlignmentDataFilterITS.cxx:103 AliAlignmentDataFilterITS.cxx:104 AliAlignmentDataFilterITS.cxx:105 AliAlignmentDataFilterITS.cxx:106 AliAlignmentDataFilterITS.cxx:107 AliAlignmentDataFilterITS.cxx:108 AliAlignmentDataFilterITS.cxx:109 AliAlignmentDataFilterITS.cxx:110 AliAlignmentDataFilterITS.cxx:111 AliAlignmentDataFilterITS.cxx:112 AliAlignmentDataFilterITS.cxx:113 AliAlignmentDataFilterITS.cxx:114 AliAlignmentDataFilterITS.cxx:115 AliAlignmentDataFilterITS.cxx:116 AliAlignmentDataFilterITS.cxx:117 AliAlignmentDataFilterITS.cxx:118 AliAlignmentDataFilterITS.cxx:119 AliAlignmentDataFilterITS.cxx:120 AliAlignmentDataFilterITS.cxx:121 AliAlignmentDataFilterITS.cxx:122 AliAlignmentDataFilterITS.cxx:123 AliAlignmentDataFilterITS.cxx:124 AliAlignmentDataFilterITS.cxx:125 AliAlignmentDataFilterITS.cxx:126 AliAlignmentDataFilterITS.cxx:127 AliAlignmentDataFilterITS.cxx:128 AliAlignmentDataFilterITS.cxx:129 AliAlignmentDataFilterITS.cxx:130 AliAlignmentDataFilterITS.cxx:131 AliAlignmentDataFilterITS.cxx:132 AliAlignmentDataFilterITS.cxx:133 AliAlignmentDataFilterITS.cxx:134 AliAlignmentDataFilterITS.cxx:135 AliAlignmentDataFilterITS.cxx:136 AliAlignmentDataFilterITS.cxx:137 AliAlignmentDataFilterITS.cxx:138 AliAlignmentDataFilterITS.cxx:139 AliAlignmentDataFilterITS.cxx:140 AliAlignmentDataFilterITS.cxx:141 AliAlignmentDataFilterITS.cxx:142 AliAlignmentDataFilterITS.cxx:143 AliAlignmentDataFilterITS.cxx:144 AliAlignmentDataFilterITS.cxx:145 AliAlignmentDataFilterITS.cxx:146 AliAlignmentDataFilterITS.cxx:147 AliAlignmentDataFilterITS.cxx:148 AliAlignmentDataFilterITS.cxx:149 AliAlignmentDataFilterITS.cxx:150 AliAlignmentDataFilterITS.cxx:151 AliAlignmentDataFilterITS.cxx:152 AliAlignmentDataFilterITS.cxx:153 AliAlignmentDataFilterITS.cxx:154 AliAlignmentDataFilterITS.cxx:155 AliAlignmentDataFilterITS.cxx:156 AliAlignmentDataFilterITS.cxx:157 AliAlignmentDataFilterITS.cxx:158 AliAlignmentDataFilterITS.cxx:159 AliAlignmentDataFilterITS.cxx:160 AliAlignmentDataFilterITS.cxx:161 AliAlignmentDataFilterITS.cxx:162 AliAlignmentDataFilterITS.cxx:163 AliAlignmentDataFilterITS.cxx:164 AliAlignmentDataFilterITS.cxx:165 AliAlignmentDataFilterITS.cxx:166 AliAlignmentDataFilterITS.cxx:167 AliAlignmentDataFilterITS.cxx:168 AliAlignmentDataFilterITS.cxx:169 AliAlignmentDataFilterITS.cxx:170 AliAlignmentDataFilterITS.cxx:171 AliAlignmentDataFilterITS.cxx:172 AliAlignmentDataFilterITS.cxx:173 AliAlignmentDataFilterITS.cxx:174 AliAlignmentDataFilterITS.cxx:175 AliAlignmentDataFilterITS.cxx:176 AliAlignmentDataFilterITS.cxx:177 AliAlignmentDataFilterITS.cxx:178 AliAlignmentDataFilterITS.cxx:179 AliAlignmentDataFilterITS.cxx:180 AliAlignmentDataFilterITS.cxx:181 AliAlignmentDataFilterITS.cxx:182 AliAlignmentDataFilterITS.cxx:183 AliAlignmentDataFilterITS.cxx:184 AliAlignmentDataFilterITS.cxx:185 AliAlignmentDataFilterITS.cxx:186 AliAlignmentDataFilterITS.cxx:187 AliAlignmentDataFilterITS.cxx:188 AliAlignmentDataFilterITS.cxx:189 AliAlignmentDataFilterITS.cxx:190 AliAlignmentDataFilterITS.cxx:191 AliAlignmentDataFilterITS.cxx:192 AliAlignmentDataFilterITS.cxx:193 AliAlignmentDataFilterITS.cxx:194 AliAlignmentDataFilterITS.cxx:195 AliAlignmentDataFilterITS.cxx:196 AliAlignmentDataFilterITS.cxx:197 AliAlignmentDataFilterITS.cxx:198 AliAlignmentDataFilterITS.cxx:199 AliAlignmentDataFilterITS.cxx:200 AliAlignmentDataFilterITS.cxx:201 AliAlignmentDataFilterITS.cxx:202 AliAlignmentDataFilterITS.cxx:203 AliAlignmentDataFilterITS.cxx:204 AliAlignmentDataFilterITS.cxx:205 AliAlignmentDataFilterITS.cxx:206 AliAlignmentDataFilterITS.cxx:207 AliAlignmentDataFilterITS.cxx:208 AliAlignmentDataFilterITS.cxx:209 AliAlignmentDataFilterITS.cxx:210 AliAlignmentDataFilterITS.cxx:211 AliAlignmentDataFilterITS.cxx:212 AliAlignmentDataFilterITS.cxx:213 AliAlignmentDataFilterITS.cxx:214 AliAlignmentDataFilterITS.cxx:215 AliAlignmentDataFilterITS.cxx:216 AliAlignmentDataFilterITS.cxx:217 AliAlignmentDataFilterITS.cxx:218 AliAlignmentDataFilterITS.cxx:219 AliAlignmentDataFilterITS.cxx:220 AliAlignmentDataFilterITS.cxx:221 AliAlignmentDataFilterITS.cxx:222 AliAlignmentDataFilterITS.cxx:223 AliAlignmentDataFilterITS.cxx:224 AliAlignmentDataFilterITS.cxx:225 AliAlignmentDataFilterITS.cxx:226 AliAlignmentDataFilterITS.cxx:227 AliAlignmentDataFilterITS.cxx:228 AliAlignmentDataFilterITS.cxx:229 AliAlignmentDataFilterITS.cxx:230 AliAlignmentDataFilterITS.cxx:231 AliAlignmentDataFilterITS.cxx:232 AliAlignmentDataFilterITS.cxx:233 AliAlignmentDataFilterITS.cxx:234 AliAlignmentDataFilterITS.cxx:235 AliAlignmentDataFilterITS.cxx:236 AliAlignmentDataFilterITS.cxx:237 AliAlignmentDataFilterITS.cxx:238 AliAlignmentDataFilterITS.cxx:239 AliAlignmentDataFilterITS.cxx:240 AliAlignmentDataFilterITS.cxx:241 AliAlignmentDataFilterITS.cxx:242 AliAlignmentDataFilterITS.cxx:243 AliAlignmentDataFilterITS.cxx:244 AliAlignmentDataFilterITS.cxx:245 AliAlignmentDataFilterITS.cxx:246 AliAlignmentDataFilterITS.cxx:247 AliAlignmentDataFilterITS.cxx:248 AliAlignmentDataFilterITS.cxx:249 AliAlignmentDataFilterITS.cxx:250 AliAlignmentDataFilterITS.cxx:251 AliAlignmentDataFilterITS.cxx:252 AliAlignmentDataFilterITS.cxx:253 AliAlignmentDataFilterITS.cxx:254 AliAlignmentDataFilterITS.cxx:255 AliAlignmentDataFilterITS.cxx:256 AliAlignmentDataFilterITS.cxx:257 AliAlignmentDataFilterITS.cxx:258 AliAlignmentDataFilterITS.cxx:259 AliAlignmentDataFilterITS.cxx:260 AliAlignmentDataFilterITS.cxx:261 AliAlignmentDataFilterITS.cxx:262 AliAlignmentDataFilterITS.cxx:263 AliAlignmentDataFilterITS.cxx:264 AliAlignmentDataFilterITS.cxx:265 AliAlignmentDataFilterITS.cxx:266 AliAlignmentDataFilterITS.cxx:267 AliAlignmentDataFilterITS.cxx:268 AliAlignmentDataFilterITS.cxx:269 AliAlignmentDataFilterITS.cxx:270 AliAlignmentDataFilterITS.cxx:271 AliAlignmentDataFilterITS.cxx:272 AliAlignmentDataFilterITS.cxx:273 AliAlignmentDataFilterITS.cxx:274 AliAlignmentDataFilterITS.cxx:275 AliAlignmentDataFilterITS.cxx:276 AliAlignmentDataFilterITS.cxx:277 AliAlignmentDataFilterITS.cxx:278 AliAlignmentDataFilterITS.cxx:279 AliAlignmentDataFilterITS.cxx:280 AliAlignmentDataFilterITS.cxx:281 AliAlignmentDataFilterITS.cxx:282 AliAlignmentDataFilterITS.cxx:283 AliAlignmentDataFilterITS.cxx:284 AliAlignmentDataFilterITS.cxx:285 AliAlignmentDataFilterITS.cxx:286 AliAlignmentDataFilterITS.cxx:287 AliAlignmentDataFilterITS.cxx:288 AliAlignmentDataFilterITS.cxx:289 AliAlignmentDataFilterITS.cxx:290 AliAlignmentDataFilterITS.cxx:291 AliAlignmentDataFilterITS.cxx:292 AliAlignmentDataFilterITS.cxx:293 AliAlignmentDataFilterITS.cxx:294 AliAlignmentDataFilterITS.cxx:295 AliAlignmentDataFilterITS.cxx:296 AliAlignmentDataFilterITS.cxx:297 AliAlignmentDataFilterITS.cxx:298 AliAlignmentDataFilterITS.cxx:299 AliAlignmentDataFilterITS.cxx:300 AliAlignmentDataFilterITS.cxx:301 AliAlignmentDataFilterITS.cxx:302 AliAlignmentDataFilterITS.cxx:303 AliAlignmentDataFilterITS.cxx:304 AliAlignmentDataFilterITS.cxx:305 AliAlignmentDataFilterITS.cxx:306 AliAlignmentDataFilterITS.cxx:307 AliAlignmentDataFilterITS.cxx:308 AliAlignmentDataFilterITS.cxx:309 AliAlignmentDataFilterITS.cxx:310 AliAlignmentDataFilterITS.cxx:311 AliAlignmentDataFilterITS.cxx:312 AliAlignmentDataFilterITS.cxx:313 AliAlignmentDataFilterITS.cxx:314 AliAlignmentDataFilterITS.cxx:315 AliAlignmentDataFilterITS.cxx:316 AliAlignmentDataFilterITS.cxx:317 AliAlignmentDataFilterITS.cxx:318 AliAlignmentDataFilterITS.cxx:319 AliAlignmentDataFilterITS.cxx:320 AliAlignmentDataFilterITS.cxx:321 AliAlignmentDataFilterITS.cxx:322 AliAlignmentDataFilterITS.cxx:323 AliAlignmentDataFilterITS.cxx:324 AliAlignmentDataFilterITS.cxx:325 AliAlignmentDataFilterITS.cxx:326 AliAlignmentDataFilterITS.cxx:327 AliAlignmentDataFilterITS.cxx:328 AliAlignmentDataFilterITS.cxx:329 AliAlignmentDataFilterITS.cxx:330 AliAlignmentDataFilterITS.cxx:331 AliAlignmentDataFilterITS.cxx:332 AliAlignmentDataFilterITS.cxx:333 AliAlignmentDataFilterITS.cxx:334 AliAlignmentDataFilterITS.cxx:335 AliAlignmentDataFilterITS.cxx:336 AliAlignmentDataFilterITS.cxx:337 AliAlignmentDataFilterITS.cxx:338 AliAlignmentDataFilterITS.cxx:339 AliAlignmentDataFilterITS.cxx:340 AliAlignmentDataFilterITS.cxx:341 AliAlignmentDataFilterITS.cxx:342 AliAlignmentDataFilterITS.cxx:343 AliAlignmentDataFilterITS.cxx:344 AliAlignmentDataFilterITS.cxx:345 AliAlignmentDataFilterITS.cxx:346 AliAlignmentDataFilterITS.cxx:347 AliAlignmentDataFilterITS.cxx:348 AliAlignmentDataFilterITS.cxx:349 AliAlignmentDataFilterITS.cxx:350 AliAlignmentDataFilterITS.cxx:351 AliAlignmentDataFilterITS.cxx:352 AliAlignmentDataFilterITS.cxx:353 AliAlignmentDataFilterITS.cxx:354 AliAlignmentDataFilterITS.cxx:355 AliAlignmentDataFilterITS.cxx:356 AliAlignmentDataFilterITS.cxx:357 AliAlignmentDataFilterITS.cxx:358 AliAlignmentDataFilterITS.cxx:359 AliAlignmentDataFilterITS.cxx:360 AliAlignmentDataFilterITS.cxx:361 AliAlignmentDataFilterITS.cxx:362 AliAlignmentDataFilterITS.cxx:363 AliAlignmentDataFilterITS.cxx:364 AliAlignmentDataFilterITS.cxx:365 AliAlignmentDataFilterITS.cxx:366 AliAlignmentDataFilterITS.cxx:367 AliAlignmentDataFilterITS.cxx:368 AliAlignmentDataFilterITS.cxx:369 AliAlignmentDataFilterITS.cxx:370 AliAlignmentDataFilterITS.cxx:371 AliAlignmentDataFilterITS.cxx:372 AliAlignmentDataFilterITS.cxx:373 AliAlignmentDataFilterITS.cxx:374 AliAlignmentDataFilterITS.cxx:375 AliAlignmentDataFilterITS.cxx:376 AliAlignmentDataFilterITS.cxx:377 AliAlignmentDataFilterITS.cxx:378 AliAlignmentDataFilterITS.cxx:379 AliAlignmentDataFilterITS.cxx:380 AliAlignmentDataFilterITS.cxx:381 AliAlignmentDataFilterITS.cxx:382 AliAlignmentDataFilterITS.cxx:383 AliAlignmentDataFilterITS.cxx:384 AliAlignmentDataFilterITS.cxx:385 AliAlignmentDataFilterITS.cxx:386 AliAlignmentDataFilterITS.cxx:387 AliAlignmentDataFilterITS.cxx:388 AliAlignmentDataFilterITS.cxx:389 AliAlignmentDataFilterITS.cxx:390 AliAlignmentDataFilterITS.cxx:391 AliAlignmentDataFilterITS.cxx:392 AliAlignmentDataFilterITS.cxx:393 AliAlignmentDataFilterITS.cxx:394 AliAlignmentDataFilterITS.cxx:395 AliAlignmentDataFilterITS.cxx:396 AliAlignmentDataFilterITS.cxx:397 AliAlignmentDataFilterITS.cxx:398 AliAlignmentDataFilterITS.cxx:399 AliAlignmentDataFilterITS.cxx:400 AliAlignmentDataFilterITS.cxx:401 AliAlignmentDataFilterITS.cxx:402 AliAlignmentDataFilterITS.cxx:403 AliAlignmentDataFilterITS.cxx:404 AliAlignmentDataFilterITS.cxx:405 AliAlignmentDataFilterITS.cxx:406 AliAlignmentDataFilterITS.cxx:407 AliAlignmentDataFilterITS.cxx:408 AliAlignmentDataFilterITS.cxx:409 AliAlignmentDataFilterITS.cxx:410 AliAlignmentDataFilterITS.cxx:411 AliAlignmentDataFilterITS.cxx:412 AliAlignmentDataFilterITS.cxx:413 AliAlignmentDataFilterITS.cxx:414 AliAlignmentDataFilterITS.cxx:415 AliAlignmentDataFilterITS.cxx:416 AliAlignmentDataFilterITS.cxx:417 AliAlignmentDataFilterITS.cxx:418 AliAlignmentDataFilterITS.cxx:419 AliAlignmentDataFilterITS.cxx:420 AliAlignmentDataFilterITS.cxx:421 AliAlignmentDataFilterITS.cxx:422 AliAlignmentDataFilterITS.cxx:423 AliAlignmentDataFilterITS.cxx:424 AliAlignmentDataFilterITS.cxx:425 AliAlignmentDataFilterITS.cxx:426 AliAlignmentDataFilterITS.cxx:427 AliAlignmentDataFilterITS.cxx:428 AliAlignmentDataFilterITS.cxx:429 AliAlignmentDataFilterITS.cxx:430 AliAlignmentDataFilterITS.cxx:431 AliAlignmentDataFilterITS.cxx:432 AliAlignmentDataFilterITS.cxx:433 AliAlignmentDataFilterITS.cxx:434 AliAlignmentDataFilterITS.cxx:435 AliAlignmentDataFilterITS.cxx:436 AliAlignmentDataFilterITS.cxx:437 AliAlignmentDataFilterITS.cxx:438 AliAlignmentDataFilterITS.cxx:439 AliAlignmentDataFilterITS.cxx:440 AliAlignmentDataFilterITS.cxx:441 AliAlignmentDataFilterITS.cxx:442 AliAlignmentDataFilterITS.cxx:443 AliAlignmentDataFilterITS.cxx:444 AliAlignmentDataFilterITS.cxx:445 AliAlignmentDataFilterITS.cxx:446 AliAlignmentDataFilterITS.cxx:447 AliAlignmentDataFilterITS.cxx:448 AliAlignmentDataFilterITS.cxx:449 AliAlignmentDataFilterITS.cxx:450 AliAlignmentDataFilterITS.cxx:451 AliAlignmentDataFilterITS.cxx:452 AliAlignmentDataFilterITS.cxx:453 AliAlignmentDataFilterITS.cxx:454 AliAlignmentDataFilterITS.cxx:455 AliAlignmentDataFilterITS.cxx:456 AliAlignmentDataFilterITS.cxx:457 AliAlignmentDataFilterITS.cxx:458 AliAlignmentDataFilterITS.cxx:459 AliAlignmentDataFilterITS.cxx:460 AliAlignmentDataFilterITS.cxx:461 AliAlignmentDataFilterITS.cxx:462 AliAlignmentDataFilterITS.cxx:463 AliAlignmentDataFilterITS.cxx:464 AliAlignmentDataFilterITS.cxx:465 AliAlignmentDataFilterITS.cxx:466 AliAlignmentDataFilterITS.cxx:467 AliAlignmentDataFilterITS.cxx:468 AliAlignmentDataFilterITS.cxx:469 AliAlignmentDataFilterITS.cxx:470 AliAlignmentDataFilterITS.cxx:471 AliAlignmentDataFilterITS.cxx:472 AliAlignmentDataFilterITS.cxx:473 AliAlignmentDataFilterITS.cxx:474 AliAlignmentDataFilterITS.cxx:475 AliAlignmentDataFilterITS.cxx:476 AliAlignmentDataFilterITS.cxx:477 AliAlignmentDataFilterITS.cxx:478 AliAlignmentDataFilterITS.cxx:479 AliAlignmentDataFilterITS.cxx:480 AliAlignmentDataFilterITS.cxx:481 AliAlignmentDataFilterITS.cxx:482 AliAlignmentDataFilterITS.cxx:483 AliAlignmentDataFilterITS.cxx:484 AliAlignmentDataFilterITS.cxx:485 AliAlignmentDataFilterITS.cxx:486 AliAlignmentDataFilterITS.cxx:487 AliAlignmentDataFilterITS.cxx:488 AliAlignmentDataFilterITS.cxx:489 AliAlignmentDataFilterITS.cxx:490 AliAlignmentDataFilterITS.cxx:491 AliAlignmentDataFilterITS.cxx:492 AliAlignmentDataFilterITS.cxx:493 AliAlignmentDataFilterITS.cxx:494 AliAlignmentDataFilterITS.cxx:495 AliAlignmentDataFilterITS.cxx:496 AliAlignmentDataFilterITS.cxx:497 AliAlignmentDataFilterITS.cxx:498 AliAlignmentDataFilterITS.cxx:499 AliAlignmentDataFilterITS.cxx:500 AliAlignmentDataFilterITS.cxx:501 AliAlignmentDataFilterITS.cxx:502 AliAlignmentDataFilterITS.cxx:503 AliAlignmentDataFilterITS.cxx:504 AliAlignmentDataFilterITS.cxx:505 AliAlignmentDataFilterITS.cxx:506 AliAlignmentDataFilterITS.cxx:507 AliAlignmentDataFilterITS.cxx:508 AliAlignmentDataFilterITS.cxx:509 AliAlignmentDataFilterITS.cxx:510 AliAlignmentDataFilterITS.cxx:511 AliAlignmentDataFilterITS.cxx:512 AliAlignmentDataFilterITS.cxx:513 AliAlignmentDataFilterITS.cxx:514 AliAlignmentDataFilterITS.cxx:515 AliAlignmentDataFilterITS.cxx:516 AliAlignmentDataFilterITS.cxx:517 AliAlignmentDataFilterITS.cxx:518 AliAlignmentDataFilterITS.cxx:519 AliAlignmentDataFilterITS.cxx:520 AliAlignmentDataFilterITS.cxx:521 AliAlignmentDataFilterITS.cxx:522 AliAlignmentDataFilterITS.cxx:523 AliAlignmentDataFilterITS.cxx:524 AliAlignmentDataFilterITS.cxx:525 AliAlignmentDataFilterITS.cxx:526 AliAlignmentDataFilterITS.cxx:527 AliAlignmentDataFilterITS.cxx:528 AliAlignmentDataFilterITS.cxx:529 AliAlignmentDataFilterITS.cxx:530 AliAlignmentDataFilterITS.cxx:531 AliAlignmentDataFilterITS.cxx:532 AliAlignmentDataFilterITS.cxx:533 AliAlignmentDataFilterITS.cxx:534 AliAlignmentDataFilterITS.cxx:535 AliAlignmentDataFilterITS.cxx:536 AliAlignmentDataFilterITS.cxx:537 AliAlignmentDataFilterITS.cxx:538 AliAlignmentDataFilterITS.cxx:539 AliAlignmentDataFilterITS.cxx:540 AliAlignmentDataFilterITS.cxx:541 AliAlignmentDataFilterITS.cxx:542 AliAlignmentDataFilterITS.cxx:543 AliAlignmentDataFilterITS.cxx:544 AliAlignmentDataFilterITS.cxx:545 AliAlignmentDataFilterITS.cxx:546 AliAlignmentDataFilterITS.cxx:547 AliAlignmentDataFilterITS.cxx:548 AliAlignmentDataFilterITS.cxx:549 AliAlignmentDataFilterITS.cxx:550 AliAlignmentDataFilterITS.cxx:551 AliAlignmentDataFilterITS.cxx:552 AliAlignmentDataFilterITS.cxx:553 AliAlignmentDataFilterITS.cxx:554 AliAlignmentDataFilterITS.cxx:555 AliAlignmentDataFilterITS.cxx:556 AliAlignmentDataFilterITS.cxx:557 AliAlignmentDataFilterITS.cxx:558 AliAlignmentDataFilterITS.cxx:559 AliAlignmentDataFilterITS.cxx:560 AliAlignmentDataFilterITS.cxx:561 AliAlignmentDataFilterITS.cxx:562 AliAlignmentDataFilterITS.cxx:563 AliAlignmentDataFilterITS.cxx:564 AliAlignmentDataFilterITS.cxx:565 AliAlignmentDataFilterITS.cxx:566 AliAlignmentDataFilterITS.cxx:567 AliAlignmentDataFilterITS.cxx:568 AliAlignmentDataFilterITS.cxx:569 AliAlignmentDataFilterITS.cxx:570 AliAlignmentDataFilterITS.cxx:571 AliAlignmentDataFilterITS.cxx:572 AliAlignmentDataFilterITS.cxx:573 AliAlignmentDataFilterITS.cxx:574 AliAlignmentDataFilterITS.cxx:575 AliAlignmentDataFilterITS.cxx:576 AliAlignmentDataFilterITS.cxx:577 AliAlignmentDataFilterITS.cxx:578 AliAlignmentDataFilterITS.cxx:579 AliAlignmentDataFilterITS.cxx:580 AliAlignmentDataFilterITS.cxx:581 AliAlignmentDataFilterITS.cxx:582 AliAlignmentDataFilterITS.cxx:583 AliAlignmentDataFilterITS.cxx:584 AliAlignmentDataFilterITS.cxx:585 AliAlignmentDataFilterITS.cxx:586 AliAlignmentDataFilterITS.cxx:587 AliAlignmentDataFilterITS.cxx:588 AliAlignmentDataFilterITS.cxx:589 AliAlignmentDataFilterITS.cxx:590 AliAlignmentDataFilterITS.cxx:591 AliAlignmentDataFilterITS.cxx:592 AliAlignmentDataFilterITS.cxx:593 AliAlignmentDataFilterITS.cxx:594 AliAlignmentDataFilterITS.cxx:595 AliAlignmentDataFilterITS.cxx:596 AliAlignmentDataFilterITS.cxx:597 AliAlignmentDataFilterITS.cxx:598 AliAlignmentDataFilterITS.cxx:599 AliAlignmentDataFilterITS.cxx:600 AliAlignmentDataFilterITS.cxx:601 AliAlignmentDataFilterITS.cxx:602 AliAlignmentDataFilterITS.cxx:603 AliAlignmentDataFilterITS.cxx:604 AliAlignmentDataFilterITS.cxx:605 AliAlignmentDataFilterITS.cxx:606 AliAlignmentDataFilterITS.cxx:607 AliAlignmentDataFilterITS.cxx:608 AliAlignmentDataFilterITS.cxx:609 AliAlignmentDataFilterITS.cxx:610 AliAlignmentDataFilterITS.cxx:611 AliAlignmentDataFilterITS.cxx:612 AliAlignmentDataFilterITS.cxx:613 AliAlignmentDataFilterITS.cxx:614 AliAlignmentDataFilterITS.cxx:615 AliAlignmentDataFilterITS.cxx:616 AliAlignmentDataFilterITS.cxx:617 AliAlignmentDataFilterITS.cxx:618 AliAlignmentDataFilterITS.cxx:619 AliAlignmentDataFilterITS.cxx:620 AliAlignmentDataFilterITS.cxx:621 AliAlignmentDataFilterITS.cxx:622 AliAlignmentDataFilterITS.cxx:623 AliAlignmentDataFilterITS.cxx:624 AliAlignmentDataFilterITS.cxx:625 AliAlignmentDataFilterITS.cxx:626 AliAlignmentDataFilterITS.cxx:627 AliAlignmentDataFilterITS.cxx:628 AliAlignmentDataFilterITS.cxx:629 AliAlignmentDataFilterITS.cxx:630 AliAlignmentDataFilterITS.cxx:631 AliAlignmentDataFilterITS.cxx:632 AliAlignmentDataFilterITS.cxx:633 AliAlignmentDataFilterITS.cxx:634 AliAlignmentDataFilterITS.cxx:635 AliAlignmentDataFilterITS.cxx:636 AliAlignmentDataFilterITS.cxx:637 AliAlignmentDataFilterITS.cxx:638 AliAlignmentDataFilterITS.cxx:639 AliAlignmentDataFilterITS.cxx:640 AliAlignmentDataFilterITS.cxx:641 AliAlignmentDataFilterITS.cxx:642 AliAlignmentDataFilterITS.cxx:643 AliAlignmentDataFilterITS.cxx:644 AliAlignmentDataFilterITS.cxx:645 AliAlignmentDataFilterITS.cxx:646 AliAlignmentDataFilterITS.cxx:647 AliAlignmentDataFilterITS.cxx:648 AliAlignmentDataFilterITS.cxx:649 AliAlignmentDataFilterITS.cxx:650 AliAlignmentDataFilterITS.cxx:651 AliAlignmentDataFilterITS.cxx:652 AliAlignmentDataFilterITS.cxx:653 AliAlignmentDataFilterITS.cxx:654 AliAlignmentDataFilterITS.cxx:655 AliAlignmentDataFilterITS.cxx:656 AliAlignmentDataFilterITS.cxx:657 AliAlignmentDataFilterITS.cxx:658 AliAlignmentDataFilterITS.cxx:659 AliAlignmentDataFilterITS.cxx:660 AliAlignmentDataFilterITS.cxx:661 AliAlignmentDataFilterITS.cxx:662 AliAlignmentDataFilterITS.cxx:663 AliAlignmentDataFilterITS.cxx:664 AliAlignmentDataFilterITS.cxx:665 AliAlignmentDataFilterITS.cxx:666 AliAlignmentDataFilterITS.cxx:667 AliAlignmentDataFilterITS.cxx:668 AliAlignmentDataFilterITS.cxx:669 AliAlignmentDataFilterITS.cxx:670 AliAlignmentDataFilterITS.cxx:671 AliAlignmentDataFilterITS.cxx:672 AliAlignmentDataFilterITS.cxx:673 AliAlignmentDataFilterITS.cxx:674 AliAlignmentDataFilterITS.cxx:675 AliAlignmentDataFilterITS.cxx:676 AliAlignmentDataFilterITS.cxx:677 AliAlignmentDataFilterITS.cxx:678 AliAlignmentDataFilterITS.cxx:679 AliAlignmentDataFilterITS.cxx:680 AliAlignmentDataFilterITS.cxx:681 AliAlignmentDataFilterITS.cxx:682 AliAlignmentDataFilterITS.cxx:683 AliAlignmentDataFilterITS.cxx:684 AliAlignmentDataFilterITS.cxx:685 AliAlignmentDataFilterITS.cxx:686 AliAlignmentDataFilterITS.cxx:687 AliAlignmentDataFilterITS.cxx:688 AliAlignmentDataFilterITS.cxx:689 AliAlignmentDataFilterITS.cxx:690 AliAlignmentDataFilterITS.cxx:691 AliAlignmentDataFilterITS.cxx:692 AliAlignmentDataFilterITS.cxx:693 AliAlignmentDataFilterITS.cxx:694 AliAlignmentDataFilterITS.cxx:695 AliAlignmentDataFilterITS.cxx:696 AliAlignmentDataFilterITS.cxx:697 AliAlignmentDataFilterITS.cxx:698 AliAlignmentDataFilterITS.cxx:699 AliAlignmentDataFilterITS.cxx:700 AliAlignmentDataFilterITS.cxx:701 AliAlignmentDataFilterITS.cxx:702 AliAlignmentDataFilterITS.cxx:703 AliAlignmentDataFilterITS.cxx:704 AliAlignmentDataFilterITS.cxx:705 AliAlignmentDataFilterITS.cxx:706 AliAlignmentDataFilterITS.cxx:707 AliAlignmentDataFilterITS.cxx:708 AliAlignmentDataFilterITS.cxx:709 AliAlignmentDataFilterITS.cxx:710 AliAlignmentDataFilterITS.cxx:711 AliAlignmentDataFilterITS.cxx:712 AliAlignmentDataFilterITS.cxx:713 AliAlignmentDataFilterITS.cxx:714 AliAlignmentDataFilterITS.cxx:715 AliAlignmentDataFilterITS.cxx:716 AliAlignmentDataFilterITS.cxx:717 AliAlignmentDataFilterITS.cxx:718 AliAlignmentDataFilterITS.cxx:719 AliAlignmentDataFilterITS.cxx:720 AliAlignmentDataFilterITS.cxx:721 AliAlignmentDataFilterITS.cxx:722 AliAlignmentDataFilterITS.cxx:723 AliAlignmentDataFilterITS.cxx:724 AliAlignmentDataFilterITS.cxx:725 AliAlignmentDataFilterITS.cxx:726 AliAlignmentDataFilterITS.cxx:727 AliAlignmentDataFilterITS.cxx:728 AliAlignmentDataFilterITS.cxx:729 AliAlignmentDataFilterITS.cxx:730 AliAlignmentDataFilterITS.cxx:731 AliAlignmentDataFilterITS.cxx:732 AliAlignmentDataFilterITS.cxx:733 AliAlignmentDataFilterITS.cxx:734 AliAlignmentDataFilterITS.cxx:735 AliAlignmentDataFilterITS.cxx:736 AliAlignmentDataFilterITS.cxx:737 AliAlignmentDataFilterITS.cxx:738 AliAlignmentDataFilterITS.cxx:739 AliAlignmentDataFilterITS.cxx:740 AliAlignmentDataFilterITS.cxx:741 AliAlignmentDataFilterITS.cxx:742 AliAlignmentDataFilterITS.cxx:743 AliAlignmentDataFilterITS.cxx:744 AliAlignmentDataFilterITS.cxx:745 AliAlignmentDataFilterITS.cxx:746 AliAlignmentDataFilterITS.cxx:747 AliAlignmentDataFilterITS.cxx:748 AliAlignmentDataFilterITS.cxx:749 AliAlignmentDataFilterITS.cxx:750 AliAlignmentDataFilterITS.cxx:751 AliAlignmentDataFilterITS.cxx:752 AliAlignmentDataFilterITS.cxx:753 AliAlignmentDataFilterITS.cxx:754 AliAlignmentDataFilterITS.cxx:755 AliAlignmentDataFilterITS.cxx:756 AliAlignmentDataFilterITS.cxx:757 AliAlignmentDataFilterITS.cxx:758 AliAlignmentDataFilterITS.cxx:759 AliAlignmentDataFilterITS.cxx:760 AliAlignmentDataFilterITS.cxx:761 AliAlignmentDataFilterITS.cxx:762 AliAlignmentDataFilterITS.cxx:763 AliAlignmentDataFilterITS.cxx:764 AliAlignmentDataFilterITS.cxx:765 AliAlignmentDataFilterITS.cxx:766 AliAlignmentDataFilterITS.cxx:767 AliAlignmentDataFilterITS.cxx:768 AliAlignmentDataFilterITS.cxx:769 AliAlignmentDataFilterITS.cxx:770 AliAlignmentDataFilterITS.cxx:771 AliAlignmentDataFilterITS.cxx:772 AliAlignmentDataFilterITS.cxx:773 AliAlignmentDataFilterITS.cxx:774 AliAlignmentDataFilterITS.cxx:775 AliAlignmentDataFilterITS.cxx:776 AliAlignmentDataFilterITS.cxx:777 AliAlignmentDataFilterITS.cxx:778 AliAlignmentDataFilterITS.cxx:779 AliAlignmentDataFilterITS.cxx:780 AliAlignmentDataFilterITS.cxx:781 AliAlignmentDataFilterITS.cxx:782 AliAlignmentDataFilterITS.cxx:783 AliAlignmentDataFilterITS.cxx:784 AliAlignmentDataFilterITS.cxx:785 AliAlignmentDataFilterITS.cxx:786 AliAlignmentDataFilterITS.cxx:787 AliAlignmentDataFilterITS.cxx:788 AliAlignmentDataFilterITS.cxx:789 AliAlignmentDataFilterITS.cxx:790 AliAlignmentDataFilterITS.cxx:791 AliAlignmentDataFilterITS.cxx:792 AliAlignmentDataFilterITS.cxx:793 AliAlignmentDataFilterITS.cxx:794 AliAlignmentDataFilterITS.cxx:795 AliAlignmentDataFilterITS.cxx:796 AliAlignmentDataFilterITS.cxx:797 AliAlignmentDataFilterITS.cxx:798 AliAlignmentDataFilterITS.cxx:799 AliAlignmentDataFilterITS.cxx:800 AliAlignmentDataFilterITS.cxx:801 AliAlignmentDataFilterITS.cxx:802 AliAlignmentDataFilterITS.cxx:803 AliAlignmentDataFilterITS.cxx:804 AliAlignmentDataFilterITS.cxx:805 AliAlignmentDataFilterITS.cxx:806 AliAlignmentDataFilterITS.cxx:807 AliAlignmentDataFilterITS.cxx:808 AliAlignmentDataFilterITS.cxx:809 AliAlignmentDataFilterITS.cxx:810 AliAlignmentDataFilterITS.cxx:811 AliAlignmentDataFilterITS.cxx:812 AliAlignmentDataFilterITS.cxx:813 AliAlignmentDataFilterITS.cxx:814 AliAlignmentDataFilterITS.cxx:815 AliAlignmentDataFilterITS.cxx:816 AliAlignmentDataFilterITS.cxx:817 AliAlignmentDataFilterITS.cxx:818 AliAlignmentDataFilterITS.cxx:819 AliAlignmentDataFilterITS.cxx:820 AliAlignmentDataFilterITS.cxx:821 AliAlignmentDataFilterITS.cxx:822 AliAlignmentDataFilterITS.cxx:823 AliAlignmentDataFilterITS.cxx:824 AliAlignmentDataFilterITS.cxx:825 AliAlignmentDataFilterITS.cxx:826 AliAlignmentDataFilterITS.cxx:827 AliAlignmentDataFilterITS.cxx:828 AliAlignmentDataFilterITS.cxx:829 AliAlignmentDataFilterITS.cxx:830 AliAlignmentDataFilterITS.cxx:831 AliAlignmentDataFilterITS.cxx:832 AliAlignmentDataFilterITS.cxx:833 AliAlignmentDataFilterITS.cxx:834 AliAlignmentDataFilterITS.cxx:835 AliAlignmentDataFilterITS.cxx:836 AliAlignmentDataFilterITS.cxx:837 AliAlignmentDataFilterITS.cxx:838 AliAlignmentDataFilterITS.cxx:839 AliAlignmentDataFilterITS.cxx:840 AliAlignmentDataFilterITS.cxx:841 AliAlignmentDataFilterITS.cxx:842 AliAlignmentDataFilterITS.cxx:843 AliAlignmentDataFilterITS.cxx:844 AliAlignmentDataFilterITS.cxx:845 AliAlignmentDataFilterITS.cxx:846 AliAlignmentDataFilterITS.cxx:847 AliAlignmentDataFilterITS.cxx:848 AliAlignmentDataFilterITS.cxx:849 AliAlignmentDataFilterITS.cxx:850 AliAlignmentDataFilterITS.cxx:851 AliAlignmentDataFilterITS.cxx:852 AliAlignmentDataFilterITS.cxx:853 AliAlignmentDataFilterITS.cxx:854 AliAlignmentDataFilterITS.cxx:855 AliAlignmentDataFilterITS.cxx:856 AliAlignmentDataFilterITS.cxx:857 AliAlignmentDataFilterITS.cxx:858 AliAlignmentDataFilterITS.cxx:859 AliAlignmentDataFilterITS.cxx:860 AliAlignmentDataFilterITS.cxx:861 AliAlignmentDataFilterITS.cxx:862 AliAlignmentDataFilterITS.cxx:863 AliAlignmentDataFilterITS.cxx:864 AliAlignmentDataFilterITS.cxx:865 AliAlignmentDataFilterITS.cxx:866 AliAlignmentDataFilterITS.cxx:867 AliAlignmentDataFilterITS.cxx:868 AliAlignmentDataFilterITS.cxx:869 AliAlignmentDataFilterITS.cxx:870 AliAlignmentDataFilterITS.cxx:871 AliAlignmentDataFilterITS.cxx:872 AliAlignmentDataFilterITS.cxx:873 AliAlignmentDataFilterITS.cxx:874 AliAlignmentDataFilterITS.cxx:875 AliAlignmentDataFilterITS.cxx:876 AliAlignmentDataFilterITS.cxx:877 AliAlignmentDataFilterITS.cxx:878 AliAlignmentDataFilterITS.cxx:879 AliAlignmentDataFilterITS.cxx:880 AliAlignmentDataFilterITS.cxx:881 AliAlignmentDataFilterITS.cxx:882 AliAlignmentDataFilterITS.cxx:883 AliAlignmentDataFilterITS.cxx:884 AliAlignmentDataFilterITS.cxx:885 AliAlignmentDataFilterITS.cxx:886 AliAlignmentDataFilterITS.cxx:887 AliAlignmentDataFilterITS.cxx:888 AliAlignmentDataFilterITS.cxx:889 AliAlignmentDataFilterITS.cxx:890 AliAlignmentDataFilterITS.cxx:891 AliAlignmentDataFilterITS.cxx:892 AliAlignmentDataFilterITS.cxx:893 AliAlignmentDataFilterITS.cxx:894 AliAlignmentDataFilterITS.cxx:895 AliAlignmentDataFilterITS.cxx:896 AliAlignmentDataFilterITS.cxx:897 AliAlignmentDataFilterITS.cxx:898 AliAlignmentDataFilterITS.cxx:899 AliAlignmentDataFilterITS.cxx:900 AliAlignmentDataFilterITS.cxx:901 AliAlignmentDataFilterITS.cxx:902 AliAlignmentDataFilterITS.cxx:903 AliAlignmentDataFilterITS.cxx:904 AliAlignmentDataFilterITS.cxx:905 AliAlignmentDataFilterITS.cxx:906 AliAlignmentDataFilterITS.cxx:907 AliAlignmentDataFilterITS.cxx:908 AliAlignmentDataFilterITS.cxx:909 AliAlignmentDataFilterITS.cxx:910 AliAlignmentDataFilterITS.cxx:911 AliAlignmentDataFilterITS.cxx:912 AliAlignmentDataFilterITS.cxx:913 AliAlignmentDataFilterITS.cxx:914 AliAlignmentDataFilterITS.cxx:915 AliAlignmentDataFilterITS.cxx:916 AliAlignmentDataFilterITS.cxx:917 AliAlignmentDataFilterITS.cxx:918 AliAlignmentDataFilterITS.cxx:919 AliAlignmentDataFilterITS.cxx:920 AliAlignmentDataFilterITS.cxx:921 AliAlignmentDataFilterITS.cxx:922 AliAlignmentDataFilterITS.cxx:923 AliAlignmentDataFilterITS.cxx:924 AliAlignmentDataFilterITS.cxx:925 AliAlignmentDataFilterITS.cxx:926 AliAlignmentDataFilterITS.cxx:927 AliAlignmentDataFilterITS.cxx:928 AliAlignmentDataFilterITS.cxx:929 AliAlignmentDataFilterITS.cxx:930 AliAlignmentDataFilterITS.cxx:931 AliAlignmentDataFilterITS.cxx:932 AliAlignmentDataFilterITS.cxx:933 AliAlignmentDataFilterITS.cxx:934 AliAlignmentDataFilterITS.cxx:935 AliAlignmentDataFilterITS.cxx:936 AliAlignmentDataFilterITS.cxx:937 AliAlignmentDataFilterITS.cxx:938 AliAlignmentDataFilterITS.cxx:939 AliAlignmentDataFilterITS.cxx:940 AliAlignmentDataFilterITS.cxx:941 AliAlignmentDataFilterITS.cxx:942 AliAlignmentDataFilterITS.cxx:943 AliAlignmentDataFilterITS.cxx:944 AliAlignmentDataFilterITS.cxx:945 AliAlignmentDataFilterITS.cxx:946 AliAlignmentDataFilterITS.cxx:947 AliAlignmentDataFilterITS.cxx:948 AliAlignmentDataFilterITS.cxx:949 AliAlignmentDataFilterITS.cxx:950 AliAlignmentDataFilterITS.cxx:951 AliAlignmentDataFilterITS.cxx:952 AliAlignmentDataFilterITS.cxx:953 AliAlignmentDataFilterITS.cxx:954 AliAlignmentDataFilterITS.cxx:955 AliAlignmentDataFilterITS.cxx:956 AliAlignmentDataFilterITS.cxx:957 AliAlignmentDataFilterITS.cxx:958 AliAlignmentDataFilterITS.cxx:959 AliAlignmentDataFilterITS.cxx:960 AliAlignmentDataFilterITS.cxx:961 AliAlignmentDataFilterITS.cxx:962 AliAlignmentDataFilterITS.cxx:963 AliAlignmentDataFilterITS.cxx:964 AliAlignmentDataFilterITS.cxx:965 AliAlignmentDataFilterITS.cxx:966 AliAlignmentDataFilterITS.cxx:967 AliAlignmentDataFilterITS.cxx:968 AliAlignmentDataFilterITS.cxx:969 AliAlignmentDataFilterITS.cxx:970 AliAlignmentDataFilterITS.cxx:971 AliAlignmentDataFilterITS.cxx:972 AliAlignmentDataFilterITS.cxx:973 AliAlignmentDataFilterITS.cxx:974 AliAlignmentDataFilterITS.cxx:975 AliAlignmentDataFilterITS.cxx:976 AliAlignmentDataFilterITS.cxx:977 AliAlignmentDataFilterITS.cxx:978 AliAlignmentDataFilterITS.cxx:979 AliAlignmentDataFilterITS.cxx:980 AliAlignmentDataFilterITS.cxx:981 AliAlignmentDataFilterITS.cxx:982 AliAlignmentDataFilterITS.cxx:983 AliAlignmentDataFilterITS.cxx:984 AliAlignmentDataFilterITS.cxx:985 AliAlignmentDataFilterITS.cxx:986 AliAlignmentDataFilterITS.cxx:987 AliAlignmentDataFilterITS.cxx:988 AliAlignmentDataFilterITS.cxx:989 AliAlignmentDataFilterITS.cxx:990 AliAlignmentDataFilterITS.cxx:991 AliAlignmentDataFilterITS.cxx:992 AliAlignmentDataFilterITS.cxx:993 AliAlignmentDataFilterITS.cxx:994 AliAlignmentDataFilterITS.cxx:995 AliAlignmentDataFilterITS.cxx:996 AliAlignmentDataFilterITS.cxx:997 AliAlignmentDataFilterITS.cxx:998 AliAlignmentDataFilterITS.cxx:999 AliAlignmentDataFilterITS.cxx:1000 AliAlignmentDataFilterITS.cxx:1001 AliAlignmentDataFilterITS.cxx:1002 AliAlignmentDataFilterITS.cxx:1003 AliAlignmentDataFilterITS.cxx:1004 AliAlignmentDataFilterITS.cxx:1005 AliAlignmentDataFilterITS.cxx:1006 AliAlignmentDataFilterITS.cxx:1007 AliAlignmentDataFilterITS.cxx:1008 AliAlignmentDataFilterITS.cxx:1009 AliAlignmentDataFilterITS.cxx:1010 AliAlignmentDataFilterITS.cxx:1011 AliAlignmentDataFilterITS.cxx:1012 AliAlignmentDataFilterITS.cxx:1013 AliAlignmentDataFilterITS.cxx:1014 AliAlignmentDataFilterITS.cxx:1015 AliAlignmentDataFilterITS.cxx:1016 AliAlignmentDataFilterITS.cxx:1017 AliAlignmentDataFilterITS.cxx:1018 AliAlignmentDataFilterITS.cxx:1019 AliAlignmentDataFilterITS.cxx:1020 AliAlignmentDataFilterITS.cxx:1021 AliAlignmentDataFilterITS.cxx:1022 AliAlignmentDataFilterITS.cxx:1023 AliAlignmentDataFilterITS.cxx:1024 AliAlignmentDataFilterITS.cxx:1025 AliAlignmentDataFilterITS.cxx:1026 AliAlignmentDataFilterITS.cxx:1027 AliAlignmentDataFilterITS.cxx:1028 AliAlignmentDataFilterITS.cxx:1029 AliAlignmentDataFilterITS.cxx:1030 AliAlignmentDataFilterITS.cxx:1031 AliAlignmentDataFilterITS.cxx:1032 AliAlignmentDataFilterITS.cxx:1033 AliAlignmentDataFilterITS.cxx:1034 AliAlignmentDataFilterITS.cxx:1035 AliAlignmentDataFilterITS.cxx:1036 AliAlignmentDataFilterITS.cxx:1037 AliAlignmentDataFilterITS.cxx:1038 AliAlignmentDataFilterITS.cxx:1039 AliAlignmentDataFilterITS.cxx:1040 AliAlignmentDataFilterITS.cxx:1041 AliAlignmentDataFilterITS.cxx:1042 AliAlignmentDataFilterITS.cxx:1043 AliAlignmentDataFilterITS.cxx:1044 AliAlignmentDataFilterITS.cxx:1045 AliAlignmentDataFilterITS.cxx:1046 AliAlignmentDataFilterITS.cxx:1047 AliAlignmentDataFilterITS.cxx:1048 AliAlignmentDataFilterITS.cxx:1049 AliAlignmentDataFilterITS.cxx:1050 AliAlignmentDataFilterITS.cxx:1051 AliAlignmentDataFilterITS.cxx:1052 AliAlignmentDataFilterITS.cxx:1053 AliAlignmentDataFilterITS.cxx:1054 AliAlignmentDataFilterITS.cxx:1055 AliAlignmentDataFilterITS.cxx:1056 AliAlignmentDataFilterITS.cxx:1057 AliAlignmentDataFilterITS.cxx:1058 AliAlignmentDataFilterITS.cxx:1059 AliAlignmentDataFilterITS.cxx:1060 AliAlignmentDataFilterITS.cxx:1061 AliAlignmentDataFilterITS.cxx:1062 AliAlignmentDataFilterITS.cxx:1063 AliAlignmentDataFilterITS.cxx:1064 AliAlignmentDataFilterITS.cxx:1065 AliAlignmentDataFilterITS.cxx:1066 AliAlignmentDataFilterITS.cxx:1067 AliAlignmentDataFilterITS.cxx:1068 AliAlignmentDataFilterITS.cxx:1069 AliAlignmentDataFilterITS.cxx:1070 AliAlignmentDataFilterITS.cxx:1071 AliAlignmentDataFilterITS.cxx:1072 AliAlignmentDataFilterITS.cxx:1073 AliAlignmentDataFilterITS.cxx:1074 AliAlignmentDataFilterITS.cxx:1075 AliAlignmentDataFilterITS.cxx:1076 AliAlignmentDataFilterITS.cxx:1077 AliAlignmentDataFilterITS.cxx:1078 AliAlignmentDataFilterITS.cxx:1079 AliAlignmentDataFilterITS.cxx:1080 AliAlignmentDataFilterITS.cxx:1081 AliAlignmentDataFilterITS.cxx:1082 AliAlignmentDataFilterITS.cxx:1083 AliAlignmentDataFilterITS.cxx:1084 AliAlignmentDataFilterITS.cxx:1085 AliAlignmentDataFilterITS.cxx:1086 AliAlignmentDataFilterITS.cxx:1087 AliAlignmentDataFilterITS.cxx:1088 AliAlignmentDataFilterITS.cxx:1089 AliAlignmentDataFilterITS.cxx:1090 AliAlignmentDataFilterITS.cxx:1091 AliAlignmentDataFilterITS.cxx:1092 AliAlignmentDataFilterITS.cxx:1093 AliAlignmentDataFilterITS.cxx:1094 AliAlignmentDataFilterITS.cxx:1095 AliAlignmentDataFilterITS.cxx:1096 AliAlignmentDataFilterITS.cxx:1097 AliAlignmentDataFilterITS.cxx:1098 AliAlignmentDataFilterITS.cxx:1099 AliAlignmentDataFilterITS.cxx:1100 AliAlignmentDataFilterITS.cxx:1101 AliAlignmentDataFilterITS.cxx:1102 AliAlignmentDataFilterITS.cxx:1103 AliAlignmentDataFilterITS.cxx:1104 AliAlignmentDataFilterITS.cxx:1105 AliAlignmentDataFilterITS.cxx:1106 AliAlignmentDataFilterITS.cxx:1107 AliAlignmentDataFilterITS.cxx:1108 AliAlignmentDataFilterITS.cxx:1109 AliAlignmentDataFilterITS.cxx:1110 AliAlignmentDataFilterITS.cxx:1111 AliAlignmentDataFilterITS.cxx:1112 AliAlignmentDataFilterITS.cxx:1113 AliAlignmentDataFilterITS.cxx:1114 AliAlignmentDataFilterITS.cxx:1115 AliAlignmentDataFilterITS.cxx:1116 AliAlignmentDataFilterITS.cxx:1117 AliAlignmentDataFilterITS.cxx:1118 AliAlignmentDataFilterITS.cxx:1119 AliAlignmentDataFilterITS.cxx:1120 AliAlignmentDataFilterITS.cxx:1121 AliAlignmentDataFilterITS.cxx:1122 AliAlignmentDataFilterITS.cxx:1123 AliAlignmentDataFilterITS.cxx:1124 AliAlignmentDataFilterITS.cxx:1125 AliAlignmentDataFilterITS.cxx:1126 AliAlignmentDataFilterITS.cxx:1127 AliAlignmentDataFilterITS.cxx:1128 AliAlignmentDataFilterITS.cxx:1129 AliAlignmentDataFilterITS.cxx:1130 AliAlignmentDataFilterITS.cxx:1131 AliAlignmentDataFilterITS.cxx:1132 AliAlignmentDataFilterITS.cxx:1133 AliAlignmentDataFilterITS.cxx:1134 AliAlignmentDataFilterITS.cxx:1135 AliAlignmentDataFilterITS.cxx:1136 AliAlignmentDataFilterITS.cxx:1137 AliAlignmentDataFilterITS.cxx:1138 AliAlignmentDataFilterITS.cxx:1139 AliAlignmentDataFilterITS.cxx:1140 AliAlignmentDataFilterITS.cxx:1141 AliAlignmentDataFilterITS.cxx:1142 AliAlignmentDataFilterITS.cxx:1143 AliAlignmentDataFilterITS.cxx:1144 AliAlignmentDataFilterITS.cxx:1145 AliAlignmentDataFilterITS.cxx:1146 AliAlignmentDataFilterITS.cxx:1147 AliAlignmentDataFilterITS.cxx:1148 AliAlignmentDataFilterITS.cxx:1149 AliAlignmentDataFilterITS.cxx:1150 AliAlignmentDataFilterITS.cxx:1151 AliAlignmentDataFilterITS.cxx:1152 AliAlignmentDataFilterITS.cxx:1153 AliAlignmentDataFilterITS.cxx:1154 AliAlignmentDataFilterITS.cxx:1155 AliAlignmentDataFilterITS.cxx:1156 AliAlignmentDataFilterITS.cxx:1157 AliAlignmentDataFilterITS.cxx:1158 AliAlignmentDataFilterITS.cxx:1159 AliAlignmentDataFilterITS.cxx:1160 AliAlignmentDataFilterITS.cxx:1161 AliAlignmentDataFilterITS.cxx:1162 AliAlignmentDataFilterITS.cxx:1163 AliAlignmentDataFilterITS.cxx:1164 AliAlignmentDataFilterITS.cxx:1165 AliAlignmentDataFilterITS.cxx:1166 AliAlignmentDataFilterITS.cxx:1167 AliAlignmentDataFilterITS.cxx:1168 AliAlignmentDataFilterITS.cxx:1169 AliAlignmentDataFilterITS.cxx:1170 AliAlignmentDataFilterITS.cxx:1171 AliAlignmentDataFilterITS.cxx:1172 AliAlignmentDataFilterITS.cxx:1173 AliAlignmentDataFilterITS.cxx:1174 AliAlignmentDataFilterITS.cxx:1175 AliAlignmentDataFilterITS.cxx:1176 AliAlignmentDataFilterITS.cxx:1177 AliAlignmentDataFilterITS.cxx:1178 AliAlignmentDataFilterITS.cxx:1179 AliAlignmentDataFilterITS.cxx:1180 AliAlignmentDataFilterITS.cxx:1181 AliAlignmentDataFilterITS.cxx:1182 AliAlignmentDataFilterITS.cxx:1183 AliAlignmentDataFilterITS.cxx:1184 AliAlignmentDataFilterITS.cxx:1185 AliAlignmentDataFilterITS.cxx:1186 AliAlignmentDataFilterITS.cxx:1187 AliAlignmentDataFilterITS.cxx:1188 AliAlignmentDataFilterITS.cxx:1189 AliAlignmentDataFilterITS.cxx:1190 AliAlignmentDataFilterITS.cxx:1191 AliAlignmentDataFilterITS.cxx:1192 AliAlignmentDataFilterITS.cxx:1193 AliAlignmentDataFilterITS.cxx:1194 AliAlignmentDataFilterITS.cxx:1195