#include <TFile.h>
#include <TTree.h>
#include <TParticle.h>
#include <TParticlePDG.h>
#include <TSystem.h>
#include <Riostream.h>
#include <TClonesArray.h>
#include "AliTracker.h"
#include "AliITSTrackleterSPDEff.h"
#include "AliITSgeomTGeo.h"
#include "AliLog.h"
#include "AliITSPlaneEffSPD.h"
#include "AliStack.h"
#include "AliTrackReference.h"
#include "AliRunLoader.h"
#include "AliITSReconstructor.h"
#include "AliITSRecPoint.h"
#include "AliESDEvent.h"
#include "AliESDVertex.h"
using std::ofstream;
using std::ios;
using std::ifstream;
ClassImp(AliITSTrackleterSPDEff)
AliITSTrackleterSPDEff::AliITSTrackleterSPDEff():
AliTracker(),
fClustersLay1(0),
fClustersLay2(0),
fTracklets(0),
fAssociationFlag(0),
fNClustersLay1(0),
fNClustersLay2(0),
fNTracklets(0),
fOnlyOneTrackletPerC2(0),
fPhiWindowL2(0),
fZetaWindowL2(0),
fPhiOverlapCut(0),
fZetaOverlapCut(0),
fHistOn(0),
fhClustersDPhiAcc(0),
fhClustersDThetaAcc(0),
fhClustersDZetaAcc(0),
fhClustersDPhiAll(0),
fhClustersDThetaAll(0),
fhClustersDZetaAll(0),
fhDPhiVsDThetaAll(0),
fhDPhiVsDThetaAcc(0),
fhDPhiVsDZetaAll(0),
fhDPhiVsDZetaAcc(0),
fhetaTracklets(0),
fhphiTracklets(0),
fhetaClustersLay1(0),
fhphiClustersLay1(0),
fAssociationFlag1(0),
fChipPredOnLay2(0),
fChipPredOnLay1(0),
fNTracklets1(0),
fPhiWindowL1(0),
fZetaWindowL1(0),
fOnlyOneTrackletPerC1(0),
fUpdateOncePerEventPlaneEff(0),
fMinContVtx(0),
fChipUpdatedInEvent(0),
fPlaneEffSPD(0),
fPlaneEffBkg(0),
fReflectClusterAroundZAxisForLayer0(kFALSE),
fReflectClusterAroundZAxisForLayer1(kFALSE),
fLightBkgStudyInParallel(kFALSE),
fMC(0),
fUseOnlyPrimaryForPred(0),
fUseOnlySecondaryForPred(0),
fUseOnlySameParticle(0),
fUseOnlyDifferentParticle(0),
fUseOnlyStableParticle(1),
fPredictionPrimary(0),
fPredictionSecondary(0),
fClusterPrimary(0),
fClusterSecondary(0),
fSuccessPP(0),
fSuccessTT(0),
fSuccessS(0),
fSuccessP(0),
fFailureS(0),
fFailureP(0),
fRecons(0),
fNonRecons(0),
fhClustersDPhiInterpAcc(0),
fhClustersDThetaInterpAcc(0),
fhClustersDZetaInterpAcc(0),
fhClustersDPhiInterpAll(0),
fhClustersDThetaInterpAll(0),
fhClustersDZetaInterpAll(0),
fhDPhiVsDThetaInterpAll(0),
fhDPhiVsDThetaInterpAcc(0),
fhDPhiVsDZetaInterpAll(0),
fhDPhiVsDZetaInterpAcc(0),
fhetaClustersLay2(0),
fhphiClustersLay2(0),
fhClustersInChip(0),
fhClustersInModuleLay1(0),
fhClustersInModuleLay2(0)
{
Init();
}
void AliITSTrackleterSPDEff::Init() {
SetPhiWindowL2();
SetZetaWindowL2();
SetOnlyOneTrackletPerC2();
fClustersLay1 = new Float_t*[300000];
fClustersLay2 = new Float_t*[300000];
fTracklets = new Float_t*[300000];
fAssociationFlag = new Bool_t[300000];
SetPhiWindowL1();
SetZetaWindowL1();
SetOnlyOneTrackletPerC1();
fAssociationFlag1 = new Bool_t[300000];
fChipPredOnLay2 = new UInt_t[300000];
fChipPredOnLay1 = new UInt_t[300000];
fChipUpdatedInEvent = new Bool_t[1200];
for(Int_t i=0; i<300000; i++) {
fClustersLay1[i] = new Float_t[6];
fClustersLay2[i] = new Float_t[6];
fTracklets[i] = new Float_t[5];
fAssociationFlag[i] = kFALSE;
fAssociationFlag1[i] = kFALSE;
}
for(Int_t i=0;i<1200; i++) fChipUpdatedInEvent[i] = kFALSE;
if (GetHistOn()) BookHistos();
fPlaneEffSPD = new AliITSPlaneEffSPD();
SetLightBkgStudyInParallel();
}
AliITSTrackleterSPDEff::AliITSTrackleterSPDEff(const AliITSTrackleterSPDEff &mr) :
AliTracker(mr),
fClustersLay1(mr.fClustersLay1),
fClustersLay2(mr.fClustersLay2),
fTracklets(mr.fTracklets),
fAssociationFlag(mr.fAssociationFlag),
fNClustersLay1(mr.fNClustersLay1),
fNClustersLay2(mr.fNClustersLay2),
fNTracklets(mr.fNTracklets),
fOnlyOneTrackletPerC2(mr.fOnlyOneTrackletPerC2),
fPhiWindowL2(mr.fPhiWindowL2),
fZetaWindowL2(mr.fZetaWindowL2),
fPhiOverlapCut(mr.fPhiOverlapCut),
fZetaOverlapCut(mr.fZetaOverlapCut),
fHistOn(mr.fHistOn),
fhClustersDPhiAcc(mr.fhClustersDPhiAcc),
fhClustersDThetaAcc(mr.fhClustersDThetaAcc),
fhClustersDZetaAcc(mr.fhClustersDZetaAcc),
fhClustersDPhiAll(mr.fhClustersDPhiAll),
fhClustersDThetaAll(mr.fhClustersDThetaAll),
fhClustersDZetaAll(mr.fhClustersDZetaAll),
fhDPhiVsDThetaAll(mr.fhDPhiVsDThetaAll),
fhDPhiVsDThetaAcc(mr.fhDPhiVsDThetaAcc),
fhDPhiVsDZetaAll(mr.fhDPhiVsDZetaAll),
fhDPhiVsDZetaAcc(mr.fhDPhiVsDZetaAcc),
fhetaTracklets(mr.fhetaTracklets),
fhphiTracklets(mr.fhphiTracklets),
fhetaClustersLay1(mr.fhetaClustersLay1),
fhphiClustersLay1(mr.fhphiClustersLay1),
fAssociationFlag1(mr.fAssociationFlag1),
fChipPredOnLay2(mr.fChipPredOnLay2),
fChipPredOnLay1(mr.fChipPredOnLay1),
fNTracklets1(mr.fNTracklets1),
fPhiWindowL1(mr.fPhiWindowL1),
fZetaWindowL1(mr.fZetaWindowL1),
fOnlyOneTrackletPerC1(mr.fOnlyOneTrackletPerC1),
fUpdateOncePerEventPlaneEff(mr.fUpdateOncePerEventPlaneEff),
fMinContVtx(mr.fMinContVtx),
fChipUpdatedInEvent(mr.fChipUpdatedInEvent),
fPlaneEffSPD(mr.fPlaneEffSPD),
fPlaneEffBkg(mr.fPlaneEffBkg),
fReflectClusterAroundZAxisForLayer0(mr.fReflectClusterAroundZAxisForLayer0),
fReflectClusterAroundZAxisForLayer1(mr.fReflectClusterAroundZAxisForLayer1),
fLightBkgStudyInParallel(mr.fLightBkgStudyInParallel),
fMC(mr.fMC),
fUseOnlyPrimaryForPred(mr.fUseOnlyPrimaryForPred),
fUseOnlySecondaryForPred(mr.fUseOnlySecondaryForPred),
fUseOnlySameParticle(mr.fUseOnlySameParticle),
fUseOnlyDifferentParticle(mr.fUseOnlyDifferentParticle),
fUseOnlyStableParticle(mr.fUseOnlyStableParticle),
fPredictionPrimary(mr.fPredictionPrimary),
fPredictionSecondary(mr.fPredictionSecondary),
fClusterPrimary(mr.fClusterPrimary),
fClusterSecondary(mr.fClusterSecondary),
fSuccessPP(mr.fSuccessPP),
fSuccessTT(mr.fSuccessTT),
fSuccessS(mr.fSuccessS),
fSuccessP(mr.fSuccessP),
fFailureS(mr.fFailureS),
fFailureP(mr.fFailureP),
fRecons(mr.fRecons),
fNonRecons(mr.fNonRecons),
fhClustersDPhiInterpAcc(mr.fhClustersDPhiInterpAcc),
fhClustersDThetaInterpAcc(mr.fhClustersDThetaInterpAcc),
fhClustersDZetaInterpAcc(mr.fhClustersDZetaInterpAcc),
fhClustersDPhiInterpAll(mr.fhClustersDPhiInterpAll),
fhClustersDThetaInterpAll(mr.fhClustersDThetaInterpAll),
fhClustersDZetaInterpAll(mr.fhClustersDZetaInterpAll),
fhDPhiVsDThetaInterpAll(mr.fhDPhiVsDThetaInterpAll),
fhDPhiVsDThetaInterpAcc(mr.fhDPhiVsDThetaInterpAcc),
fhDPhiVsDZetaInterpAll(mr.fhDPhiVsDZetaInterpAll),
fhDPhiVsDZetaInterpAcc(mr.fhDPhiVsDZetaInterpAcc),
fhetaClustersLay2(mr.fhetaClustersLay2),
fhphiClustersLay2(mr.fhphiClustersLay2),
fhClustersInChip(mr.fhClustersInChip),
fhClustersInModuleLay1(mr.fhClustersInModuleLay1),
fhClustersInModuleLay2(mr.fhClustersInModuleLay2)
{
}
AliITSTrackleterSPDEff& AliITSTrackleterSPDEff::operator=(const AliITSTrackleterSPDEff& mr){
this->~AliITSTrackleterSPDEff();
new(this) AliITSTrackleterSPDEff(mr);
return *this;
}
AliITSTrackleterSPDEff::~AliITSTrackleterSPDEff(){
for(Int_t i=0; i<300000; i++) {
delete [] fClustersLay1[i];
delete [] fClustersLay2[i];
delete [] fTracklets[i];
}
delete [] fClustersLay1;
delete [] fClustersLay2;
delete [] fTracklets;
delete [] fAssociationFlag;
DeleteHistos();
delete [] fAssociationFlag1;
delete [] fChipPredOnLay2;
delete [] fChipPredOnLay1;
delete [] fChipUpdatedInEvent;
delete [] fPredictionPrimary;
delete [] fPredictionSecondary;
delete [] fClusterPrimary;
delete [] fClusterSecondary;
delete [] fSuccessPP;
delete [] fSuccessTT;
delete [] fSuccessS;
delete [] fSuccessP;
delete [] fFailureS;
delete [] fFailureP;
delete [] fRecons;
delete [] fNonRecons;
delete fPlaneEffSPD;
fPlaneEffSPD=0;
if(fPlaneEffBkg) {
delete fPlaneEffBkg;
fPlaneEffBkg=0;
}
}
void
AliITSTrackleterSPDEff::Reconstruct(AliStack *pStack, TTree *tRef, Bool_t lbkg) {
if(lbkg && !GetLightBkgStudyInParallel()) {
AliError("You asked for lightBackground in the Reconstruction without proper call to SetLightBkgStudyInParallel(1)");
return;
}
AliITSPlaneEffSPD *pe;
if(lbkg) {
pe=fPlaneEffBkg;
} else {
pe=fPlaneEffSPD;
}
fNTracklets = 0;
Float_t vtx[3];
vtx[0]=(Float_t)GetX();
vtx[1]=(Float_t)GetY();
vtx[2]=(Float_t)GetZ();
if(fReflectClusterAroundZAxisForLayer0 && !lbkg) ReflectClusterAroundZAxisForLayer(0);
if(fReflectClusterAroundZAxisForLayer1 && !lbkg) ReflectClusterAroundZAxisForLayer(1);
if(fMC && !pStack && !lbkg) {AliError("You asked for MC infos but AliStack not properly loaded"); return;}
if(fMC && !tRef && !lbkg) {AliError("You asked for MC infos but TrackRef Tree not properly loaded"); return;}
Bool_t found;
Int_t nfTraPred1=0; Int_t ntTraPred1=0;
Int_t nfTraPred2=0; Int_t ntTraPred2=0;
Int_t nfClu1=0; Int_t ntClu1=0;
Int_t nfClu2=0; Int_t ntClu2=0;
for(Int_t i=0;i<1200;i++) fChipUpdatedInEvent[i] = kFALSE;
AliDebug(1,"Looking for tracklets... ");
AliDebug(1,Form("Reconstruct: vtx[0] = %f, vtx[1] = %f, vtx[2] = %f",vtx[0],vtx[1],vtx[2]));
UInt_t key;
for (Int_t iC1=0; iC1<fNClustersLay1; iC1++) {
Float_t x = fClustersLay1[iC1][0] - vtx[0];
Float_t y = fClustersLay1[iC1][1] - vtx[1];
Float_t z = fClustersLay1[iC1][2] - vtx[2];
Float_t r = TMath::Sqrt(x*x + y*y +z*z);
fClustersLay1[iC1][0] = TMath::ACos(z/r);
fClustersLay1[iC1][1] = TMath::Pi() + TMath::ATan2(-y,-x);
fClustersLay1[iC1][2] = z;
found=FindChip(key, 1, vtx, fClustersLay1[iC1][0],fClustersLay1[iC1][1]);
if (!found) {
AliDebug(1,Form("Reconstruct: cannot find chip prediction on outer layer for cluster %d on the inner layer",iC1));
key=999999;
}
nfTraPred2+=(Int_t)found;
ntTraPred2++;
fChipPredOnLay2[iC1] = key;
fAssociationFlag1[iC1] = kFALSE;
if (fHistOn && !lbkg) {
Float_t eta=fClustersLay1[iC1][0];
eta= TMath::Tan(eta/2.);
eta=-TMath::Log(eta);
fhetaClustersLay1->Fill(eta);
fhphiClustersLay1->Fill(fClustersLay1[iC1][1]);
fhClustersInChip->Fill(fhClustersInChip->GetBinCenter(key+1));
}
}
for (Int_t iC2=0; iC2<fNClustersLay2; iC2++) {
Float_t x = fClustersLay2[iC2][0] - vtx[0];
Float_t y = fClustersLay2[iC2][1] - vtx[1];
Float_t z = fClustersLay2[iC2][2] - vtx[2];
Float_t r = TMath::Sqrt(x*x + y*y +z*z);
fClustersLay2[iC2][0] = TMath::ACos(z/r);
fClustersLay2[iC2][1] = TMath::Pi() + TMath::ATan2(-y,-x);
fClustersLay2[iC2][2] = z;
found=FindChip(key, 0, vtx, fClustersLay2[iC2][0],fClustersLay2[iC2][1]);
if (!found) {
AliDebug(1,Form("Reconstruct: cannot find chip prediction on inner layer for cluster %d on the outer layer",iC2));
key=999999;
}
nfTraPred1+=(Int_t)found;
ntTraPred1++;
fChipPredOnLay1[iC2] = key;
fAssociationFlag[iC2] = kFALSE;
if (fHistOn && !lbkg) {
Float_t eta=fClustersLay2[iC2][0];
eta= TMath::Tan(eta/2.);
eta=-TMath::Log(eta);
fhetaClustersLay2->Fill(eta);
fhphiClustersLay2->Fill(fClustersLay2[iC2][1]);
fhClustersInChip->Fill(fhClustersInChip->GetBinCenter(key+1));
}
}
for (Int_t iC1=0; iC1<fNClustersLay1; iC1++) {
if(fUpdateOncePerEventPlaneEff && fChipPredOnLay2[iC1]<1200 && fChipUpdatedInEvent[fChipPredOnLay2[iC1]]) continue;
Int_t iC2WithBestDist = 0;
Float_t distmin = 100.;
Float_t dPhimin = 0.;
Float_t dThetamin = 0.;
Float_t dZetamin = 0.;
Bool_t primary=kFALSE; Bool_t secondary=kFALSE;
if (fMC && !lbkg) {
Int_t lab1=(Int_t)fClustersLay1[iC1][3];
Int_t lab2=(Int_t)fClustersLay1[iC1][4];
Int_t lab3=(Int_t)fClustersLay1[iC1][5];
found=FindChip(key,0,vtx,fClustersLay1[iC1][0],fClustersLay1[iC1][1],fClustersLay1[iC1][2]);
if (!found) {AliDebug(1,
Form("Reconstruct MC: cannot find chip on inner layer for cluster %d",iC1)); }
else {
if((lab1 != -2 && PrimaryTrackChecker(lab1,pStack) ) ||
(lab2 != -2 && PrimaryTrackChecker(lab2,pStack) ) ||
(lab3 != -2 && PrimaryTrackChecker(lab3,pStack)))
{
fClusterPrimary[key]++;
primary=kTRUE;
if(fUseOnlySecondaryForPred) continue;
} else {
fClusterSecondary[key]++;
secondary=kTRUE;
if(fUseOnlyPrimaryForPred) continue;
}
}
if( fChipPredOnLay2[iC1]<1200) {
if((lab1 != -2 && PrimaryTrackChecker(lab1,pStack) ) ||
(lab2 != -2 && PrimaryTrackChecker(lab2,pStack) ) ||
(lab3 != -2 && PrimaryTrackChecker(lab3,pStack))) fPredictionPrimary[fChipPredOnLay2[iC1]]++;
else fPredictionSecondary[fChipPredOnLay2[iC1]]++;
if((lab1 != -2 && IsReconstructableAt(1,iC1,lab1,vtx,pStack,tRef)) ||
(lab2 != -2 && IsReconstructableAt(1,iC1,lab2,vtx,pStack,tRef)) ||
(lab3 != -2 && IsReconstructableAt(1,iC1,lab3,vtx,pStack,tRef))) fRecons[fChipPredOnLay2[iC1]]++;
else fNonRecons[fChipPredOnLay2[iC1]]++;
}
}
for (Int_t iC2=0; iC2<fNClustersLay2; iC2++) {
if (!fAssociationFlag[iC2]) {
Float_t dTheta = fClustersLay2[iC2][0] - fClustersLay1[iC1][0];
Float_t dPhi = TMath::Abs(fClustersLay2[iC2][1] - fClustersLay1[iC1][1]);
if (dPhi>TMath::Pi()) dPhi=2.*TMath::Pi()-dPhi;
Float_t r2 = fClustersLay2[iC2][2]/TMath::Cos(fClustersLay2[iC2][0]);
Float_t dZeta = TMath::Cos(fClustersLay1[iC1][0])*r2 - fClustersLay2[iC2][2];
if (fHistOn && !lbkg) {
fhClustersDPhiAll->Fill(dPhi);
fhClustersDThetaAll->Fill(dTheta);
fhClustersDZetaAll->Fill(dZeta);
fhDPhiVsDThetaAll->Fill(dTheta, dPhi);
fhDPhiVsDZetaAll->Fill(dZeta, dPhi);
}
Float_t d = TMath::Sqrt(dPhi*dPhi/fPhiWindowL2/fPhiWindowL2 +
dZeta*dZeta/fZetaWindowL2/fZetaWindowL2);
if (d>1) continue;
if (TMath::Sqrt(dZeta*dZeta+(r2*dPhi*r2*dPhi)) < distmin ) {
distmin=TMath::Sqrt(dZeta*dZeta + (r2*dPhi*r2*dPhi));
dPhimin = dPhi;
dThetamin = dTheta;
dZetamin = dZeta;
iC2WithBestDist = iC2;
}
}
}
if (distmin<100) {
if (fHistOn && !lbkg) {
fhClustersDPhiAcc->Fill(dPhimin);
fhClustersDThetaAcc->Fill(dThetamin);
fhClustersDZetaAcc->Fill(dZetamin);
fhDPhiVsDThetaAcc->Fill(dThetamin, dPhimin);
fhDPhiVsDZetaAcc->Fill(dZetamin, dPhimin);
}
if (fOnlyOneTrackletPerC2) fAssociationFlag[iC2WithBestDist] = kTRUE;
fTracklets[fNTracklets][0] = fClustersLay1[iC1][0];
fTracklets[fNTracklets][1] = fClustersLay1[iC1][1];
fTracklets[fNTracklets][2] = fClustersLay1[iC1][1] - fClustersLay2[iC2WithBestDist][1];
Int_t label1 = 0;
Int_t label2 = 0;
while (label2 < 3)
{
if ((Int_t) fClustersLay1[iC1][3+label1] != -2 && (Int_t) fClustersLay1[iC1][3+label1] == (Int_t) fClustersLay2[iC2WithBestDist][3+label2])
break;
label1++;
if (label1 == 3)
{
label1 = 0;
label2++;
}
}
if (label2 < 3)
{
fTracklets[fNTracklets][3] = fClustersLay1[iC1][3+label1];
}
else
{
fTracklets[fNTracklets][3] = -2;
}
if (fHistOn && !lbkg) {
Float_t eta=fTracklets[fNTracklets][0];
eta= TMath::Tan(eta/2.);
eta=-TMath::Log(eta);
fhetaTracklets->Fill(eta);
fhphiTracklets->Fill(fTracklets[fNTracklets][1]);
}
found=FindChip(key,1,vtx,fClustersLay2[iC2WithBestDist][0],fClustersLay2[iC2WithBestDist][1],fClustersLay2[iC2WithBestDist][2]);
if(!found){
AliDebug(1,
Form("Reconstruct: cannot find chip on outer layer for cluster %d",iC2WithBestDist));
key=999999;
}
nfClu2+=(Int_t)found;
ntClu2++;
if(key<1200) {
if(fMC && !lbkg) {
if (label2 < 3) {
fSuccessTT[key]++;
if(primary) fSuccessPP[key]++;
}
if (fUseOnlyDifferentParticle && label2 < 3) continue;
if (fUseOnlySameParticle && label2 == 3) continue;
}
if (key==fChipPredOnLay2[iC1]) {
pe->UpDatePlaneEff(kTRUE,key);
fChipUpdatedInEvent[key]=kTRUE;
if(fMC && !lbkg) {
if(primary) fSuccessP[key]++;
if(secondary) fSuccessS[key]++;
}
}
else {
pe->UpDatePlaneEff(kTRUE,key);
fChipUpdatedInEvent[key]=kTRUE;
if(fMC && !lbkg) {
if(primary) fSuccessP[key]++;
if(secondary) fSuccessS[key]++;
}
}
}
fNTracklets++;
}
else if (fChipPredOnLay2[iC1]<1200) {
pe->UpDatePlaneEff(kFALSE,fChipPredOnLay2[iC1]);
fChipUpdatedInEvent[fChipPredOnLay2[iC1]]=kTRUE;
if(fMC && !lbkg) {
if(primary) fFailureP[fChipPredOnLay2[iC1]]++;
if(secondary) fFailureS[fChipPredOnLay2[iC1]]++;
}
}
}
fNTracklets1=fNTracklets;
for (Int_t iC2=0; iC2<fNClustersLay2; iC2++) {
if(fUpdateOncePerEventPlaneEff && fChipPredOnLay1[iC2]<1200 && fChipUpdatedInEvent[fChipPredOnLay1[iC2]]) continue;
Int_t iC1WithBestDist = 0;
Float_t distmin = 100.;
Float_t dPhimin = 0.;
Float_t dThetamin = 0.;
Float_t dZetamin = 0.;
Bool_t primary=kFALSE; Bool_t secondary=kFALSE;
if (fMC && !lbkg) {
Int_t lab1=(Int_t)fClustersLay2[iC2][3];
Int_t lab2=(Int_t)fClustersLay2[iC2][4];
Int_t lab3=(Int_t)fClustersLay2[iC2][5];
found=FindChip(key,1,vtx,fClustersLay2[iC2][0],fClustersLay2[iC2][1],fClustersLay2[iC2][2]);
if (!found) {AliDebug(1,
Form("Reconstruct MC: cannot find chip on outer layer for cluster %d",iC2)); }
else {
if((lab1 != -2 && PrimaryTrackChecker(lab1,pStack) ) ||
(lab2 != -2 && PrimaryTrackChecker(lab2,pStack) ) ||
(lab3 != -2 && PrimaryTrackChecker(lab3,pStack)))
{
fClusterPrimary[key]++;
primary=kTRUE;
if(fUseOnlySecondaryForPred) continue;
} else {
fClusterSecondary[key]++;
secondary=kTRUE;
if(fUseOnlyPrimaryForPred) continue;
}
}
if( fChipPredOnLay1[iC2]<1200) {
if((lab1 != -2 && PrimaryTrackChecker(lab1,pStack) ) ||
(lab2 != -2 && PrimaryTrackChecker(lab2,pStack) ) ||
(lab3 != -2 && PrimaryTrackChecker(lab3,pStack))) fPredictionPrimary[fChipPredOnLay1[iC2]]++;
else fPredictionSecondary[fChipPredOnLay1[iC2]]++;
if((lab1 != -2 && IsReconstructableAt(0,iC2,lab1,vtx,pStack,tRef)) ||
(lab2 != -2 && IsReconstructableAt(0,iC2,lab2,vtx,pStack,tRef)) ||
(lab3 != -2 && IsReconstructableAt(0,iC2,lab3,vtx,pStack,tRef))) fRecons[fChipPredOnLay1[iC2]]++;
else fNonRecons[fChipPredOnLay1[iC2]]++;
}
}
for (Int_t iC1=0; iC1<fNClustersLay1; iC1++) {
if (!fAssociationFlag1[iC1]) {
Float_t dTheta = fClustersLay2[iC2][0] - fClustersLay1[iC1][0];
Float_t dPhi = TMath::Abs(fClustersLay2[iC2][1] - fClustersLay1[iC1][1]);
if (dPhi>TMath::Pi()) dPhi=2.*TMath::Pi()-dPhi;
Float_t r1 = fClustersLay1[iC1][2]/TMath::Cos(fClustersLay1[iC1][0]);
Float_t dZeta = TMath::Cos(fClustersLay2[iC2][0])*r1 - fClustersLay1[iC1][2];
if (fHistOn && !lbkg) {
fhClustersDPhiInterpAll->Fill(dPhi);
fhClustersDThetaInterpAll->Fill(dTheta);
fhClustersDZetaInterpAll->Fill(dZeta);
fhDPhiVsDThetaInterpAll->Fill(dTheta, dPhi);
fhDPhiVsDZetaInterpAll->Fill(dZeta, dPhi);
}
Float_t d = TMath::Sqrt(dPhi*dPhi/fPhiWindowL1/fPhiWindowL1 +
dZeta*dZeta/fZetaWindowL1/fZetaWindowL1);
if (d>1) continue;
if (TMath::Sqrt(dZeta*dZeta+(r1*dPhi*r1*dPhi)) < distmin ) {
distmin=TMath::Sqrt(dZeta*dZeta + (r1*dPhi*r1*dPhi));
dPhimin = dPhi;
dThetamin = dTheta;
dZetamin = dZeta;
iC1WithBestDist = iC1;
}
}
}
if (distmin<100) {
if (fHistOn && !lbkg) {
fhClustersDPhiInterpAcc->Fill(dPhimin);
fhClustersDThetaInterpAcc->Fill(dThetamin);
fhClustersDZetaInterpAcc->Fill(dZetamin);
fhDPhiVsDThetaInterpAcc->Fill(dThetamin, dPhimin);
fhDPhiVsDZetaInterpAcc->Fill(dZetamin, dPhimin);
}
if (fOnlyOneTrackletPerC1) fAssociationFlag1[iC1WithBestDist] = kTRUE;
fTracklets[fNTracklets][0] = fClustersLay2[iC2][0];
fTracklets[fNTracklets][1] = fClustersLay2[iC2][1];
fTracklets[fNTracklets][2] = fClustersLay2[iC2][1] - fClustersLay1[iC1WithBestDist][1];
Int_t label1 = 0;
Int_t label2 = 0;
while (label2 < 3)
{
if ((Int_t) fClustersLay2[iC2][3+label1] != -2 && (Int_t) fClustersLay2[iC2][3+label1] == (Int_t) fClustersLay1[iC1WithBestDist][3+label2])
break;
label1++;
if (label1 == 3)
{
label1 = 0;
label2++;
}
}
if (label2 < 3)
{
fTracklets[fNTracklets][3] = fClustersLay2[iC2][3+label1];
}
else
{
fTracklets[fNTracklets][3] = -2;
}
found=FindChip(key,0,vtx,fClustersLay1[iC1WithBestDist][0],fClustersLay1[iC1WithBestDist][1],fClustersLay1[iC1WithBestDist][2]);
if(!found){
AliDebug(1,
Form("Reconstruct: cannot find chip on inner layer for cluster %d",iC1WithBestDist));
key=999999;
}
nfClu1+=(Int_t)found;
ntClu1++;
if(key<1200) {
if(fMC && !lbkg) {
if (label2 < 3) {
fSuccessTT[key]++;
if(primary) fSuccessPP[key]++;
}
if (fUseOnlyDifferentParticle && label2 < 3) continue;
if (fUseOnlySameParticle && label2 == 3) continue;
}
if (key==fChipPredOnLay1[iC2]) {
pe->UpDatePlaneEff(kTRUE,key);
fChipUpdatedInEvent[key]=kTRUE;
if(fMC && !lbkg) {
if(primary) fSuccessP[key]++;
if(secondary) fSuccessS[key]++;
}
} else {
pe->UpDatePlaneEff(kTRUE,key);
fChipUpdatedInEvent[key]=kTRUE;
if(fMC && !lbkg) {
if(primary) fSuccessP[key]++;
if(secondary) fSuccessS[key]++;
}
}
}
fNTracklets++;
}
else if (fChipPredOnLay1[iC2]<1200) {
pe->UpDatePlaneEff(kFALSE,fChipPredOnLay1[iC2]);
fChipUpdatedInEvent[fChipPredOnLay1[iC2]]=kTRUE;
if(fMC && !lbkg) {
if(primary) fFailureP[fChipPredOnLay1[iC2]]++;
if(secondary) fFailureS[fChipPredOnLay1[iC2]]++;
}
}
}
AliDebug(1,Form("%d tracklets found", fNTracklets));
AliDebug(1,Form(("Eff. of method FindChip for Track pred. on lay 1 = %d / %d"),nfTraPred1,ntTraPred1));
AliDebug(1,Form(("Eff. of method FindChip for Track pred. on lay 2 = %d / %d"),nfTraPred2,ntTraPred2));
AliDebug(1,Form(("Eff. of method FindChip for Cluster on lay 1 = %d / %d"),nfClu1,ntClu1));
AliDebug(1,Form(("Eff. of method FindChip for Cluster on lay 2 = %d / %d"),nfClu2,ntClu2));
}
Bool_t AliITSTrackleterSPDEff::FindChip(UInt_t &key, Int_t layer,const Float_t* vtx,
Float_t thetaVtx, Float_t phiVtx, Float_t zVtx) {
if(layer<0 || layer >1) {AliWarning("Wrong layer: should be 0 or 1!"); return kFALSE;}
Double_t r=GetRLayer(layer);
if(!SetAngleRange02Pi(phiVtx)) return kFALSE ;
Double_t zAbs,phiAbs;
if (TMath::Abs(zVtx)<100) zAbs=zVtx + vtx[2];
else {
if(TMath::Abs(thetaVtx)<1E-6) return kFALSE;
zAbs=r/TMath::Tan(thetaVtx) + vtx[2];
}
AliDebug(1,Form("FindChip: vtx[0] = %f, vtx[1] = %f, vtx[2] = %f",vtx[0],vtx[1],vtx[2]));
Double_t vtxy[2]={vtx[0],vtx[1]};
if (vtxy[0]*vtxy[1]+vtxy[1]*vtxy[1]>0) {
if (!FindIntersectionPolar(vtxy,(Double_t)phiVtx,r,phiAbs)) return kFALSE;
if(!SetAngleRange02Pi(phiAbs)) return kFALSE;
AliDebug(1,Form("PhiVtx= %f, PhiAbs= %f",phiVtx,phiAbs));
} else phiAbs=phiVtx;
Int_t idet=FindDetectorIndex(layer,phiAbs,zAbs);
Float_t locx;
Float_t locz;
if(!FromGloCilToLocCart(layer,idet,r,phiAbs,zAbs, locx, locz)) return kFALSE;
key=fPlaneEffSPD->GetKeyFromDetLocCoord(layer,idet,locx,locz);
return kTRUE;
}
Double_t AliITSTrackleterSPDEff::GetRLayer(Int_t layer) {
if(layer<0 || layer >1) {AliWarning("Wrong layer: should be 0 or 1!"); return -999.;}
Int_t i=layer+1;
Double_t xyz[3], &x=xyz[0], &y=xyz[1];
AliITSgeomTGeo::GetOrigTranslation(i,1,1,xyz);
Double_t r=TMath::Sqrt(x*x + y*y);
AliITSgeomTGeo::GetOrigTranslation(i,1,2,xyz);
r += TMath::Sqrt(x*x + y*y);
AliITSgeomTGeo::GetOrigTranslation(i,2,1,xyz);
r += TMath::Sqrt(x*x + y*y);
AliITSgeomTGeo::GetOrigTranslation(i,2,2,xyz);
r += TMath::Sqrt(x*x + y*y);
r*=0.25;
return r;
}
Bool_t AliITSTrackleterSPDEff::FromGloCilToLocCart(Int_t ilayer,Int_t idet, Double_t r, Double_t phi, Double_t z,
Float_t &xloc, Float_t &zloc) {
Double_t xyzGlob[3],xyzLoc[3];
xyzGlob[2]=z;
xyzGlob[0]=r*TMath::Cos(phi);
xyzGlob[1]=r*TMath::Sin(phi);
xloc=0.;
zloc=0.;
if(idet<0) return kFALSE;
Int_t ndet=AliITSgeomTGeo::GetNDetectors(ilayer+1);
Int_t lad = Int_t(idet/ndet) + 1;
Int_t det = idet - (lad-1)*ndet + 1;
AliITSgeomTGeo::GlobalToLocal(ilayer+1,lad,det,xyzGlob,xyzLoc);
xloc = (Float_t)xyzLoc[0];
zloc = (Float_t)xyzLoc[2];
return kTRUE;
}
Int_t AliITSTrackleterSPDEff::FindDetectorIndex(Int_t layer, Double_t phi, Double_t z) {
if(layer<0 || layer >1) {AliWarning("Wrong layer: should be 0 or 1!"); return -1;}
Int_t i=layer+1;
Int_t nladders=AliITSgeomTGeo::GetNLadders(i);
Int_t ndetectors=AliITSgeomTGeo::GetNDetectors(i);
Double_t xyz[3], &x=xyz[0], &y=xyz[1], &z2=xyz[2];
AliITSgeomTGeo::GetOrigTranslation(i,1,1,xyz);
Double_t phiOffset=TMath::ATan2(y,x);
Double_t zOffset=z2;
Double_t dphi;
if (zOffset<0)
dphi = -(phi-phiOffset);
else
dphi = phi-phiOffset;
if (dphi < 0) dphi += 2*TMath::Pi();
else if (dphi >= 2*TMath::Pi()) dphi -= 2*TMath::Pi();
Int_t np=Int_t(dphi*nladders*0.5/TMath::Pi()+0.5);
if (np>=nladders) np-=nladders;
if (np<0) np+=nladders;
Double_t dz=zOffset-z;
Double_t nnz = dz*(ndetectors-1)*0.5/zOffset+0.5;
Int_t nz = (nnz<0 ? -1 : (Int_t)nnz);
if (nz>=ndetectors) {AliDebug(1,Form("too long: nz =%d",nz)); return -1;}
if (nz<0) {AliDebug(1,Form("too short: nz =%d",nz)); return -1;}
return np*ndetectors + nz;
}
Bool_t AliITSTrackleterSPDEff::FindIntersectionPolar(Double_t vtx[2],Double_t phiVtx, Double_t R,Double_t &phi) {
Double_t rO=TMath::Sqrt(vtx[0]*vtx[0]+vtx[1]*vtx[1]);
Double_t phiO=TMath::ATan2(-vtx[1],-vtx[0]);
Double_t bB=-2.*rO*TMath::Cos(phiVtx-phiO);
Double_t cC=rO*rO-R*R;
Double_t dDelta=bB*bB-4*cC;
if(dDelta<0) return kFALSE;
Double_t r1,r2;
r1=(-bB-TMath::Sqrt(dDelta))/2;
r2=(-bB+TMath::Sqrt(dDelta))/2;
if(r1*r2>0) { printf("allora non hai capito nulla \n"); return kFALSE;}
Double_t r=TMath::Max(r1,r2);
Double_t pvtx[2];
Double_t pP[2];
pvtx[0]=r*TMath::Cos(phiVtx);
pvtx[1]=r*TMath::Sin(phiVtx);
pP[0]=vtx[0]+pvtx[0];
pP[1]=vtx[1]+pvtx[1];
phi=TMath::ATan2(pP[1],pP[0]);
return kTRUE;
}
Bool_t AliITSTrackleterSPDEff::SetAngleRange02Pi(Double_t &angle) const {
while(angle >=2*TMath::Pi() || angle<0) {
if(angle >= 2*TMath::Pi()) angle-=2*TMath::Pi();
if(angle < 0) angle+=2*TMath::Pi();
}
return kTRUE;
}
Bool_t AliITSTrackleterSPDEff::PrimaryTrackChecker(Int_t ipart,AliStack* stack) {
if(!fMC) {AliError("This method works only if SetMC() has been called"); return kFALSE;}
if(!stack) {AliError("null pointer to MC stack"); return kFALSE;}
if(ipart >= stack->GetNtrack()) {AliError("this track label is not in MC stack"); return kFALSE;}
if(!stack->IsPhysicalPrimary(ipart)) return kFALSE;
TParticle* part = stack->Particle(ipart);
TParticle* part0 = stack->Particle(0);
TParticle* partl = stack->Particle(stack->GetNprimary()-1);
if (part0->Vx()-partl->Vx()>0) AliDebug(1,Form("Difference in vtx position between 1th and last primaries %f %f %f",
part0->Vx()-partl->Vx(),part0->Vy()-partl->Vy(), part0->Vz()-partl->Vz() ));
if (!part || strcmp(part->GetName(),"XXX")==0) {AliWarning("String , not particle ??") ;return kFALSE; }
TParticlePDG* pdgPart = part->GetPDG();
if (TMath::Abs(pdgPart->Charge()) < 3) {AliWarning("This seems a quark"); return kFALSE;}
Double_t distx = part->Vx() - part0->Vx();
Double_t disty = part->Vy() - part0->Vy();
Double_t distz = part->Vz() - part0->Vz();
Double_t distR=TMath::Sqrt(distx*distx + disty*disty + distz*distz);
if (distR > 0.05) {AliDebug(1,Form("True vertex should be %f %f, this particle from %f %f ",
part0->Vx(),part0->Vy(),part->Vx(),part->Vy()));
return kFALSE; }
if(fUseOnlyStableParticle && DecayingTrackChecker(ipart,stack)>0) return kFALSE;
return kTRUE;
}
Int_t AliITSTrackleterSPDEff::DecayingTrackChecker(Int_t ipart,AliStack* stack) {
if(!fMC) {AliError("This method works only if SetMC() has been called"); return 0;}
if(!stack) {AliError("null pointer to MC stack"); return 0;}
if(ipart >= stack->GetNtrack()) {AliError("this track label is not in MC stack"); return 0;}
TParticle* part = stack->Particle(ipart);
Int_t nret=0;
TParticle* dau = 0;
Int_t pdgDau;
Int_t firstDau = part->GetFirstDaughter();
if (firstDau > 0) {
Int_t lastDau = part->GetLastDaughter();
Double_t distMax=0.;
Int_t jmax=0;
for(Int_t j=firstDau; j<=lastDau; j++) {
dau = stack->Particle(j);
Double_t distx = dau->Vx();
Double_t disty = dau->Vy();
Double_t distR = TMath::Sqrt(distx*distx+disty*disty);
if(distR<distMax) continue;
distMax=distR;
jmax=j;
}
dau = stack->Particle(jmax);
pdgDau=dau->GetPdgCode();
if (pdgDau == 11 || pdgDau == 13 ) {
if(distMax < GetRLayer(1)-0.25 && distMax > GetRLayer(0)+0.27) nret=1;
else nret =0;
}
else {
if (distMax < GetRLayer(1)-0.25 ) nret= 1;}
}
return nret;
}
void AliITSTrackleterSPDEff::InitPredictionMC() {
if(!fMC) {AliError("This method works only if SetMC() has been called"); return;}
fPredictionPrimary = new Int_t[1200];
fPredictionSecondary = new Int_t[1200];
fClusterPrimary = new Int_t[1200];
fClusterSecondary = new Int_t[1200];
fSuccessPP = new Int_t[1200];
fSuccessTT = new Int_t[1200];
fSuccessS = new Int_t[1200];
fSuccessP = new Int_t[1200];
fFailureS = new Int_t[1200];
fFailureP = new Int_t[1200];
fRecons = new Int_t[1200];
fNonRecons = new Int_t[1200];
for(Int_t i=0; i<1200; i++) {
fPredictionPrimary[i]=0;
fPredictionSecondary[i]=0;
fPredictionSecondary[i]=0;
fClusterSecondary[i]=0;
fSuccessPP[i]=0;
fSuccessTT[i]=0;
fSuccessS[i]=0;
fSuccessP[i]=0;
fFailureS[i]=0;
fFailureP[i]=0;
fRecons[i]=0;
fNonRecons[i]=0;
}
return;
}
void AliITSTrackleterSPDEff::DeletePredictionMC() {
if(fMC) {AliInfo("This method works only if fMC=kTRUE"); return;}
if(fPredictionPrimary) {
delete fPredictionPrimary; fPredictionPrimary=0;
}
if(fPredictionSecondary) {
delete fPredictionSecondary; fPredictionSecondary=0;
}
if(fClusterPrimary) {
delete fClusterPrimary; fClusterPrimary=0;
}
if(fClusterSecondary) {
delete fClusterSecondary; fClusterSecondary=0;
}
if(fSuccessPP) {
delete fSuccessPP; fSuccessPP=0;
}
if(fSuccessTT) {
delete fSuccessTT; fSuccessTT=0;
}
if(fSuccessS) {
delete fSuccessS; fSuccessS=0;
}
if(fSuccessP) {
delete fSuccessP; fSuccessP=0;
}
if(fFailureS) {
delete fFailureS; fFailureS=0;
}
if(fFailureP) {
delete fFailureP; fFailureP=0;
}
if(fRecons) {
delete fRecons; fRecons=0;
}
if(fNonRecons) {
delete fNonRecons; fNonRecons=0;
}
return;
}
Int_t AliITSTrackleterSPDEff::GetPredictionPrimary(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fPredictionPrimary[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetPredictionSecondary(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fPredictionSecondary[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetClusterPrimary(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fClusterPrimary[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetClusterSecondary(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fClusterSecondary[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetSuccessPP(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fSuccessPP[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetSuccessTT(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fSuccessTT[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetSuccessS(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fSuccessS[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetSuccessP(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fSuccessP[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetFailureS(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fFailureS[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetFailureP(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fFailureP[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetRecons(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fRecons[(Int_t)key];
}
Int_t AliITSTrackleterSPDEff::GetNonRecons(const UInt_t key) const {
if (!fMC) {CallWarningMC(); return 0;}
if (key>=1200) {AliWarning("You asked for a non existing chip"); return -999;}
return fNonRecons[(Int_t)key];
}
void AliITSTrackleterSPDEff::PrintAscii(ostream *os)const{
*os << fPhiWindowL1 <<" "<< fZetaWindowL1 << " " << fPhiWindowL2 <<" "<< fZetaWindowL2
<< " " << fOnlyOneTrackletPerC1 << " " << fOnlyOneTrackletPerC2
<< " " << fUpdateOncePerEventPlaneEff << " " << fMinContVtx
<< " " << fReflectClusterAroundZAxisForLayer0
<< " " << fReflectClusterAroundZAxisForLayer1;
*os << " " << fMC;
if(!fMC) {AliInfo("Writing only cuts, no MC info"); return;}
*os << " " << fUseOnlyPrimaryForPred << " " << fUseOnlySecondaryForPred
<< " " << fUseOnlySameParticle << " " << fUseOnlyDifferentParticle
<< " " << fUseOnlyStableParticle ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetPredictionPrimary(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetPredictionSecondary(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetClusterPrimary(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetClusterSecondary(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetSuccessPP(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetSuccessTT(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetSuccessS(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetSuccessP(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetFailureS(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetFailureP(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetRecons(i) ;
for(Int_t i=0;i<1200;i++) *os <<" "<< GetNonRecons(i) ;
return;
}
void AliITSTrackleterSPDEff::ReadAscii(istream *is){
Bool_t tmp= fMC;
*is >> fPhiWindowL1 >> fZetaWindowL1 >> fPhiWindowL2 >> fZetaWindowL2
>> fOnlyOneTrackletPerC1 >> fOnlyOneTrackletPerC2
>> fUpdateOncePerEventPlaneEff >> fMinContVtx
>> fReflectClusterAroundZAxisForLayer0
>> fReflectClusterAroundZAxisForLayer1;
*is >> fMC;
if(!fMC) {AliInfo("Reading only cuts, no MC info"); if(tmp) SetMC(kFALSE); }
else {
if(!tmp) {AliInfo("Calling SetMC() to read this file wtih MC info"); SetMC();}
*is >> fUseOnlyPrimaryForPred >> fUseOnlySecondaryForPred
>> fUseOnlySameParticle >> fUseOnlyDifferentParticle
>> fUseOnlyStableParticle;
for(Int_t i=0;i<1200;i++) *is >> fPredictionPrimary[i] ;
for(Int_t i=0;i<1200;i++) *is >> fPredictionSecondary[i] ;
for(Int_t i=0;i<1200;i++) *is >> fClusterPrimary[i] ;
for(Int_t i=0;i<1200;i++) *is >> fClusterSecondary[i] ;
for(Int_t i=0;i<1200;i++) *is >> fSuccessPP[i] ;
for(Int_t i=0;i<1200;i++) *is >> fSuccessTT[i] ;
for(Int_t i=0;i<1200;i++) *is >> fSuccessS[i] ;
for(Int_t i=0;i<1200;i++) *is >> fSuccessP[i] ;
for(Int_t i=0;i<1200;i++) *is >> fFailureS[i] ;
for(Int_t i=0;i<1200;i++) *is >> fFailureP[i] ;
for(Int_t i=0;i<1200;i++) *is >> fRecons[i] ;
for(Int_t i=0;i<1200;i++) *is >> fNonRecons[i] ;
}
return;
}
ostream &operator<<(ostream &os,const AliITSTrackleterSPDEff &s){
s.PrintAscii(&os);
return os;
}
istream &operator>>(istream &is,AliITSTrackleterSPDEff &s){
s.ReadAscii(&is);
return is;
}
void AliITSTrackleterSPDEff::SavePredictionMC(TString filename) const {
if (!filename.Contains(".root")) {
ofstream out(filename.Data(),ios::out | ios::binary);
out << *this;
out.close();
return;
}
else {
TFile* mcfile = TFile::Open(filename, "RECREATE");
TH1F* cuts = new TH1F("cuts", "list of cuts", 11, 0, 11);
cuts->SetBinContent(1,fPhiWindowL1);
cuts->SetBinContent(2,fZetaWindowL1);
cuts->SetBinContent(3,fPhiWindowL2);
cuts->SetBinContent(4,fZetaWindowL2);
cuts->SetBinContent(5,fOnlyOneTrackletPerC1);
cuts->SetBinContent(6,fOnlyOneTrackletPerC2);
cuts->SetBinContent(7,fUpdateOncePerEventPlaneEff);
cuts->SetBinContent(8,fMinContVtx);
cuts->SetBinContent(9,fReflectClusterAroundZAxisForLayer0);
cuts->SetBinContent(10,fReflectClusterAroundZAxisForLayer1);
cuts->SetBinContent(11,fMC);
cuts->Write();
delete cuts;
if(!fMC) {AliInfo("Writing only cuts, no MC info");}
else {
TH1C* mc0 = new TH1C("mc0", "mc cuts", 5, 0, 5);
mc0->SetBinContent(1,fUseOnlyPrimaryForPred);
mc0->SetBinContent(2,fUseOnlySecondaryForPred);
mc0->SetBinContent(3,fUseOnlySameParticle);
mc0->SetBinContent(4,fUseOnlyDifferentParticle);
mc0->SetBinContent(5,fUseOnlyStableParticle);
mc0->Write();
delete mc0;
TH1I *mc1;
mc1 = new TH1I("mc1", "mc info PredictionPrimary", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetPredictionPrimary(i)) ;
mc1->Write();
mc1 = new TH1I("mc2", "mc info PredictionSecondary", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetPredictionSecondary(i)) ;
mc1->Write();
mc1 = new TH1I("mc3", "mc info ClusterPrimary", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetClusterPrimary(i)) ;
mc1->Write();
mc1 = new TH1I("mc4", "mc info ClusterSecondary", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetClusterSecondary(i)) ;
mc1->Write();
mc1 = new TH1I("mc5", "mc info SuccessPP", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetSuccessPP(i)) ;
mc1->Write();
mc1 = new TH1I("mc6", "mc info SuccessTT", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetSuccessTT(i)) ;
mc1->Write();
mc1 = new TH1I("mc7", "mc info SuccessS", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetSuccessS(i)) ;
mc1->Write();
mc1 = new TH1I("mc8", "mc info SuccessP", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetSuccessP(i)) ;
mc1->Write();
mc1 = new TH1I("mc9", "mc info FailureS", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetFailureS(i)) ;
mc1->Write();
mc1 = new TH1I("mc10", "mc info FailureP", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetFailureP(i)) ;
mc1->Write();
mc1 = new TH1I("mc11", "mc info Recons", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetRecons(i)) ;
mc1->Write();
mc1 = new TH1I("mc12", "mc info NonRecons", 1200, 0, 1200);
for(Int_t i=0;i<1200;i++) mc1->SetBinContent(i+1,GetNonRecons(i)) ;
mc1->Write();
delete mc1;
}
mcfile->Close();
}
return;
}
void AliITSTrackleterSPDEff::ReadPredictionMC(TString filename) {
if( gSystem->AccessPathName( filename.Data() ) ) {
AliError( Form( "file (%s) not found", filename.Data() ) );
return;
}
if (!filename.Contains(".root")) {
ifstream in(filename.Data(),ios::in | ios::binary);
in >> *this;
in.close();
return;
}
else {
Bool_t tmp= fMC;
TFile *mcfile = TFile::Open(filename);
TH1F *cuts = (TH1F*)mcfile->Get("cuts");
fPhiWindowL1=(Float_t)cuts->GetBinContent(1);
fZetaWindowL1=(Float_t)cuts->GetBinContent(2);
fPhiWindowL2=(Float_t)cuts->GetBinContent(3);
fZetaWindowL2=(Float_t)cuts->GetBinContent(4);
fOnlyOneTrackletPerC1=(Bool_t)cuts->GetBinContent(5);
fOnlyOneTrackletPerC2=(Bool_t)cuts->GetBinContent(6);
fUpdateOncePerEventPlaneEff=(Bool_t)cuts->GetBinContent(7);
fMinContVtx=(Int_t)cuts->GetBinContent(8);
fReflectClusterAroundZAxisForLayer0=(Bool_t)cuts->GetBinContent(9);
fReflectClusterAroundZAxisForLayer1=(Bool_t)cuts->GetBinContent(10);
fMC=(Bool_t)cuts->GetBinContent(11);
if(!fMC) {AliInfo("Reading only cuts, no MC info"); if(tmp) SetMC(kFALSE); }
else {
if(!tmp) {AliInfo("Calling SetMC() to read this file wtih MC info"); SetMC();}
TH1C *mc0 = (TH1C*)mcfile->Get("mc0");
fUseOnlyPrimaryForPred=(Bool_t)mc0->GetBinContent(1);
fUseOnlySecondaryForPred=(Bool_t)mc0->GetBinContent(2);
fUseOnlySameParticle=(Bool_t)mc0->GetBinContent(3);
fUseOnlyDifferentParticle=(Bool_t)mc0->GetBinContent(4);
fUseOnlyStableParticle=(Bool_t)mc0->GetBinContent(5);
TH1I *mc1;
mc1 =(TH1I*)mcfile->Get("mc1");
for(Int_t i=0;i<1200;i++) fPredictionPrimary[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc2");
for(Int_t i=0;i<1200;i++) fPredictionSecondary[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc3");
for(Int_t i=0;i<1200;i++) fClusterPrimary[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc4");
for(Int_t i=0;i<1200;i++) fClusterSecondary[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc5");
for(Int_t i=0;i<1200;i++) fSuccessPP[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc6");
for(Int_t i=0;i<1200;i++) fSuccessTT[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc7");
for(Int_t i=0;i<1200;i++) fSuccessS[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc8");
for(Int_t i=0;i<1200;i++) fSuccessP[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc9");
for(Int_t i=0;i<1200;i++) fFailureS[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc10");
for(Int_t i=0;i<1200;i++) fFailureP[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc11");
for(Int_t i=0;i<1200;i++) fRecons[i]=(Int_t)mc1->GetBinContent(i+1) ;
mc1 =(TH1I*)mcfile->Get("mc12");
for(Int_t i=0;i<1200;i++) fNonRecons[i]=(Int_t)mc1->GetBinContent(i+1) ;
}
mcfile->Close();
}
return;
}
Bool_t AliITSTrackleterSPDEff::SaveHists() {
if (!GetHistOn()) return kFALSE;
fhClustersDPhiAll->Write();
fhClustersDThetaAll->Write();
fhClustersDZetaAll->Write();
fhDPhiVsDThetaAll->Write();
fhDPhiVsDZetaAll->Write();
fhClustersDPhiAcc->Write();
fhClustersDThetaAcc->Write();
fhClustersDZetaAcc->Write();
fhDPhiVsDThetaAcc->Write();
fhDPhiVsDZetaAcc->Write();
fhetaTracklets->Write();
fhphiTracklets->Write();
fhetaClustersLay1->Write();
fhphiClustersLay1->Write();
fhClustersDPhiInterpAll->Write();
fhClustersDThetaInterpAll->Write();
fhClustersDZetaInterpAll->Write();
fhDPhiVsDThetaInterpAll->Write();
fhDPhiVsDZetaInterpAll->Write();
fhClustersDPhiInterpAcc->Write();
fhClustersDThetaInterpAcc->Write();
fhClustersDZetaInterpAcc->Write();
fhDPhiVsDThetaInterpAcc->Write();
fhDPhiVsDZetaInterpAcc->Write();
fhetaClustersLay2->Write();
fhphiClustersLay2->Write();
fhClustersInChip->Write();
for (Int_t nhist=0;nhist<80;nhist++){
fhClustersInModuleLay1[nhist]->Write();
}
for (Int_t nhist=0;nhist<160;nhist++){
fhClustersInModuleLay2[nhist]->Write();
}
return kTRUE;
}
Bool_t AliITSTrackleterSPDEff::WriteHistosToFile(TString filename, Option_t* option) {
if (!GetHistOn()) return kFALSE;
if (!strcmp(filename.Data(),"")) {
AliWarning("WriteHistosToFile: null output filename!");
return kFALSE;
}
TFile *hFile=new TFile(filename.Data(),option,
"The File containing the histos for SPD efficiency studies with tracklets");
if(!SaveHists()) return kFALSE;
hFile->Write();
hFile->Close();
return kTRUE;
}
void AliITSTrackleterSPDEff::BookHistos() {
if (! GetHistOn()) { AliInfo("Call SetHistOn(kTRUE) first"); return;}
fhClustersDPhiAcc = new TH1F("dphiacc", "dphi", 100,0.,0.1);
fhClustersDPhiAcc->SetDirectory(0);
fhClustersDThetaAcc = new TH1F("dthetaacc","dtheta",100,-0.1,0.1);
fhClustersDThetaAcc->SetDirectory(0);
fhClustersDZetaAcc = new TH1F("dzetaacc","dzeta",100,-1.,1.);
fhClustersDZetaAcc->SetDirectory(0);
fhDPhiVsDZetaAcc = new TH2F("dphiVsDzetaacc","",100,-1.,1.,100,0.,0.1);
fhDPhiVsDZetaAcc->SetDirectory(0);
fhDPhiVsDThetaAcc = new TH2F("dphiVsDthetaAcc","",100,-0.1,0.1,100,0.,0.1);
fhDPhiVsDThetaAcc->SetDirectory(0);
fhClustersDPhiAll = new TH1F("dphiall", "dphi", 100,0.0,0.5);
fhClustersDPhiAll->SetDirectory(0);
fhClustersDThetaAll = new TH1F("dthetaall","dtheta",100,-0.5,0.5);
fhClustersDThetaAll->SetDirectory(0);
fhClustersDZetaAll = new TH1F("dzetaall","dzeta",100,-5.,5.);
fhClustersDZetaAll->SetDirectory(0);
fhDPhiVsDZetaAll = new TH2F("dphiVsDzetaall","",100,-5.,5.,100,0.,0.5);
fhDPhiVsDZetaAll->SetDirectory(0);
fhDPhiVsDThetaAll = new TH2F("dphiVsDthetaAll","",100,-0.5,0.5,100,0.,0.5);
fhDPhiVsDThetaAll->SetDirectory(0);
fhetaTracklets = new TH1F("etaTracklets", "eta", 100,-2.,2.);
fhetaTracklets->SetDirectory(0);
fhphiTracklets = new TH1F("phiTracklets", "phi", 100, 0., 2*TMath::Pi());
fhphiTracklets->SetDirectory(0);
fhetaClustersLay1 = new TH1F("etaClustersLay1", "etaCl1", 100,-2.,2.);
fhetaClustersLay1->SetDirectory(0);
fhphiClustersLay1 = new TH1F("phiClustersLay1", "phiCl1", 100, 0., 2*TMath::Pi());
fhphiClustersLay1->SetDirectory(0);
fhClustersDPhiInterpAcc = new TH1F("dphiaccInterp", "dphi Interpolation phase", 100,0.,0.1);
fhClustersDPhiInterpAcc->SetDirectory(0);
fhClustersDThetaInterpAcc = new TH1F("dthetaaccInterp","dtheta Interpolation phase",100,-0.1,0.1);
fhClustersDThetaInterpAcc->SetDirectory(0);
fhClustersDZetaInterpAcc = new TH1F("dzetaaccInterp","dzeta Interpolation phase",100,-1.,1.);
fhClustersDZetaInterpAcc->SetDirectory(0);
fhDPhiVsDZetaInterpAcc = new TH2F("dphiVsDzetaaccInterp","dphiVsDzeta Interpolation phase",100,-1.,1.,100,0.,0.1);
fhDPhiVsDZetaInterpAcc->SetDirectory(0);
fhDPhiVsDThetaInterpAcc = new TH2F("dphiVsDthetaAccInterp","dphiVsDtheta Interpolation phase",100,-0.1,0.1,100,0.,0.1);
fhDPhiVsDThetaInterpAcc->SetDirectory(0);
fhClustersDPhiInterpAll = new TH1F("dphiallInterp", "dphi Interpolation phase", 100,0.0,0.5);
fhClustersDPhiInterpAll->SetDirectory(0);
fhClustersDThetaInterpAll = new TH1F("dthetaallInterp","dtheta Interpolation phase",100,-0.5,0.5);
fhClustersDThetaInterpAll->SetDirectory(0);
fhClustersDZetaInterpAll = new TH1F("dzetaallInterp","dzeta Interpolation phase",100,-5.,5.);
fhClustersDZetaInterpAll->SetDirectory(0);
fhDPhiVsDZetaInterpAll = new TH2F("dphiVsDzetaallInterp","dphiVsDzeta Interpolation phase",100,-5.,5.,100,0.,0.5);
fhDPhiVsDZetaInterpAll->SetDirectory(0);
fhDPhiVsDThetaInterpAll = new TH2F("dphiVsDthetaAllInterp","dphiVsDtheta Interpolation phase",100,-0.5,0.5,100,0.,0.5);
fhDPhiVsDThetaInterpAll->SetDirectory(0);
fhetaClustersLay2 = new TH1F("etaClustersLay2", "etaCl2", 100,-2.,2.);
fhetaClustersLay2->SetDirectory(0);
fhphiClustersLay2 = new TH1F("phiClustersLay2", "phiCl2", 100, 0., 2*TMath::Pi());
fhphiClustersLay2->SetDirectory(0);
fhClustersInChip = new TH1F("fhClustersInChip", "ClustersPerChip", 1200, -0.5, 1199.5);
fhClustersInChip->SetDirectory(0);
Float_t bz[160]; const Float_t kconv = 1.0E-04;
for(Int_t i=0;i<160;i++) bz[i] = 425.0;
bz[ 31] = bz[ 32] = 625.0;
bz[ 63] = bz[ 64] = 625.0;
bz[ 95] = bz[ 96] = 625.0;
bz[127] = bz[128] = 625.0;
Double_t xbins[41];
Float_t xmn,xmx,zmn,zmx;
if(!fPlaneEffSPD->GetBlockBoundaries(0,xmn,xmx,zmn,zmx)) AliWarning("Could not book histo properly");
xbins[0]=(Double_t)zmn;
for(Int_t i=0;i<40;i++) {
xbins[i+1]=xbins[i] + (bz[4*i]+bz[4*i+1]+bz[4*i+2]+bz[4*i+3])*kconv;
}
TString histname="ClustersLay1_mod_",aux;
fhClustersInModuleLay1 =new TH2F*[80];
for (Int_t nhist=0;nhist<80;nhist++){
aux=histname;
aux+=nhist;
fhClustersInModuleLay1[nhist]=new TH2F("histname","histname",40,xbins,4,(Double_t)xmn,(Double_t)xmx);
fhClustersInModuleLay1[nhist]->SetName(aux.Data());
fhClustersInModuleLay1[nhist]->SetTitle(aux.Data());
fhClustersInModuleLay1[nhist]->SetDirectory(0);
}
histname="ClustersLay2_mod_";
fhClustersInModuleLay2 =new TH2F*[160];
for (Int_t nhist=0;nhist<160;nhist++){
aux=histname;
aux+=nhist;
fhClustersInModuleLay2[nhist]=new TH2F("histname","histname",40,xbins,4,(Double_t)xmn,(Double_t)xmx);
fhClustersInModuleLay2[nhist]->SetName(aux.Data());
fhClustersInModuleLay2[nhist]->SetTitle(aux.Data());
fhClustersInModuleLay2[nhist]->SetDirectory(0);
}
return;
}
void AliITSTrackleterSPDEff::DeleteHistos() {
if(fhClustersDPhiAcc) {delete fhClustersDPhiAcc; fhClustersDPhiAcc=0;}
if(fhClustersDThetaAcc) {delete fhClustersDThetaAcc; fhClustersDThetaAcc=0;}
if(fhClustersDZetaAcc) {delete fhClustersDZetaAcc; fhClustersDZetaAcc=0;}
if(fhClustersDPhiAll) {delete fhClustersDPhiAll; fhClustersDPhiAll=0;}
if(fhClustersDThetaAll) {delete fhClustersDThetaAll; fhClustersDThetaAll=0;}
if(fhClustersDZetaAll) {delete fhClustersDZetaAll; fhClustersDZetaAll=0;}
if(fhDPhiVsDThetaAll) {delete fhDPhiVsDThetaAll; fhDPhiVsDThetaAll=0;}
if(fhDPhiVsDThetaAcc) {delete fhDPhiVsDThetaAcc; fhDPhiVsDThetaAcc=0;}
if(fhDPhiVsDZetaAll) {delete fhDPhiVsDZetaAll; fhDPhiVsDZetaAll=0;}
if(fhDPhiVsDZetaAcc) {delete fhDPhiVsDZetaAcc; fhDPhiVsDZetaAcc=0;}
if(fhetaTracklets) {delete fhetaTracklets; fhetaTracklets=0;}
if(fhphiTracklets) {delete fhphiTracklets; fhphiTracklets=0;}
if(fhetaClustersLay1) {delete fhetaClustersLay1; fhetaClustersLay1=0;}
if(fhphiClustersLay1) {delete fhphiClustersLay1; fhphiClustersLay1=0;}
if(fhClustersDPhiInterpAcc) {delete fhClustersDPhiInterpAcc; fhClustersDPhiInterpAcc=0;}
if(fhClustersDThetaInterpAcc) {delete fhClustersDThetaInterpAcc; fhClustersDThetaInterpAcc=0;}
if(fhClustersDZetaInterpAcc) {delete fhClustersDZetaInterpAcc; fhClustersDZetaInterpAcc=0;}
if(fhClustersDPhiInterpAll) {delete fhClustersDPhiInterpAll; fhClustersDPhiInterpAll=0;}
if(fhClustersDThetaInterpAll) {delete fhClustersDThetaInterpAll; fhClustersDThetaInterpAll=0;}
if(fhClustersDZetaInterpAll) {delete fhClustersDZetaInterpAll; fhClustersDZetaInterpAll=0;}
if(fhDPhiVsDThetaInterpAll) {delete fhDPhiVsDThetaInterpAll; fhDPhiVsDThetaInterpAll=0;}
if(fhDPhiVsDThetaInterpAcc) {delete fhDPhiVsDThetaInterpAcc; fhDPhiVsDThetaInterpAcc=0;}
if(fhDPhiVsDZetaInterpAll) {delete fhDPhiVsDZetaInterpAll; fhDPhiVsDZetaInterpAll=0;}
if(fhDPhiVsDZetaInterpAcc) {delete fhDPhiVsDZetaInterpAcc; fhDPhiVsDZetaInterpAcc=0;}
if(fhetaClustersLay2) {delete fhetaClustersLay2; fhetaClustersLay2=0;}
if(fhphiClustersLay2) {delete fhphiClustersLay2; fhphiClustersLay2=0;}
if(fhClustersInChip) {delete fhClustersInChip; fhClustersInChip=0;}
if(fhClustersInModuleLay1) {
for (Int_t i=0; i<80; i++ ) delete fhClustersInModuleLay1[i];
delete [] fhClustersInModuleLay1; fhClustersInModuleLay1=0;
}
if(fhClustersInModuleLay2) {
for (Int_t i=0; i<160; i++ ) delete fhClustersInModuleLay2[i];
delete [] fhClustersInModuleLay2; fhClustersInModuleLay2=0;
}
}
Bool_t AliITSTrackleterSPDEff::IsReconstructableAt(Int_t layer,Int_t iC,Int_t ipart,
const Float_t* vtx, const AliStack *stack, TTree *ref) {
Bool_t ret=kFALSE;
Float_t trefLayExtr[3];
if(!fMC) {AliError("This method works only if SetMC() has been called"); return ret;}
if(!stack) {AliError("null pointer to MC stack"); return ret;}
if(!ref) {AliError("null pointer to TrackReference Tree"); return ret;}
if(ipart >= stack->GetNtrack()) {AliError("this track label is not in MC stack"); return ret;}
if(layer<0 || layer>1) {AliError("You can extrapolate either at lay 0 or at lay 1"); return ret;}
AliTrackReference *tref=0x0;
Int_t imatch=-100;
Int_t nentries = (Int_t)ref->GetEntries();
TClonesArray *tcaRef = new TClonesArray("AliTrackReference");
TBranch *br = ref->GetBranch("TrackReferences");
br->SetAddress(&tcaRef);
for(Int_t itrack=0;itrack<nentries;itrack++) {
br->GetEntry(itrack);
Int_t nref=tcaRef->GetEntriesFast();
if(nref>0) {
tref=(AliTrackReference*)tcaRef->At(0);
if(tref->GetTrack()==ipart) {imatch=itrack; break;}
}
}
if(imatch<0) {AliWarning(Form("Could not find AliTrackReference for particle %d",ipart)); return kFALSE;}
br->GetEntry(imatch);
Int_t nref=tcaRef->GetEntriesFast();
for(Int_t iref=0;iref<nref;iref++) {
tref=(AliTrackReference*)tcaRef->At(iref);
if(tref->R()>10) continue;
if(layer==0 && tref->R()>5) continue;
if(layer==1 && tref->R()<5) continue;
Float_t x = tref->X() - vtx[0];
Float_t y = tref->Y() - vtx[1];
Float_t z = tref->Z() - vtx[2];
Float_t r = TMath::Sqrt(x*x + y*y +z*z);
trefLayExtr[0] = TMath::ACos(z/r);
trefLayExtr[1] = TMath::Pi() + TMath::ATan2(-y,-x);
trefLayExtr[2] = z;
if(layer==1) {
Float_t dPhi = TMath::Abs(trefLayExtr[1] - fClustersLay1[iC][1]);
if (dPhi>TMath::Pi()) dPhi=2.*TMath::Pi()-dPhi;
Float_t r2 = trefLayExtr[2]/TMath::Cos(trefLayExtr[0]);
Float_t dZeta = TMath::Cos(fClustersLay1[iC][0])*r2 - trefLayExtr[2];
Float_t d = TMath::Sqrt(dPhi*dPhi/fPhiWindowL2/fPhiWindowL2 +
dZeta*dZeta/fZetaWindowL2/fZetaWindowL2);
if (d<1) {ret=kTRUE; break;}
}
if(layer==0) {
Float_t dPhi = TMath::Abs(fClustersLay2[iC][1] - trefLayExtr[1]);
if (dPhi>TMath::Pi()) dPhi=2.*TMath::Pi()-dPhi;
Float_t r1 = trefLayExtr[2]/TMath::Cos(trefLayExtr[0]);
Float_t dZeta = TMath::Cos(fClustersLay2[iC][0])*r1 - trefLayExtr[2];
Float_t d = TMath::Sqrt(dPhi*dPhi/fPhiWindowL1/fPhiWindowL1 +
dZeta*dZeta/fZetaWindowL1/fZetaWindowL1);
if (d<1) {ret=kTRUE; break;};
}
}
delete tcaRef;
return ret;
}
void AliITSTrackleterSPDEff::ReflectClusterAroundZAxisForLayer(Int_t ilayer){
if(ilayer<0 || ilayer>1) {AliInfo("Input argument (ilayer) should be either 0 or 1: nothing done"); return ;}
AliDebug(3,Form("Applying a rotation by 180 degree around z axiz to all clusters on layer %d",ilayer));
if(ilayer==0) {
for (Int_t iC1=0; iC1<fNClustersLay1; iC1++) {
fClustersLay1[iC1][0]*=-1;
fClustersLay1[iC1][1]*=-1;
}
}
if(ilayer==1) {
for (Int_t iC2=0; iC2<fNClustersLay2; iC2++) {
fClustersLay2[iC2][0]*=-1;
fClustersLay2[iC2][1]*=-1;
}
}
return;
}
Int_t AliITSTrackleterSPDEff::Clusters2Tracks(AliESDEvent *esd){
Int_t rc=1;
const AliESDVertex *vertex = esd->GetVertex();
if(vertex->GetNContributors()<fMinContVtx) return 0;
AliRunLoader* runLoader = AliRunLoader::Instance();
if (!runLoader) {
Error("Clusters2Tracks", "no run loader found");
return rc;
}
AliStack *pStack=0x0; TTree *tRefTree=0x0;
if(GetMC()) {
runLoader->LoadKinematics("read");
runLoader->LoadTrackRefs("read");
pStack= runLoader->Stack();
tRefTree= runLoader->TreeTR();
}
Reconstruct(pStack,tRefTree);
if (GetLightBkgStudyInParallel()) {
AliStack *dummy1=0x0; TTree *dummy2=0x0;
ReflectClusterAroundZAxisForLayer(1);
Reconstruct(dummy1,dummy2,kTRUE);
}
return 0;
}
Int_t AliITSTrackleterSPDEff::PostProcess(AliESDEvent *){
Int_t rc=0;
if(GetMC()) SavePredictionMC("TrackletsMCpred.root");
if(GetHistOn()) rc=(Int_t)WriteHistosToFile();
if(GetLightBkgStudyInParallel()) {
TString name="AliITSPlaneEffSPDtrackletBkg.root";
TFile* pefile = TFile::Open(name, "RECREATE");
rc*=fPlaneEffBkg->Write();
pefile->Close();
}
return rc;
}
void
AliITSTrackleterSPDEff::LoadClusterArrays(TTree* itsClusterTree) {
fNClustersLay1 = 0;
fNClustersLay2 = 0;
TClonesArray* itsClusters = new TClonesArray("AliITSRecPoint");
TBranch* itsClusterBranch=itsClusterTree->GetBranch("ITSRecPoints");
itsClusterBranch->SetAddress(&itsClusters);
Int_t nItsSubs = (Int_t)itsClusterTree->GetEntries();
Float_t cluGlo[3]={0.,0.,0.};
for (Int_t iIts=0; iIts < nItsSubs; iIts++) {
if (!itsClusterTree->GetEvent(iIts))
continue;
Int_t nClusters = itsClusters->GetEntriesFast();
Int_t layer = 0;
while(nClusters--) {
AliITSRecPoint* cluster = (AliITSRecPoint*)itsClusters->UncheckedAt(nClusters);
layer = cluster->GetLayer();
if (layer>1) continue;
cluster->GetGlobalXYZ(cluGlo);
Float_t x = cluGlo[0];
Float_t y = cluGlo[1];
Float_t z = cluGlo[2];
if (layer==0) {
fClustersLay1[fNClustersLay1][0] = x;
fClustersLay1[fNClustersLay1][1] = y;
fClustersLay1[fNClustersLay1][2] = z;
for (Int_t i=0; i<3; i++)
fClustersLay1[fNClustersLay1][3+i] = cluster->GetLabel(i);
fNClustersLay1++;
if(fHistOn) {
Int_t det=cluster->GetDetectorIndex();
if(det<0 || det>79) {AliError("Cluster with det. index out of boundaries"); return;}
fhClustersInModuleLay1[det]->Fill((Double_t)cluster->GetDetLocalZ(),(Double_t)cluster->GetDetLocalX());
}
}
if (layer==1) {
fClustersLay2[fNClustersLay2][0] = x;
fClustersLay2[fNClustersLay2][1] = y;
fClustersLay2[fNClustersLay2][2] = z;
for (Int_t i=0; i<3; i++)
fClustersLay2[fNClustersLay2][3+i] = cluster->GetLabel(i);
fNClustersLay2++;
if(fHistOn) {
Int_t det=cluster->GetDetectorIndex();
if(det<0 || det>159) {AliError("Cluster with det. index out of boundaries"); return;}
fhClustersInModuleLay2[det]->Fill((Double_t)cluster->GetDetLocalZ(),(Double_t)cluster->GetDetLocalX());
}
}
}
}
if (itsClusters) {
itsClusters->Delete();
delete itsClusters;
itsClusters = 0;
}
AliDebug(1,Form("(clusters in layer 1 : %d, layer 2: %d)",fNClustersLay1,fNClustersLay2));
}
void
AliITSTrackleterSPDEff::SetLightBkgStudyInParallel(Bool_t b) {
fLightBkgStudyInParallel=b;
if(fLightBkgStudyInParallel) {
if(!fPlaneEffBkg) fPlaneEffBkg = new AliITSPlaneEffSPD();
}
else {
delete fPlaneEffBkg;
fPlaneEffBkg=0;
}
}
void AliITSTrackleterSPDEff::SetReflectClusterAroundZAxisForLayer(Int_t ilayer,Bool_t b){
if(b) {AliInfo(Form("All clusters on layer %d will be rotated by 180 deg around z",ilayer));
SetLightBkgStudyInParallel(kFALSE);}
if(ilayer==0) fReflectClusterAroundZAxisForLayer0=b;
else if(ilayer==1) fReflectClusterAroundZAxisForLayer1=b;
else AliInfo("Nothing done: input argument (ilayer) either 0 or 1");
}
AliITSTrackleterSPDEff.cxx:1 AliITSTrackleterSPDEff.cxx:2 AliITSTrackleterSPDEff.cxx:3 AliITSTrackleterSPDEff.cxx:4 AliITSTrackleterSPDEff.cxx:5 AliITSTrackleterSPDEff.cxx:6 AliITSTrackleterSPDEff.cxx:7 AliITSTrackleterSPDEff.cxx:8 AliITSTrackleterSPDEff.cxx:9 AliITSTrackleterSPDEff.cxx:10 AliITSTrackleterSPDEff.cxx:11 AliITSTrackleterSPDEff.cxx:12 AliITSTrackleterSPDEff.cxx:13 AliITSTrackleterSPDEff.cxx:14 AliITSTrackleterSPDEff.cxx:15 AliITSTrackleterSPDEff.cxx:16 AliITSTrackleterSPDEff.cxx:17 AliITSTrackleterSPDEff.cxx:18 AliITSTrackleterSPDEff.cxx:19 AliITSTrackleterSPDEff.cxx:20 AliITSTrackleterSPDEff.cxx:21 AliITSTrackleterSPDEff.cxx:22 AliITSTrackleterSPDEff.cxx:23 AliITSTrackleterSPDEff.cxx:24 AliITSTrackleterSPDEff.cxx:25 AliITSTrackleterSPDEff.cxx:26 AliITSTrackleterSPDEff.cxx:27 AliITSTrackleterSPDEff.cxx:28 AliITSTrackleterSPDEff.cxx:29 AliITSTrackleterSPDEff.cxx:30 AliITSTrackleterSPDEff.cxx:31 AliITSTrackleterSPDEff.cxx:32 AliITSTrackleterSPDEff.cxx:33 AliITSTrackleterSPDEff.cxx:34 AliITSTrackleterSPDEff.cxx:35 AliITSTrackleterSPDEff.cxx:36 AliITSTrackleterSPDEff.cxx:37 AliITSTrackleterSPDEff.cxx:38 AliITSTrackleterSPDEff.cxx:39 AliITSTrackleterSPDEff.cxx:40 AliITSTrackleterSPDEff.cxx:41 AliITSTrackleterSPDEff.cxx:42 AliITSTrackleterSPDEff.cxx:43 AliITSTrackleterSPDEff.cxx:44 AliITSTrackleterSPDEff.cxx:45 AliITSTrackleterSPDEff.cxx:46 AliITSTrackleterSPDEff.cxx:47 AliITSTrackleterSPDEff.cxx:48 AliITSTrackleterSPDEff.cxx:49 AliITSTrackleterSPDEff.cxx:50 AliITSTrackleterSPDEff.cxx:51 AliITSTrackleterSPDEff.cxx:52 AliITSTrackleterSPDEff.cxx:53 AliITSTrackleterSPDEff.cxx:54 AliITSTrackleterSPDEff.cxx:55 AliITSTrackleterSPDEff.cxx:56 AliITSTrackleterSPDEff.cxx:57 AliITSTrackleterSPDEff.cxx:58 AliITSTrackleterSPDEff.cxx:59 AliITSTrackleterSPDEff.cxx:60 AliITSTrackleterSPDEff.cxx:61 AliITSTrackleterSPDEff.cxx:62 AliITSTrackleterSPDEff.cxx:63 AliITSTrackleterSPDEff.cxx:64 AliITSTrackleterSPDEff.cxx:65 AliITSTrackleterSPDEff.cxx:66 AliITSTrackleterSPDEff.cxx:67 AliITSTrackleterSPDEff.cxx:68 AliITSTrackleterSPDEff.cxx:69 AliITSTrackleterSPDEff.cxx:70 AliITSTrackleterSPDEff.cxx:71 AliITSTrackleterSPDEff.cxx:72 AliITSTrackleterSPDEff.cxx:73 AliITSTrackleterSPDEff.cxx:74 AliITSTrackleterSPDEff.cxx:75 AliITSTrackleterSPDEff.cxx:76 AliITSTrackleterSPDEff.cxx:77 AliITSTrackleterSPDEff.cxx:78 AliITSTrackleterSPDEff.cxx:79 AliITSTrackleterSPDEff.cxx:80 AliITSTrackleterSPDEff.cxx:81 AliITSTrackleterSPDEff.cxx:82 AliITSTrackleterSPDEff.cxx:83 AliITSTrackleterSPDEff.cxx:84 AliITSTrackleterSPDEff.cxx:85 AliITSTrackleterSPDEff.cxx:86 AliITSTrackleterSPDEff.cxx:87 AliITSTrackleterSPDEff.cxx:88 AliITSTrackleterSPDEff.cxx:89 AliITSTrackleterSPDEff.cxx:90 AliITSTrackleterSPDEff.cxx:91 AliITSTrackleterSPDEff.cxx:92 AliITSTrackleterSPDEff.cxx:93 AliITSTrackleterSPDEff.cxx:94 AliITSTrackleterSPDEff.cxx:95 AliITSTrackleterSPDEff.cxx:96 AliITSTrackleterSPDEff.cxx:97 AliITSTrackleterSPDEff.cxx:98 AliITSTrackleterSPDEff.cxx:99 AliITSTrackleterSPDEff.cxx:100 AliITSTrackleterSPDEff.cxx:101 AliITSTrackleterSPDEff.cxx:102 AliITSTrackleterSPDEff.cxx:103 AliITSTrackleterSPDEff.cxx:104 AliITSTrackleterSPDEff.cxx:105 AliITSTrackleterSPDEff.cxx:106 AliITSTrackleterSPDEff.cxx:107 AliITSTrackleterSPDEff.cxx:108 AliITSTrackleterSPDEff.cxx:109 AliITSTrackleterSPDEff.cxx:110 AliITSTrackleterSPDEff.cxx:111 AliITSTrackleterSPDEff.cxx:112 AliITSTrackleterSPDEff.cxx:113 AliITSTrackleterSPDEff.cxx:114 AliITSTrackleterSPDEff.cxx:115 AliITSTrackleterSPDEff.cxx:116 AliITSTrackleterSPDEff.cxx:117 AliITSTrackleterSPDEff.cxx:118 AliITSTrackleterSPDEff.cxx:119 AliITSTrackleterSPDEff.cxx:120 AliITSTrackleterSPDEff.cxx:121 AliITSTrackleterSPDEff.cxx:122 AliITSTrackleterSPDEff.cxx:123 AliITSTrackleterSPDEff.cxx:124 AliITSTrackleterSPDEff.cxx:125 AliITSTrackleterSPDEff.cxx:126 AliITSTrackleterSPDEff.cxx:127 AliITSTrackleterSPDEff.cxx:128 AliITSTrackleterSPDEff.cxx:129 AliITSTrackleterSPDEff.cxx:130 AliITSTrackleterSPDEff.cxx:131 AliITSTrackleterSPDEff.cxx:132 AliITSTrackleterSPDEff.cxx:133 AliITSTrackleterSPDEff.cxx:134 AliITSTrackleterSPDEff.cxx:135 AliITSTrackleterSPDEff.cxx:136 AliITSTrackleterSPDEff.cxx:137 AliITSTrackleterSPDEff.cxx:138 AliITSTrackleterSPDEff.cxx:139 AliITSTrackleterSPDEff.cxx:140 AliITSTrackleterSPDEff.cxx:141 AliITSTrackleterSPDEff.cxx:142 AliITSTrackleterSPDEff.cxx:143 AliITSTrackleterSPDEff.cxx:144 AliITSTrackleterSPDEff.cxx:145 AliITSTrackleterSPDEff.cxx:146 AliITSTrackleterSPDEff.cxx:147 AliITSTrackleterSPDEff.cxx:148 AliITSTrackleterSPDEff.cxx:149 AliITSTrackleterSPDEff.cxx:150 AliITSTrackleterSPDEff.cxx:151 AliITSTrackleterSPDEff.cxx:152 AliITSTrackleterSPDEff.cxx:153 AliITSTrackleterSPDEff.cxx:154 AliITSTrackleterSPDEff.cxx:155 AliITSTrackleterSPDEff.cxx:156 AliITSTrackleterSPDEff.cxx:157 AliITSTrackleterSPDEff.cxx:158 AliITSTrackleterSPDEff.cxx:159 AliITSTrackleterSPDEff.cxx:160 AliITSTrackleterSPDEff.cxx:161 AliITSTrackleterSPDEff.cxx:162 AliITSTrackleterSPDEff.cxx:163 AliITSTrackleterSPDEff.cxx:164 AliITSTrackleterSPDEff.cxx:165 AliITSTrackleterSPDEff.cxx:166 AliITSTrackleterSPDEff.cxx:167 AliITSTrackleterSPDEff.cxx:168 AliITSTrackleterSPDEff.cxx:169 AliITSTrackleterSPDEff.cxx:170 AliITSTrackleterSPDEff.cxx:171 AliITSTrackleterSPDEff.cxx:172 AliITSTrackleterSPDEff.cxx:173 AliITSTrackleterSPDEff.cxx:174 AliITSTrackleterSPDEff.cxx:175 AliITSTrackleterSPDEff.cxx:176 AliITSTrackleterSPDEff.cxx:177 AliITSTrackleterSPDEff.cxx:178 AliITSTrackleterSPDEff.cxx:179 AliITSTrackleterSPDEff.cxx:180 AliITSTrackleterSPDEff.cxx:181 AliITSTrackleterSPDEff.cxx:182 AliITSTrackleterSPDEff.cxx:183 AliITSTrackleterSPDEff.cxx:184 AliITSTrackleterSPDEff.cxx:185 AliITSTrackleterSPDEff.cxx:186 AliITSTrackleterSPDEff.cxx:187 AliITSTrackleterSPDEff.cxx:188 AliITSTrackleterSPDEff.cxx:189 AliITSTrackleterSPDEff.cxx:190 AliITSTrackleterSPDEff.cxx:191 AliITSTrackleterSPDEff.cxx:192 AliITSTrackleterSPDEff.cxx:193 AliITSTrackleterSPDEff.cxx:194 AliITSTrackleterSPDEff.cxx:195 AliITSTrackleterSPDEff.cxx:196 AliITSTrackleterSPDEff.cxx:197 AliITSTrackleterSPDEff.cxx:198 AliITSTrackleterSPDEff.cxx:199 AliITSTrackleterSPDEff.cxx:200 AliITSTrackleterSPDEff.cxx:201 AliITSTrackleterSPDEff.cxx:202 AliITSTrackleterSPDEff.cxx:203 AliITSTrackleterSPDEff.cxx:204 AliITSTrackleterSPDEff.cxx:205 AliITSTrackleterSPDEff.cxx:206 AliITSTrackleterSPDEff.cxx:207 AliITSTrackleterSPDEff.cxx:208 AliITSTrackleterSPDEff.cxx:209 AliITSTrackleterSPDEff.cxx:210 AliITSTrackleterSPDEff.cxx:211 AliITSTrackleterSPDEff.cxx:212 AliITSTrackleterSPDEff.cxx:213 AliITSTrackleterSPDEff.cxx:214 AliITSTrackleterSPDEff.cxx:215 AliITSTrackleterSPDEff.cxx:216 AliITSTrackleterSPDEff.cxx:217 AliITSTrackleterSPDEff.cxx:218 AliITSTrackleterSPDEff.cxx:219 AliITSTrackleterSPDEff.cxx:220 AliITSTrackleterSPDEff.cxx:221 AliITSTrackleterSPDEff.cxx:222 AliITSTrackleterSPDEff.cxx:223 AliITSTrackleterSPDEff.cxx:224 AliITSTrackleterSPDEff.cxx:225 AliITSTrackleterSPDEff.cxx:226 AliITSTrackleterSPDEff.cxx:227 AliITSTrackleterSPDEff.cxx:228 AliITSTrackleterSPDEff.cxx:229 AliITSTrackleterSPDEff.cxx:230 AliITSTrackleterSPDEff.cxx:231 AliITSTrackleterSPDEff.cxx:232 AliITSTrackleterSPDEff.cxx:233 AliITSTrackleterSPDEff.cxx:234 AliITSTrackleterSPDEff.cxx:235 AliITSTrackleterSPDEff.cxx:236 AliITSTrackleterSPDEff.cxx:237 AliITSTrackleterSPDEff.cxx:238 AliITSTrackleterSPDEff.cxx:239 AliITSTrackleterSPDEff.cxx:240 AliITSTrackleterSPDEff.cxx:241 AliITSTrackleterSPDEff.cxx:242 AliITSTrackleterSPDEff.cxx:243 AliITSTrackleterSPDEff.cxx:244 AliITSTrackleterSPDEff.cxx:245 AliITSTrackleterSPDEff.cxx:246 AliITSTrackleterSPDEff.cxx:247 AliITSTrackleterSPDEff.cxx:248 AliITSTrackleterSPDEff.cxx:249 AliITSTrackleterSPDEff.cxx:250 AliITSTrackleterSPDEff.cxx:251 AliITSTrackleterSPDEff.cxx:252 AliITSTrackleterSPDEff.cxx:253 AliITSTrackleterSPDEff.cxx:254 AliITSTrackleterSPDEff.cxx:255 AliITSTrackleterSPDEff.cxx:256 AliITSTrackleterSPDEff.cxx:257 AliITSTrackleterSPDEff.cxx:258 AliITSTrackleterSPDEff.cxx:259 AliITSTrackleterSPDEff.cxx:260 AliITSTrackleterSPDEff.cxx:261 AliITSTrackleterSPDEff.cxx:262 AliITSTrackleterSPDEff.cxx:263 AliITSTrackleterSPDEff.cxx:264 AliITSTrackleterSPDEff.cxx:265 AliITSTrackleterSPDEff.cxx:266 AliITSTrackleterSPDEff.cxx:267 AliITSTrackleterSPDEff.cxx:268 AliITSTrackleterSPDEff.cxx:269 AliITSTrackleterSPDEff.cxx:270 AliITSTrackleterSPDEff.cxx:271 AliITSTrackleterSPDEff.cxx:272 AliITSTrackleterSPDEff.cxx:273 AliITSTrackleterSPDEff.cxx:274 AliITSTrackleterSPDEff.cxx:275 AliITSTrackleterSPDEff.cxx:276 AliITSTrackleterSPDEff.cxx:277 AliITSTrackleterSPDEff.cxx:278 AliITSTrackleterSPDEff.cxx:279 AliITSTrackleterSPDEff.cxx:280 AliITSTrackleterSPDEff.cxx:281 AliITSTrackleterSPDEff.cxx:282 AliITSTrackleterSPDEff.cxx:283 AliITSTrackleterSPDEff.cxx:284 AliITSTrackleterSPDEff.cxx:285 AliITSTrackleterSPDEff.cxx:286 AliITSTrackleterSPDEff.cxx:287 AliITSTrackleterSPDEff.cxx:288 AliITSTrackleterSPDEff.cxx:289 AliITSTrackleterSPDEff.cxx:290 AliITSTrackleterSPDEff.cxx:291 AliITSTrackleterSPDEff.cxx:292 AliITSTrackleterSPDEff.cxx:293 AliITSTrackleterSPDEff.cxx:294 AliITSTrackleterSPDEff.cxx:295 AliITSTrackleterSPDEff.cxx:296 AliITSTrackleterSPDEff.cxx:297 AliITSTrackleterSPDEff.cxx:298 AliITSTrackleterSPDEff.cxx:299 AliITSTrackleterSPDEff.cxx:300 AliITSTrackleterSPDEff.cxx:301 AliITSTrackleterSPDEff.cxx:302 AliITSTrackleterSPDEff.cxx:303 AliITSTrackleterSPDEff.cxx:304 AliITSTrackleterSPDEff.cxx:305 AliITSTrackleterSPDEff.cxx:306 AliITSTrackleterSPDEff.cxx:307 AliITSTrackleterSPDEff.cxx:308 AliITSTrackleterSPDEff.cxx:309 AliITSTrackleterSPDEff.cxx:310 AliITSTrackleterSPDEff.cxx:311 AliITSTrackleterSPDEff.cxx:312 AliITSTrackleterSPDEff.cxx:313 AliITSTrackleterSPDEff.cxx:314 AliITSTrackleterSPDEff.cxx:315 AliITSTrackleterSPDEff.cxx:316 AliITSTrackleterSPDEff.cxx:317 AliITSTrackleterSPDEff.cxx:318 AliITSTrackleterSPDEff.cxx:319 AliITSTrackleterSPDEff.cxx:320 AliITSTrackleterSPDEff.cxx:321 AliITSTrackleterSPDEff.cxx:322 AliITSTrackleterSPDEff.cxx:323 AliITSTrackleterSPDEff.cxx:324 AliITSTrackleterSPDEff.cxx:325 AliITSTrackleterSPDEff.cxx:326 AliITSTrackleterSPDEff.cxx:327 AliITSTrackleterSPDEff.cxx:328 AliITSTrackleterSPDEff.cxx:329 AliITSTrackleterSPDEff.cxx:330 AliITSTrackleterSPDEff.cxx:331 AliITSTrackleterSPDEff.cxx:332 AliITSTrackleterSPDEff.cxx:333 AliITSTrackleterSPDEff.cxx:334 AliITSTrackleterSPDEff.cxx:335 AliITSTrackleterSPDEff.cxx:336 AliITSTrackleterSPDEff.cxx:337 AliITSTrackleterSPDEff.cxx:338 AliITSTrackleterSPDEff.cxx:339 AliITSTrackleterSPDEff.cxx:340 AliITSTrackleterSPDEff.cxx:341 AliITSTrackleterSPDEff.cxx:342 AliITSTrackleterSPDEff.cxx:343 AliITSTrackleterSPDEff.cxx:344 AliITSTrackleterSPDEff.cxx:345 AliITSTrackleterSPDEff.cxx:346 AliITSTrackleterSPDEff.cxx:347 AliITSTrackleterSPDEff.cxx:348 AliITSTrackleterSPDEff.cxx:349 AliITSTrackleterSPDEff.cxx:350 AliITSTrackleterSPDEff.cxx:351 AliITSTrackleterSPDEff.cxx:352 AliITSTrackleterSPDEff.cxx:353 AliITSTrackleterSPDEff.cxx:354 AliITSTrackleterSPDEff.cxx:355 AliITSTrackleterSPDEff.cxx:356 AliITSTrackleterSPDEff.cxx:357 AliITSTrackleterSPDEff.cxx:358 AliITSTrackleterSPDEff.cxx:359 AliITSTrackleterSPDEff.cxx:360 AliITSTrackleterSPDEff.cxx:361 AliITSTrackleterSPDEff.cxx:362 AliITSTrackleterSPDEff.cxx:363 AliITSTrackleterSPDEff.cxx:364 AliITSTrackleterSPDEff.cxx:365 AliITSTrackleterSPDEff.cxx:366 AliITSTrackleterSPDEff.cxx:367 AliITSTrackleterSPDEff.cxx:368 AliITSTrackleterSPDEff.cxx:369 AliITSTrackleterSPDEff.cxx:370 AliITSTrackleterSPDEff.cxx:371 AliITSTrackleterSPDEff.cxx:372 AliITSTrackleterSPDEff.cxx:373 AliITSTrackleterSPDEff.cxx:374 AliITSTrackleterSPDEff.cxx:375 AliITSTrackleterSPDEff.cxx:376 AliITSTrackleterSPDEff.cxx:377 AliITSTrackleterSPDEff.cxx:378 AliITSTrackleterSPDEff.cxx:379 AliITSTrackleterSPDEff.cxx:380 AliITSTrackleterSPDEff.cxx:381 AliITSTrackleterSPDEff.cxx:382 AliITSTrackleterSPDEff.cxx:383 AliITSTrackleterSPDEff.cxx:384 AliITSTrackleterSPDEff.cxx:385 AliITSTrackleterSPDEff.cxx:386 AliITSTrackleterSPDEff.cxx:387 AliITSTrackleterSPDEff.cxx:388 AliITSTrackleterSPDEff.cxx:389 AliITSTrackleterSPDEff.cxx:390 AliITSTrackleterSPDEff.cxx:391 AliITSTrackleterSPDEff.cxx:392 AliITSTrackleterSPDEff.cxx:393 AliITSTrackleterSPDEff.cxx:394 AliITSTrackleterSPDEff.cxx:395 AliITSTrackleterSPDEff.cxx:396 AliITSTrackleterSPDEff.cxx:397 AliITSTrackleterSPDEff.cxx:398 AliITSTrackleterSPDEff.cxx:399 AliITSTrackleterSPDEff.cxx:400 AliITSTrackleterSPDEff.cxx:401 AliITSTrackleterSPDEff.cxx:402 AliITSTrackleterSPDEff.cxx:403 AliITSTrackleterSPDEff.cxx:404 AliITSTrackleterSPDEff.cxx:405 AliITSTrackleterSPDEff.cxx:406 AliITSTrackleterSPDEff.cxx:407 AliITSTrackleterSPDEff.cxx:408 AliITSTrackleterSPDEff.cxx:409 AliITSTrackleterSPDEff.cxx:410 AliITSTrackleterSPDEff.cxx:411 AliITSTrackleterSPDEff.cxx:412 AliITSTrackleterSPDEff.cxx:413 AliITSTrackleterSPDEff.cxx:414 AliITSTrackleterSPDEff.cxx:415 AliITSTrackleterSPDEff.cxx:416 AliITSTrackleterSPDEff.cxx:417 AliITSTrackleterSPDEff.cxx:418 AliITSTrackleterSPDEff.cxx:419 AliITSTrackleterSPDEff.cxx:420 AliITSTrackleterSPDEff.cxx:421 AliITSTrackleterSPDEff.cxx:422 AliITSTrackleterSPDEff.cxx:423 AliITSTrackleterSPDEff.cxx:424 AliITSTrackleterSPDEff.cxx:425 AliITSTrackleterSPDEff.cxx:426 AliITSTrackleterSPDEff.cxx:427 AliITSTrackleterSPDEff.cxx:428 AliITSTrackleterSPDEff.cxx:429 AliITSTrackleterSPDEff.cxx:430 AliITSTrackleterSPDEff.cxx:431 AliITSTrackleterSPDEff.cxx:432 AliITSTrackleterSPDEff.cxx:433 AliITSTrackleterSPDEff.cxx:434 AliITSTrackleterSPDEff.cxx:435 AliITSTrackleterSPDEff.cxx:436 AliITSTrackleterSPDEff.cxx:437 AliITSTrackleterSPDEff.cxx:438 AliITSTrackleterSPDEff.cxx:439 AliITSTrackleterSPDEff.cxx:440 AliITSTrackleterSPDEff.cxx:441 AliITSTrackleterSPDEff.cxx:442 AliITSTrackleterSPDEff.cxx:443 AliITSTrackleterSPDEff.cxx:444 AliITSTrackleterSPDEff.cxx:445 AliITSTrackleterSPDEff.cxx:446 AliITSTrackleterSPDEff.cxx:447 AliITSTrackleterSPDEff.cxx:448 AliITSTrackleterSPDEff.cxx:449 AliITSTrackleterSPDEff.cxx:450 AliITSTrackleterSPDEff.cxx:451 AliITSTrackleterSPDEff.cxx:452 AliITSTrackleterSPDEff.cxx:453 AliITSTrackleterSPDEff.cxx:454 AliITSTrackleterSPDEff.cxx:455 AliITSTrackleterSPDEff.cxx:456 AliITSTrackleterSPDEff.cxx:457 AliITSTrackleterSPDEff.cxx:458 AliITSTrackleterSPDEff.cxx:459 AliITSTrackleterSPDEff.cxx:460 AliITSTrackleterSPDEff.cxx:461 AliITSTrackleterSPDEff.cxx:462 AliITSTrackleterSPDEff.cxx:463 AliITSTrackleterSPDEff.cxx:464 AliITSTrackleterSPDEff.cxx:465 AliITSTrackleterSPDEff.cxx:466 AliITSTrackleterSPDEff.cxx:467 AliITSTrackleterSPDEff.cxx:468 AliITSTrackleterSPDEff.cxx:469 AliITSTrackleterSPDEff.cxx:470 AliITSTrackleterSPDEff.cxx:471 AliITSTrackleterSPDEff.cxx:472 AliITSTrackleterSPDEff.cxx:473 AliITSTrackleterSPDEff.cxx:474 AliITSTrackleterSPDEff.cxx:475 AliITSTrackleterSPDEff.cxx:476 AliITSTrackleterSPDEff.cxx:477 AliITSTrackleterSPDEff.cxx:478 AliITSTrackleterSPDEff.cxx:479 AliITSTrackleterSPDEff.cxx:480 AliITSTrackleterSPDEff.cxx:481 AliITSTrackleterSPDEff.cxx:482 AliITSTrackleterSPDEff.cxx:483 AliITSTrackleterSPDEff.cxx:484 AliITSTrackleterSPDEff.cxx:485 AliITSTrackleterSPDEff.cxx:486 AliITSTrackleterSPDEff.cxx:487 AliITSTrackleterSPDEff.cxx:488 AliITSTrackleterSPDEff.cxx:489 AliITSTrackleterSPDEff.cxx:490 AliITSTrackleterSPDEff.cxx:491 AliITSTrackleterSPDEff.cxx:492 AliITSTrackleterSPDEff.cxx:493 AliITSTrackleterSPDEff.cxx:494 AliITSTrackleterSPDEff.cxx:495 AliITSTrackleterSPDEff.cxx:496 AliITSTrackleterSPDEff.cxx:497 AliITSTrackleterSPDEff.cxx:498 AliITSTrackleterSPDEff.cxx:499 AliITSTrackleterSPDEff.cxx:500 AliITSTrackleterSPDEff.cxx:501 AliITSTrackleterSPDEff.cxx:502 AliITSTrackleterSPDEff.cxx:503 AliITSTrackleterSPDEff.cxx:504 AliITSTrackleterSPDEff.cxx:505 AliITSTrackleterSPDEff.cxx:506 AliITSTrackleterSPDEff.cxx:507 AliITSTrackleterSPDEff.cxx:508 AliITSTrackleterSPDEff.cxx:509 AliITSTrackleterSPDEff.cxx:510 AliITSTrackleterSPDEff.cxx:511 AliITSTrackleterSPDEff.cxx:512 AliITSTrackleterSPDEff.cxx:513 AliITSTrackleterSPDEff.cxx:514 AliITSTrackleterSPDEff.cxx:515 AliITSTrackleterSPDEff.cxx:516 AliITSTrackleterSPDEff.cxx:517 AliITSTrackleterSPDEff.cxx:518 AliITSTrackleterSPDEff.cxx:519 AliITSTrackleterSPDEff.cxx:520 AliITSTrackleterSPDEff.cxx:521 AliITSTrackleterSPDEff.cxx:522 AliITSTrackleterSPDEff.cxx:523 AliITSTrackleterSPDEff.cxx:524 AliITSTrackleterSPDEff.cxx:525 AliITSTrackleterSPDEff.cxx:526 AliITSTrackleterSPDEff.cxx:527 AliITSTrackleterSPDEff.cxx:528 AliITSTrackleterSPDEff.cxx:529 AliITSTrackleterSPDEff.cxx:530 AliITSTrackleterSPDEff.cxx:531 AliITSTrackleterSPDEff.cxx:532 AliITSTrackleterSPDEff.cxx:533 AliITSTrackleterSPDEff.cxx:534 AliITSTrackleterSPDEff.cxx:535 AliITSTrackleterSPDEff.cxx:536 AliITSTrackleterSPDEff.cxx:537 AliITSTrackleterSPDEff.cxx:538 AliITSTrackleterSPDEff.cxx:539 AliITSTrackleterSPDEff.cxx:540 AliITSTrackleterSPDEff.cxx:541 AliITSTrackleterSPDEff.cxx:542 AliITSTrackleterSPDEff.cxx:543 AliITSTrackleterSPDEff.cxx:544 AliITSTrackleterSPDEff.cxx:545 AliITSTrackleterSPDEff.cxx:546 AliITSTrackleterSPDEff.cxx:547 AliITSTrackleterSPDEff.cxx:548 AliITSTrackleterSPDEff.cxx:549 AliITSTrackleterSPDEff.cxx:550 AliITSTrackleterSPDEff.cxx:551 AliITSTrackleterSPDEff.cxx:552 AliITSTrackleterSPDEff.cxx:553 AliITSTrackleterSPDEff.cxx:554 AliITSTrackleterSPDEff.cxx:555 AliITSTrackleterSPDEff.cxx:556 AliITSTrackleterSPDEff.cxx:557 AliITSTrackleterSPDEff.cxx:558 AliITSTrackleterSPDEff.cxx:559 AliITSTrackleterSPDEff.cxx:560 AliITSTrackleterSPDEff.cxx:561 AliITSTrackleterSPDEff.cxx:562 AliITSTrackleterSPDEff.cxx:563 AliITSTrackleterSPDEff.cxx:564 AliITSTrackleterSPDEff.cxx:565 AliITSTrackleterSPDEff.cxx:566 AliITSTrackleterSPDEff.cxx:567 AliITSTrackleterSPDEff.cxx:568 AliITSTrackleterSPDEff.cxx:569 AliITSTrackleterSPDEff.cxx:570 AliITSTrackleterSPDEff.cxx:571 AliITSTrackleterSPDEff.cxx:572 AliITSTrackleterSPDEff.cxx:573 AliITSTrackleterSPDEff.cxx:574 AliITSTrackleterSPDEff.cxx:575 AliITSTrackleterSPDEff.cxx:576 AliITSTrackleterSPDEff.cxx:577 AliITSTrackleterSPDEff.cxx:578 AliITSTrackleterSPDEff.cxx:579 AliITSTrackleterSPDEff.cxx:580 AliITSTrackleterSPDEff.cxx:581 AliITSTrackleterSPDEff.cxx:582 AliITSTrackleterSPDEff.cxx:583 AliITSTrackleterSPDEff.cxx:584 AliITSTrackleterSPDEff.cxx:585 AliITSTrackleterSPDEff.cxx:586 AliITSTrackleterSPDEff.cxx:587 AliITSTrackleterSPDEff.cxx:588 AliITSTrackleterSPDEff.cxx:589 AliITSTrackleterSPDEff.cxx:590 AliITSTrackleterSPDEff.cxx:591 AliITSTrackleterSPDEff.cxx:592 AliITSTrackleterSPDEff.cxx:593 AliITSTrackleterSPDEff.cxx:594 AliITSTrackleterSPDEff.cxx:595 AliITSTrackleterSPDEff.cxx:596 AliITSTrackleterSPDEff.cxx:597 AliITSTrackleterSPDEff.cxx:598 AliITSTrackleterSPDEff.cxx:599 AliITSTrackleterSPDEff.cxx:600 AliITSTrackleterSPDEff.cxx:601 AliITSTrackleterSPDEff.cxx:602 AliITSTrackleterSPDEff.cxx:603 AliITSTrackleterSPDEff.cxx:604 AliITSTrackleterSPDEff.cxx:605 AliITSTrackleterSPDEff.cxx:606 AliITSTrackleterSPDEff.cxx:607 AliITSTrackleterSPDEff.cxx:608 AliITSTrackleterSPDEff.cxx:609 AliITSTrackleterSPDEff.cxx:610 AliITSTrackleterSPDEff.cxx:611 AliITSTrackleterSPDEff.cxx:612 AliITSTrackleterSPDEff.cxx:613 AliITSTrackleterSPDEff.cxx:614 AliITSTrackleterSPDEff.cxx:615 AliITSTrackleterSPDEff.cxx:616 AliITSTrackleterSPDEff.cxx:617 AliITSTrackleterSPDEff.cxx:618 AliITSTrackleterSPDEff.cxx:619 AliITSTrackleterSPDEff.cxx:620 AliITSTrackleterSPDEff.cxx:621 AliITSTrackleterSPDEff.cxx:622 AliITSTrackleterSPDEff.cxx:623 AliITSTrackleterSPDEff.cxx:624 AliITSTrackleterSPDEff.cxx:625 AliITSTrackleterSPDEff.cxx:626 AliITSTrackleterSPDEff.cxx:627 AliITSTrackleterSPDEff.cxx:628 AliITSTrackleterSPDEff.cxx:629 AliITSTrackleterSPDEff.cxx:630 AliITSTrackleterSPDEff.cxx:631 AliITSTrackleterSPDEff.cxx:632 AliITSTrackleterSPDEff.cxx:633 AliITSTrackleterSPDEff.cxx:634 AliITSTrackleterSPDEff.cxx:635 AliITSTrackleterSPDEff.cxx:636 AliITSTrackleterSPDEff.cxx:637 AliITSTrackleterSPDEff.cxx:638 AliITSTrackleterSPDEff.cxx:639 AliITSTrackleterSPDEff.cxx:640 AliITSTrackleterSPDEff.cxx:641 AliITSTrackleterSPDEff.cxx:642 AliITSTrackleterSPDEff.cxx:643 AliITSTrackleterSPDEff.cxx:644 AliITSTrackleterSPDEff.cxx:645 AliITSTrackleterSPDEff.cxx:646 AliITSTrackleterSPDEff.cxx:647 AliITSTrackleterSPDEff.cxx:648 AliITSTrackleterSPDEff.cxx:649 AliITSTrackleterSPDEff.cxx:650 AliITSTrackleterSPDEff.cxx:651 AliITSTrackleterSPDEff.cxx:652 AliITSTrackleterSPDEff.cxx:653 AliITSTrackleterSPDEff.cxx:654 AliITSTrackleterSPDEff.cxx:655 AliITSTrackleterSPDEff.cxx:656 AliITSTrackleterSPDEff.cxx:657 AliITSTrackleterSPDEff.cxx:658 AliITSTrackleterSPDEff.cxx:659 AliITSTrackleterSPDEff.cxx:660 AliITSTrackleterSPDEff.cxx:661 AliITSTrackleterSPDEff.cxx:662 AliITSTrackleterSPDEff.cxx:663 AliITSTrackleterSPDEff.cxx:664 AliITSTrackleterSPDEff.cxx:665 AliITSTrackleterSPDEff.cxx:666 AliITSTrackleterSPDEff.cxx:667 AliITSTrackleterSPDEff.cxx:668 AliITSTrackleterSPDEff.cxx:669 AliITSTrackleterSPDEff.cxx:670 AliITSTrackleterSPDEff.cxx:671 AliITSTrackleterSPDEff.cxx:672 AliITSTrackleterSPDEff.cxx:673 AliITSTrackleterSPDEff.cxx:674 AliITSTrackleterSPDEff.cxx:675 AliITSTrackleterSPDEff.cxx:676 AliITSTrackleterSPDEff.cxx:677 AliITSTrackleterSPDEff.cxx:678 AliITSTrackleterSPDEff.cxx:679 AliITSTrackleterSPDEff.cxx:680 AliITSTrackleterSPDEff.cxx:681 AliITSTrackleterSPDEff.cxx:682 AliITSTrackleterSPDEff.cxx:683 AliITSTrackleterSPDEff.cxx:684 AliITSTrackleterSPDEff.cxx:685 AliITSTrackleterSPDEff.cxx:686 AliITSTrackleterSPDEff.cxx:687 AliITSTrackleterSPDEff.cxx:688 AliITSTrackleterSPDEff.cxx:689 AliITSTrackleterSPDEff.cxx:690 AliITSTrackleterSPDEff.cxx:691 AliITSTrackleterSPDEff.cxx:692 AliITSTrackleterSPDEff.cxx:693 AliITSTrackleterSPDEff.cxx:694 AliITSTrackleterSPDEff.cxx:695 AliITSTrackleterSPDEff.cxx:696 AliITSTrackleterSPDEff.cxx:697 AliITSTrackleterSPDEff.cxx:698 AliITSTrackleterSPDEff.cxx:699 AliITSTrackleterSPDEff.cxx:700 AliITSTrackleterSPDEff.cxx:701 AliITSTrackleterSPDEff.cxx:702 AliITSTrackleterSPDEff.cxx:703 AliITSTrackleterSPDEff.cxx:704 AliITSTrackleterSPDEff.cxx:705 AliITSTrackleterSPDEff.cxx:706 AliITSTrackleterSPDEff.cxx:707 AliITSTrackleterSPDEff.cxx:708 AliITSTrackleterSPDEff.cxx:709 AliITSTrackleterSPDEff.cxx:710 AliITSTrackleterSPDEff.cxx:711 AliITSTrackleterSPDEff.cxx:712 AliITSTrackleterSPDEff.cxx:713 AliITSTrackleterSPDEff.cxx:714 AliITSTrackleterSPDEff.cxx:715 AliITSTrackleterSPDEff.cxx:716 AliITSTrackleterSPDEff.cxx:717 AliITSTrackleterSPDEff.cxx:718 AliITSTrackleterSPDEff.cxx:719 AliITSTrackleterSPDEff.cxx:720 AliITSTrackleterSPDEff.cxx:721 AliITSTrackleterSPDEff.cxx:722 AliITSTrackleterSPDEff.cxx:723 AliITSTrackleterSPDEff.cxx:724 AliITSTrackleterSPDEff.cxx:725 AliITSTrackleterSPDEff.cxx:726 AliITSTrackleterSPDEff.cxx:727 AliITSTrackleterSPDEff.cxx:728 AliITSTrackleterSPDEff.cxx:729 AliITSTrackleterSPDEff.cxx:730 AliITSTrackleterSPDEff.cxx:731 AliITSTrackleterSPDEff.cxx:732 AliITSTrackleterSPDEff.cxx:733 AliITSTrackleterSPDEff.cxx:734 AliITSTrackleterSPDEff.cxx:735 AliITSTrackleterSPDEff.cxx:736 AliITSTrackleterSPDEff.cxx:737 AliITSTrackleterSPDEff.cxx:738 AliITSTrackleterSPDEff.cxx:739 AliITSTrackleterSPDEff.cxx:740 AliITSTrackleterSPDEff.cxx:741 AliITSTrackleterSPDEff.cxx:742 AliITSTrackleterSPDEff.cxx:743 AliITSTrackleterSPDEff.cxx:744 AliITSTrackleterSPDEff.cxx:745 AliITSTrackleterSPDEff.cxx:746 AliITSTrackleterSPDEff.cxx:747 AliITSTrackleterSPDEff.cxx:748 AliITSTrackleterSPDEff.cxx:749 AliITSTrackleterSPDEff.cxx:750 AliITSTrackleterSPDEff.cxx:751 AliITSTrackleterSPDEff.cxx:752 AliITSTrackleterSPDEff.cxx:753 AliITSTrackleterSPDEff.cxx:754 AliITSTrackleterSPDEff.cxx:755 AliITSTrackleterSPDEff.cxx:756 AliITSTrackleterSPDEff.cxx:757 AliITSTrackleterSPDEff.cxx:758 AliITSTrackleterSPDEff.cxx:759 AliITSTrackleterSPDEff.cxx:760 AliITSTrackleterSPDEff.cxx:761 AliITSTrackleterSPDEff.cxx:762 AliITSTrackleterSPDEff.cxx:763 AliITSTrackleterSPDEff.cxx:764 AliITSTrackleterSPDEff.cxx:765 AliITSTrackleterSPDEff.cxx:766 AliITSTrackleterSPDEff.cxx:767 AliITSTrackleterSPDEff.cxx:768 AliITSTrackleterSPDEff.cxx:769 AliITSTrackleterSPDEff.cxx:770 AliITSTrackleterSPDEff.cxx:771 AliITSTrackleterSPDEff.cxx:772 AliITSTrackleterSPDEff.cxx:773 AliITSTrackleterSPDEff.cxx:774 AliITSTrackleterSPDEff.cxx:775 AliITSTrackleterSPDEff.cxx:776 AliITSTrackleterSPDEff.cxx:777 AliITSTrackleterSPDEff.cxx:778 AliITSTrackleterSPDEff.cxx:779 AliITSTrackleterSPDEff.cxx:780 AliITSTrackleterSPDEff.cxx:781 AliITSTrackleterSPDEff.cxx:782 AliITSTrackleterSPDEff.cxx:783 AliITSTrackleterSPDEff.cxx:784 AliITSTrackleterSPDEff.cxx:785 AliITSTrackleterSPDEff.cxx:786 AliITSTrackleterSPDEff.cxx:787 AliITSTrackleterSPDEff.cxx:788 AliITSTrackleterSPDEff.cxx:789 AliITSTrackleterSPDEff.cxx:790 AliITSTrackleterSPDEff.cxx:791 AliITSTrackleterSPDEff.cxx:792 AliITSTrackleterSPDEff.cxx:793 AliITSTrackleterSPDEff.cxx:794 AliITSTrackleterSPDEff.cxx:795 AliITSTrackleterSPDEff.cxx:796 AliITSTrackleterSPDEff.cxx:797 AliITSTrackleterSPDEff.cxx:798 AliITSTrackleterSPDEff.cxx:799 AliITSTrackleterSPDEff.cxx:800 AliITSTrackleterSPDEff.cxx:801 AliITSTrackleterSPDEff.cxx:802 AliITSTrackleterSPDEff.cxx:803 AliITSTrackleterSPDEff.cxx:804 AliITSTrackleterSPDEff.cxx:805 AliITSTrackleterSPDEff.cxx:806 AliITSTrackleterSPDEff.cxx:807 AliITSTrackleterSPDEff.cxx:808 AliITSTrackleterSPDEff.cxx:809 AliITSTrackleterSPDEff.cxx:810 AliITSTrackleterSPDEff.cxx:811 AliITSTrackleterSPDEff.cxx:812 AliITSTrackleterSPDEff.cxx:813 AliITSTrackleterSPDEff.cxx:814 AliITSTrackleterSPDEff.cxx:815 AliITSTrackleterSPDEff.cxx:816 AliITSTrackleterSPDEff.cxx:817 AliITSTrackleterSPDEff.cxx:818 AliITSTrackleterSPDEff.cxx:819 AliITSTrackleterSPDEff.cxx:820 AliITSTrackleterSPDEff.cxx:821 AliITSTrackleterSPDEff.cxx:822 AliITSTrackleterSPDEff.cxx:823 AliITSTrackleterSPDEff.cxx:824 AliITSTrackleterSPDEff.cxx:825 AliITSTrackleterSPDEff.cxx:826 AliITSTrackleterSPDEff.cxx:827 AliITSTrackleterSPDEff.cxx:828 AliITSTrackleterSPDEff.cxx:829 AliITSTrackleterSPDEff.cxx:830 AliITSTrackleterSPDEff.cxx:831 AliITSTrackleterSPDEff.cxx:832 AliITSTrackleterSPDEff.cxx:833 AliITSTrackleterSPDEff.cxx:834 AliITSTrackleterSPDEff.cxx:835 AliITSTrackleterSPDEff.cxx:836 AliITSTrackleterSPDEff.cxx:837 AliITSTrackleterSPDEff.cxx:838 AliITSTrackleterSPDEff.cxx:839 AliITSTrackleterSPDEff.cxx:840 AliITSTrackleterSPDEff.cxx:841 AliITSTrackleterSPDEff.cxx:842 AliITSTrackleterSPDEff.cxx:843 AliITSTrackleterSPDEff.cxx:844 AliITSTrackleterSPDEff.cxx:845 AliITSTrackleterSPDEff.cxx:846 AliITSTrackleterSPDEff.cxx:847 AliITSTrackleterSPDEff.cxx:848 AliITSTrackleterSPDEff.cxx:849 AliITSTrackleterSPDEff.cxx:850 AliITSTrackleterSPDEff.cxx:851 AliITSTrackleterSPDEff.cxx:852 AliITSTrackleterSPDEff.cxx:853 AliITSTrackleterSPDEff.cxx:854 AliITSTrackleterSPDEff.cxx:855 AliITSTrackleterSPDEff.cxx:856 AliITSTrackleterSPDEff.cxx:857 AliITSTrackleterSPDEff.cxx:858 AliITSTrackleterSPDEff.cxx:859 AliITSTrackleterSPDEff.cxx:860 AliITSTrackleterSPDEff.cxx:861 AliITSTrackleterSPDEff.cxx:862 AliITSTrackleterSPDEff.cxx:863 AliITSTrackleterSPDEff.cxx:864 AliITSTrackleterSPDEff.cxx:865 AliITSTrackleterSPDEff.cxx:866 AliITSTrackleterSPDEff.cxx:867 AliITSTrackleterSPDEff.cxx:868 AliITSTrackleterSPDEff.cxx:869 AliITSTrackleterSPDEff.cxx:870 AliITSTrackleterSPDEff.cxx:871 AliITSTrackleterSPDEff.cxx:872 AliITSTrackleterSPDEff.cxx:873 AliITSTrackleterSPDEff.cxx:874 AliITSTrackleterSPDEff.cxx:875 AliITSTrackleterSPDEff.cxx:876 AliITSTrackleterSPDEff.cxx:877 AliITSTrackleterSPDEff.cxx:878 AliITSTrackleterSPDEff.cxx:879 AliITSTrackleterSPDEff.cxx:880 AliITSTrackleterSPDEff.cxx:881 AliITSTrackleterSPDEff.cxx:882 AliITSTrackleterSPDEff.cxx:883 AliITSTrackleterSPDEff.cxx:884 AliITSTrackleterSPDEff.cxx:885 AliITSTrackleterSPDEff.cxx:886 AliITSTrackleterSPDEff.cxx:887 AliITSTrackleterSPDEff.cxx:888 AliITSTrackleterSPDEff.cxx:889 AliITSTrackleterSPDEff.cxx:890 AliITSTrackleterSPDEff.cxx:891 AliITSTrackleterSPDEff.cxx:892 AliITSTrackleterSPDEff.cxx:893 AliITSTrackleterSPDEff.cxx:894 AliITSTrackleterSPDEff.cxx:895 AliITSTrackleterSPDEff.cxx:896 AliITSTrackleterSPDEff.cxx:897 AliITSTrackleterSPDEff.cxx:898 AliITSTrackleterSPDEff.cxx:899 AliITSTrackleterSPDEff.cxx:900 AliITSTrackleterSPDEff.cxx:901 AliITSTrackleterSPDEff.cxx:902 AliITSTrackleterSPDEff.cxx:903 AliITSTrackleterSPDEff.cxx:904 AliITSTrackleterSPDEff.cxx:905 AliITSTrackleterSPDEff.cxx:906 AliITSTrackleterSPDEff.cxx:907 AliITSTrackleterSPDEff.cxx:908 AliITSTrackleterSPDEff.cxx:909 AliITSTrackleterSPDEff.cxx:910 AliITSTrackleterSPDEff.cxx:911 AliITSTrackleterSPDEff.cxx:912 AliITSTrackleterSPDEff.cxx:913 AliITSTrackleterSPDEff.cxx:914 AliITSTrackleterSPDEff.cxx:915 AliITSTrackleterSPDEff.cxx:916 AliITSTrackleterSPDEff.cxx:917 AliITSTrackleterSPDEff.cxx:918 AliITSTrackleterSPDEff.cxx:919 AliITSTrackleterSPDEff.cxx:920 AliITSTrackleterSPDEff.cxx:921 AliITSTrackleterSPDEff.cxx:922 AliITSTrackleterSPDEff.cxx:923 AliITSTrackleterSPDEff.cxx:924 AliITSTrackleterSPDEff.cxx:925 AliITSTrackleterSPDEff.cxx:926 AliITSTrackleterSPDEff.cxx:927 AliITSTrackleterSPDEff.cxx:928 AliITSTrackleterSPDEff.cxx:929 AliITSTrackleterSPDEff.cxx:930 AliITSTrackleterSPDEff.cxx:931 AliITSTrackleterSPDEff.cxx:932 AliITSTrackleterSPDEff.cxx:933 AliITSTrackleterSPDEff.cxx:934 AliITSTrackleterSPDEff.cxx:935 AliITSTrackleterSPDEff.cxx:936 AliITSTrackleterSPDEff.cxx:937 AliITSTrackleterSPDEff.cxx:938 AliITSTrackleterSPDEff.cxx:939 AliITSTrackleterSPDEff.cxx:940 AliITSTrackleterSPDEff.cxx:941 AliITSTrackleterSPDEff.cxx:942 AliITSTrackleterSPDEff.cxx:943 AliITSTrackleterSPDEff.cxx:944 AliITSTrackleterSPDEff.cxx:945 AliITSTrackleterSPDEff.cxx:946 AliITSTrackleterSPDEff.cxx:947 AliITSTrackleterSPDEff.cxx:948 AliITSTrackleterSPDEff.cxx:949 AliITSTrackleterSPDEff.cxx:950 AliITSTrackleterSPDEff.cxx:951 AliITSTrackleterSPDEff.cxx:952 AliITSTrackleterSPDEff.cxx:953 AliITSTrackleterSPDEff.cxx:954 AliITSTrackleterSPDEff.cxx:955 AliITSTrackleterSPDEff.cxx:956 AliITSTrackleterSPDEff.cxx:957 AliITSTrackleterSPDEff.cxx:958 AliITSTrackleterSPDEff.cxx:959 AliITSTrackleterSPDEff.cxx:960 AliITSTrackleterSPDEff.cxx:961 AliITSTrackleterSPDEff.cxx:962 AliITSTrackleterSPDEff.cxx:963 AliITSTrackleterSPDEff.cxx:964 AliITSTrackleterSPDEff.cxx:965 AliITSTrackleterSPDEff.cxx:966 AliITSTrackleterSPDEff.cxx:967 AliITSTrackleterSPDEff.cxx:968 AliITSTrackleterSPDEff.cxx:969 AliITSTrackleterSPDEff.cxx:970 AliITSTrackleterSPDEff.cxx:971 AliITSTrackleterSPDEff.cxx:972 AliITSTrackleterSPDEff.cxx:973 AliITSTrackleterSPDEff.cxx:974 AliITSTrackleterSPDEff.cxx:975 AliITSTrackleterSPDEff.cxx:976 AliITSTrackleterSPDEff.cxx:977 AliITSTrackleterSPDEff.cxx:978 AliITSTrackleterSPDEff.cxx:979 AliITSTrackleterSPDEff.cxx:980 AliITSTrackleterSPDEff.cxx:981 AliITSTrackleterSPDEff.cxx:982 AliITSTrackleterSPDEff.cxx:983 AliITSTrackleterSPDEff.cxx:984 AliITSTrackleterSPDEff.cxx:985 AliITSTrackleterSPDEff.cxx:986 AliITSTrackleterSPDEff.cxx:987 AliITSTrackleterSPDEff.cxx:988 AliITSTrackleterSPDEff.cxx:989 AliITSTrackleterSPDEff.cxx:990 AliITSTrackleterSPDEff.cxx:991 AliITSTrackleterSPDEff.cxx:992 AliITSTrackleterSPDEff.cxx:993 AliITSTrackleterSPDEff.cxx:994 AliITSTrackleterSPDEff.cxx:995 AliITSTrackleterSPDEff.cxx:996 AliITSTrackleterSPDEff.cxx:997 AliITSTrackleterSPDEff.cxx:998 AliITSTrackleterSPDEff.cxx:999 AliITSTrackleterSPDEff.cxx:1000 AliITSTrackleterSPDEff.cxx:1001 AliITSTrackleterSPDEff.cxx:1002 AliITSTrackleterSPDEff.cxx:1003 AliITSTrackleterSPDEff.cxx:1004 AliITSTrackleterSPDEff.cxx:1005 AliITSTrackleterSPDEff.cxx:1006 AliITSTrackleterSPDEff.cxx:1007 AliITSTrackleterSPDEff.cxx:1008 AliITSTrackleterSPDEff.cxx:1009 AliITSTrackleterSPDEff.cxx:1010 AliITSTrackleterSPDEff.cxx:1011 AliITSTrackleterSPDEff.cxx:1012 AliITSTrackleterSPDEff.cxx:1013 AliITSTrackleterSPDEff.cxx:1014 AliITSTrackleterSPDEff.cxx:1015 AliITSTrackleterSPDEff.cxx:1016 AliITSTrackleterSPDEff.cxx:1017 AliITSTrackleterSPDEff.cxx:1018 AliITSTrackleterSPDEff.cxx:1019 AliITSTrackleterSPDEff.cxx:1020 AliITSTrackleterSPDEff.cxx:1021 AliITSTrackleterSPDEff.cxx:1022 AliITSTrackleterSPDEff.cxx:1023 AliITSTrackleterSPDEff.cxx:1024 AliITSTrackleterSPDEff.cxx:1025 AliITSTrackleterSPDEff.cxx:1026 AliITSTrackleterSPDEff.cxx:1027 AliITSTrackleterSPDEff.cxx:1028 AliITSTrackleterSPDEff.cxx:1029 AliITSTrackleterSPDEff.cxx:1030 AliITSTrackleterSPDEff.cxx:1031 AliITSTrackleterSPDEff.cxx:1032 AliITSTrackleterSPDEff.cxx:1033 AliITSTrackleterSPDEff.cxx:1034 AliITSTrackleterSPDEff.cxx:1035 AliITSTrackleterSPDEff.cxx:1036 AliITSTrackleterSPDEff.cxx:1037 AliITSTrackleterSPDEff.cxx:1038 AliITSTrackleterSPDEff.cxx:1039 AliITSTrackleterSPDEff.cxx:1040 AliITSTrackleterSPDEff.cxx:1041 AliITSTrackleterSPDEff.cxx:1042 AliITSTrackleterSPDEff.cxx:1043 AliITSTrackleterSPDEff.cxx:1044 AliITSTrackleterSPDEff.cxx:1045 AliITSTrackleterSPDEff.cxx:1046 AliITSTrackleterSPDEff.cxx:1047 AliITSTrackleterSPDEff.cxx:1048 AliITSTrackleterSPDEff.cxx:1049 AliITSTrackleterSPDEff.cxx:1050 AliITSTrackleterSPDEff.cxx:1051 AliITSTrackleterSPDEff.cxx:1052 AliITSTrackleterSPDEff.cxx:1053 AliITSTrackleterSPDEff.cxx:1054 AliITSTrackleterSPDEff.cxx:1055 AliITSTrackleterSPDEff.cxx:1056 AliITSTrackleterSPDEff.cxx:1057 AliITSTrackleterSPDEff.cxx:1058 AliITSTrackleterSPDEff.cxx:1059 AliITSTrackleterSPDEff.cxx:1060 AliITSTrackleterSPDEff.cxx:1061 AliITSTrackleterSPDEff.cxx:1062 AliITSTrackleterSPDEff.cxx:1063 AliITSTrackleterSPDEff.cxx:1064 AliITSTrackleterSPDEff.cxx:1065 AliITSTrackleterSPDEff.cxx:1066 AliITSTrackleterSPDEff.cxx:1067 AliITSTrackleterSPDEff.cxx:1068 AliITSTrackleterSPDEff.cxx:1069 AliITSTrackleterSPDEff.cxx:1070 AliITSTrackleterSPDEff.cxx:1071 AliITSTrackleterSPDEff.cxx:1072 AliITSTrackleterSPDEff.cxx:1073 AliITSTrackleterSPDEff.cxx:1074 AliITSTrackleterSPDEff.cxx:1075 AliITSTrackleterSPDEff.cxx:1076 AliITSTrackleterSPDEff.cxx:1077 AliITSTrackleterSPDEff.cxx:1078 AliITSTrackleterSPDEff.cxx:1079 AliITSTrackleterSPDEff.cxx:1080 AliITSTrackleterSPDEff.cxx:1081 AliITSTrackleterSPDEff.cxx:1082 AliITSTrackleterSPDEff.cxx:1083 AliITSTrackleterSPDEff.cxx:1084 AliITSTrackleterSPDEff.cxx:1085 AliITSTrackleterSPDEff.cxx:1086 AliITSTrackleterSPDEff.cxx:1087 AliITSTrackleterSPDEff.cxx:1088 AliITSTrackleterSPDEff.cxx:1089 AliITSTrackleterSPDEff.cxx:1090 AliITSTrackleterSPDEff.cxx:1091 AliITSTrackleterSPDEff.cxx:1092 AliITSTrackleterSPDEff.cxx:1093 AliITSTrackleterSPDEff.cxx:1094 AliITSTrackleterSPDEff.cxx:1095 AliITSTrackleterSPDEff.cxx:1096 AliITSTrackleterSPDEff.cxx:1097 AliITSTrackleterSPDEff.cxx:1098 AliITSTrackleterSPDEff.cxx:1099 AliITSTrackleterSPDEff.cxx:1100 AliITSTrackleterSPDEff.cxx:1101 AliITSTrackleterSPDEff.cxx:1102 AliITSTrackleterSPDEff.cxx:1103 AliITSTrackleterSPDEff.cxx:1104 AliITSTrackleterSPDEff.cxx:1105 AliITSTrackleterSPDEff.cxx:1106 AliITSTrackleterSPDEff.cxx:1107 AliITSTrackleterSPDEff.cxx:1108 AliITSTrackleterSPDEff.cxx:1109 AliITSTrackleterSPDEff.cxx:1110 AliITSTrackleterSPDEff.cxx:1111 AliITSTrackleterSPDEff.cxx:1112 AliITSTrackleterSPDEff.cxx:1113 AliITSTrackleterSPDEff.cxx:1114 AliITSTrackleterSPDEff.cxx:1115 AliITSTrackleterSPDEff.cxx:1116 AliITSTrackleterSPDEff.cxx:1117 AliITSTrackleterSPDEff.cxx:1118 AliITSTrackleterSPDEff.cxx:1119 AliITSTrackleterSPDEff.cxx:1120 AliITSTrackleterSPDEff.cxx:1121 AliITSTrackleterSPDEff.cxx:1122 AliITSTrackleterSPDEff.cxx:1123 AliITSTrackleterSPDEff.cxx:1124 AliITSTrackleterSPDEff.cxx:1125 AliITSTrackleterSPDEff.cxx:1126 AliITSTrackleterSPDEff.cxx:1127 AliITSTrackleterSPDEff.cxx:1128 AliITSTrackleterSPDEff.cxx:1129 AliITSTrackleterSPDEff.cxx:1130 AliITSTrackleterSPDEff.cxx:1131 AliITSTrackleterSPDEff.cxx:1132 AliITSTrackleterSPDEff.cxx:1133 AliITSTrackleterSPDEff.cxx:1134 AliITSTrackleterSPDEff.cxx:1135 AliITSTrackleterSPDEff.cxx:1136 AliITSTrackleterSPDEff.cxx:1137 AliITSTrackleterSPDEff.cxx:1138 AliITSTrackleterSPDEff.cxx:1139 AliITSTrackleterSPDEff.cxx:1140 AliITSTrackleterSPDEff.cxx:1141 AliITSTrackleterSPDEff.cxx:1142 AliITSTrackleterSPDEff.cxx:1143 AliITSTrackleterSPDEff.cxx:1144 AliITSTrackleterSPDEff.cxx:1145 AliITSTrackleterSPDEff.cxx:1146 AliITSTrackleterSPDEff.cxx:1147 AliITSTrackleterSPDEff.cxx:1148 AliITSTrackleterSPDEff.cxx:1149 AliITSTrackleterSPDEff.cxx:1150 AliITSTrackleterSPDEff.cxx:1151 AliITSTrackleterSPDEff.cxx:1152 AliITSTrackleterSPDEff.cxx:1153 AliITSTrackleterSPDEff.cxx:1154 AliITSTrackleterSPDEff.cxx:1155 AliITSTrackleterSPDEff.cxx:1156 AliITSTrackleterSPDEff.cxx:1157 AliITSTrackleterSPDEff.cxx:1158 AliITSTrackleterSPDEff.cxx:1159 AliITSTrackleterSPDEff.cxx:1160 AliITSTrackleterSPDEff.cxx:1161 AliITSTrackleterSPDEff.cxx:1162 AliITSTrackleterSPDEff.cxx:1163 AliITSTrackleterSPDEff.cxx:1164 AliITSTrackleterSPDEff.cxx:1165 AliITSTrackleterSPDEff.cxx:1166 AliITSTrackleterSPDEff.cxx:1167 AliITSTrackleterSPDEff.cxx:1168 AliITSTrackleterSPDEff.cxx:1169 AliITSTrackleterSPDEff.cxx:1170 AliITSTrackleterSPDEff.cxx:1171 AliITSTrackleterSPDEff.cxx:1172 AliITSTrackleterSPDEff.cxx:1173 AliITSTrackleterSPDEff.cxx:1174 AliITSTrackleterSPDEff.cxx:1175 AliITSTrackleterSPDEff.cxx:1176 AliITSTrackleterSPDEff.cxx:1177 AliITSTrackleterSPDEff.cxx:1178 AliITSTrackleterSPDEff.cxx:1179 AliITSTrackleterSPDEff.cxx:1180 AliITSTrackleterSPDEff.cxx:1181 AliITSTrackleterSPDEff.cxx:1182 AliITSTrackleterSPDEff.cxx:1183 AliITSTrackleterSPDEff.cxx:1184 AliITSTrackleterSPDEff.cxx:1185 AliITSTrackleterSPDEff.cxx:1186 AliITSTrackleterSPDEff.cxx:1187 AliITSTrackleterSPDEff.cxx:1188 AliITSTrackleterSPDEff.cxx:1189 AliITSTrackleterSPDEff.cxx:1190 AliITSTrackleterSPDEff.cxx:1191 AliITSTrackleterSPDEff.cxx:1192 AliITSTrackleterSPDEff.cxx:1193 AliITSTrackleterSPDEff.cxx:1194 AliITSTrackleterSPDEff.cxx:1195 AliITSTrackleterSPDEff.cxx:1196 AliITSTrackleterSPDEff.cxx:1197 AliITSTrackleterSPDEff.cxx:1198 AliITSTrackleterSPDEff.cxx:1199 AliITSTrackleterSPDEff.cxx:1200 AliITSTrackleterSPDEff.cxx:1201 AliITSTrackleterSPDEff.cxx:1202 AliITSTrackleterSPDEff.cxx:1203 AliITSTrackleterSPDEff.cxx:1204 AliITSTrackleterSPDEff.cxx:1205 AliITSTrackleterSPDEff.cxx:1206 AliITSTrackleterSPDEff.cxx:1207 AliITSTrackleterSPDEff.cxx:1208 AliITSTrackleterSPDEff.cxx:1209 AliITSTrackleterSPDEff.cxx:1210 AliITSTrackleterSPDEff.cxx:1211 AliITSTrackleterSPDEff.cxx:1212 AliITSTrackleterSPDEff.cxx:1213 AliITSTrackleterSPDEff.cxx:1214 AliITSTrackleterSPDEff.cxx:1215 AliITSTrackleterSPDEff.cxx:1216 AliITSTrackleterSPDEff.cxx:1217 AliITSTrackleterSPDEff.cxx:1218 AliITSTrackleterSPDEff.cxx:1219 AliITSTrackleterSPDEff.cxx:1220 AliITSTrackleterSPDEff.cxx:1221 AliITSTrackleterSPDEff.cxx:1222 AliITSTrackleterSPDEff.cxx:1223 AliITSTrackleterSPDEff.cxx:1224 AliITSTrackleterSPDEff.cxx:1225 AliITSTrackleterSPDEff.cxx:1226 AliITSTrackleterSPDEff.cxx:1227 AliITSTrackleterSPDEff.cxx:1228 AliITSTrackleterSPDEff.cxx:1229 AliITSTrackleterSPDEff.cxx:1230 AliITSTrackleterSPDEff.cxx:1231 AliITSTrackleterSPDEff.cxx:1232 AliITSTrackleterSPDEff.cxx:1233 AliITSTrackleterSPDEff.cxx:1234 AliITSTrackleterSPDEff.cxx:1235 AliITSTrackleterSPDEff.cxx:1236 AliITSTrackleterSPDEff.cxx:1237 AliITSTrackleterSPDEff.cxx:1238 AliITSTrackleterSPDEff.cxx:1239 AliITSTrackleterSPDEff.cxx:1240 AliITSTrackleterSPDEff.cxx:1241 AliITSTrackleterSPDEff.cxx:1242 AliITSTrackleterSPDEff.cxx:1243 AliITSTrackleterSPDEff.cxx:1244 AliITSTrackleterSPDEff.cxx:1245 AliITSTrackleterSPDEff.cxx:1246 AliITSTrackleterSPDEff.cxx:1247 AliITSTrackleterSPDEff.cxx:1248 AliITSTrackleterSPDEff.cxx:1249 AliITSTrackleterSPDEff.cxx:1250 AliITSTrackleterSPDEff.cxx:1251 AliITSTrackleterSPDEff.cxx:1252 AliITSTrackleterSPDEff.cxx:1253 AliITSTrackleterSPDEff.cxx:1254 AliITSTrackleterSPDEff.cxx:1255 AliITSTrackleterSPDEff.cxx:1256 AliITSTrackleterSPDEff.cxx:1257 AliITSTrackleterSPDEff.cxx:1258 AliITSTrackleterSPDEff.cxx:1259 AliITSTrackleterSPDEff.cxx:1260 AliITSTrackleterSPDEff.cxx:1261 AliITSTrackleterSPDEff.cxx:1262 AliITSTrackleterSPDEff.cxx:1263 AliITSTrackleterSPDEff.cxx:1264 AliITSTrackleterSPDEff.cxx:1265 AliITSTrackleterSPDEff.cxx:1266 AliITSTrackleterSPDEff.cxx:1267 AliITSTrackleterSPDEff.cxx:1268 AliITSTrackleterSPDEff.cxx:1269 AliITSTrackleterSPDEff.cxx:1270 AliITSTrackleterSPDEff.cxx:1271 AliITSTrackleterSPDEff.cxx:1272 AliITSTrackleterSPDEff.cxx:1273 AliITSTrackleterSPDEff.cxx:1274 AliITSTrackleterSPDEff.cxx:1275 AliITSTrackleterSPDEff.cxx:1276 AliITSTrackleterSPDEff.cxx:1277 AliITSTrackleterSPDEff.cxx:1278 AliITSTrackleterSPDEff.cxx:1279 AliITSTrackleterSPDEff.cxx:1280 AliITSTrackleterSPDEff.cxx:1281 AliITSTrackleterSPDEff.cxx:1282 AliITSTrackleterSPDEff.cxx:1283 AliITSTrackleterSPDEff.cxx:1284 AliITSTrackleterSPDEff.cxx:1285 AliITSTrackleterSPDEff.cxx:1286 AliITSTrackleterSPDEff.cxx:1287 AliITSTrackleterSPDEff.cxx:1288 AliITSTrackleterSPDEff.cxx:1289 AliITSTrackleterSPDEff.cxx:1290 AliITSTrackleterSPDEff.cxx:1291 AliITSTrackleterSPDEff.cxx:1292 AliITSTrackleterSPDEff.cxx:1293 AliITSTrackleterSPDEff.cxx:1294 AliITSTrackleterSPDEff.cxx:1295 AliITSTrackleterSPDEff.cxx:1296 AliITSTrackleterSPDEff.cxx:1297 AliITSTrackleterSPDEff.cxx:1298 AliITSTrackleterSPDEff.cxx:1299 AliITSTrackleterSPDEff.cxx:1300 AliITSTrackleterSPDEff.cxx:1301 AliITSTrackleterSPDEff.cxx:1302 AliITSTrackleterSPDEff.cxx:1303 AliITSTrackleterSPDEff.cxx:1304 AliITSTrackleterSPDEff.cxx:1305 AliITSTrackleterSPDEff.cxx:1306 AliITSTrackleterSPDEff.cxx:1307 AliITSTrackleterSPDEff.cxx:1308 AliITSTrackleterSPDEff.cxx:1309 AliITSTrackleterSPDEff.cxx:1310 AliITSTrackleterSPDEff.cxx:1311 AliITSTrackleterSPDEff.cxx:1312 AliITSTrackleterSPDEff.cxx:1313 AliITSTrackleterSPDEff.cxx:1314 AliITSTrackleterSPDEff.cxx:1315 AliITSTrackleterSPDEff.cxx:1316 AliITSTrackleterSPDEff.cxx:1317 AliITSTrackleterSPDEff.cxx:1318 AliITSTrackleterSPDEff.cxx:1319 AliITSTrackleterSPDEff.cxx:1320 AliITSTrackleterSPDEff.cxx:1321 AliITSTrackleterSPDEff.cxx:1322 AliITSTrackleterSPDEff.cxx:1323 AliITSTrackleterSPDEff.cxx:1324 AliITSTrackleterSPDEff.cxx:1325 AliITSTrackleterSPDEff.cxx:1326 AliITSTrackleterSPDEff.cxx:1327 AliITSTrackleterSPDEff.cxx:1328 AliITSTrackleterSPDEff.cxx:1329 AliITSTrackleterSPDEff.cxx:1330 AliITSTrackleterSPDEff.cxx:1331 AliITSTrackleterSPDEff.cxx:1332 AliITSTrackleterSPDEff.cxx:1333 AliITSTrackleterSPDEff.cxx:1334 AliITSTrackleterSPDEff.cxx:1335 AliITSTrackleterSPDEff.cxx:1336 AliITSTrackleterSPDEff.cxx:1337 AliITSTrackleterSPDEff.cxx:1338 AliITSTrackleterSPDEff.cxx:1339 AliITSTrackleterSPDEff.cxx:1340 AliITSTrackleterSPDEff.cxx:1341 AliITSTrackleterSPDEff.cxx:1342 AliITSTrackleterSPDEff.cxx:1343 AliITSTrackleterSPDEff.cxx:1344 AliITSTrackleterSPDEff.cxx:1345 AliITSTrackleterSPDEff.cxx:1346 AliITSTrackleterSPDEff.cxx:1347 AliITSTrackleterSPDEff.cxx:1348 AliITSTrackleterSPDEff.cxx:1349 AliITSTrackleterSPDEff.cxx:1350 AliITSTrackleterSPDEff.cxx:1351 AliITSTrackleterSPDEff.cxx:1352 AliITSTrackleterSPDEff.cxx:1353 AliITSTrackleterSPDEff.cxx:1354 AliITSTrackleterSPDEff.cxx:1355 AliITSTrackleterSPDEff.cxx:1356 AliITSTrackleterSPDEff.cxx:1357 AliITSTrackleterSPDEff.cxx:1358 AliITSTrackleterSPDEff.cxx:1359 AliITSTrackleterSPDEff.cxx:1360 AliITSTrackleterSPDEff.cxx:1361 AliITSTrackleterSPDEff.cxx:1362 AliITSTrackleterSPDEff.cxx:1363 AliITSTrackleterSPDEff.cxx:1364 AliITSTrackleterSPDEff.cxx:1365 AliITSTrackleterSPDEff.cxx:1366 AliITSTrackleterSPDEff.cxx:1367 AliITSTrackleterSPDEff.cxx:1368 AliITSTrackleterSPDEff.cxx:1369 AliITSTrackleterSPDEff.cxx:1370 AliITSTrackleterSPDEff.cxx:1371 AliITSTrackleterSPDEff.cxx:1372 AliITSTrackleterSPDEff.cxx:1373 AliITSTrackleterSPDEff.cxx:1374 AliITSTrackleterSPDEff.cxx:1375 AliITSTrackleterSPDEff.cxx:1376 AliITSTrackleterSPDEff.cxx:1377 AliITSTrackleterSPDEff.cxx:1378 AliITSTrackleterSPDEff.cxx:1379 AliITSTrackleterSPDEff.cxx:1380 AliITSTrackleterSPDEff.cxx:1381 AliITSTrackleterSPDEff.cxx:1382 AliITSTrackleterSPDEff.cxx:1383 AliITSTrackleterSPDEff.cxx:1384 AliITSTrackleterSPDEff.cxx:1385 AliITSTrackleterSPDEff.cxx:1386 AliITSTrackleterSPDEff.cxx:1387 AliITSTrackleterSPDEff.cxx:1388 AliITSTrackleterSPDEff.cxx:1389 AliITSTrackleterSPDEff.cxx:1390 AliITSTrackleterSPDEff.cxx:1391 AliITSTrackleterSPDEff.cxx:1392 AliITSTrackleterSPDEff.cxx:1393 AliITSTrackleterSPDEff.cxx:1394 AliITSTrackleterSPDEff.cxx:1395 AliITSTrackleterSPDEff.cxx:1396 AliITSTrackleterSPDEff.cxx:1397 AliITSTrackleterSPDEff.cxx:1398 AliITSTrackleterSPDEff.cxx:1399 AliITSTrackleterSPDEff.cxx:1400 AliITSTrackleterSPDEff.cxx:1401 AliITSTrackleterSPDEff.cxx:1402 AliITSTrackleterSPDEff.cxx:1403 AliITSTrackleterSPDEff.cxx:1404 AliITSTrackleterSPDEff.cxx:1405 AliITSTrackleterSPDEff.cxx:1406 AliITSTrackleterSPDEff.cxx:1407 AliITSTrackleterSPDEff.cxx:1408 AliITSTrackleterSPDEff.cxx:1409 AliITSTrackleterSPDEff.cxx:1410 AliITSTrackleterSPDEff.cxx:1411 AliITSTrackleterSPDEff.cxx:1412 AliITSTrackleterSPDEff.cxx:1413 AliITSTrackleterSPDEff.cxx:1414 AliITSTrackleterSPDEff.cxx:1415 AliITSTrackleterSPDEff.cxx:1416 AliITSTrackleterSPDEff.cxx:1417 AliITSTrackleterSPDEff.cxx:1418 AliITSTrackleterSPDEff.cxx:1419 AliITSTrackleterSPDEff.cxx:1420 AliITSTrackleterSPDEff.cxx:1421 AliITSTrackleterSPDEff.cxx:1422 AliITSTrackleterSPDEff.cxx:1423 AliITSTrackleterSPDEff.cxx:1424 AliITSTrackleterSPDEff.cxx:1425 AliITSTrackleterSPDEff.cxx:1426 AliITSTrackleterSPDEff.cxx:1427 AliITSTrackleterSPDEff.cxx:1428 AliITSTrackleterSPDEff.cxx:1429 AliITSTrackleterSPDEff.cxx:1430 AliITSTrackleterSPDEff.cxx:1431 AliITSTrackleterSPDEff.cxx:1432 AliITSTrackleterSPDEff.cxx:1433 AliITSTrackleterSPDEff.cxx:1434 AliITSTrackleterSPDEff.cxx:1435 AliITSTrackleterSPDEff.cxx:1436 AliITSTrackleterSPDEff.cxx:1437 AliITSTrackleterSPDEff.cxx:1438 AliITSTrackleterSPDEff.cxx:1439 AliITSTrackleterSPDEff.cxx:1440 AliITSTrackleterSPDEff.cxx:1441 AliITSTrackleterSPDEff.cxx:1442 AliITSTrackleterSPDEff.cxx:1443 AliITSTrackleterSPDEff.cxx:1444 AliITSTrackleterSPDEff.cxx:1445 AliITSTrackleterSPDEff.cxx:1446 AliITSTrackleterSPDEff.cxx:1447 AliITSTrackleterSPDEff.cxx:1448 AliITSTrackleterSPDEff.cxx:1449 AliITSTrackleterSPDEff.cxx:1450 AliITSTrackleterSPDEff.cxx:1451 AliITSTrackleterSPDEff.cxx:1452 AliITSTrackleterSPDEff.cxx:1453 AliITSTrackleterSPDEff.cxx:1454 AliITSTrackleterSPDEff.cxx:1455 AliITSTrackleterSPDEff.cxx:1456 AliITSTrackleterSPDEff.cxx:1457 AliITSTrackleterSPDEff.cxx:1458 AliITSTrackleterSPDEff.cxx:1459 AliITSTrackleterSPDEff.cxx:1460 AliITSTrackleterSPDEff.cxx:1461 AliITSTrackleterSPDEff.cxx:1462 AliITSTrackleterSPDEff.cxx:1463 AliITSTrackleterSPDEff.cxx:1464 AliITSTrackleterSPDEff.cxx:1465 AliITSTrackleterSPDEff.cxx:1466 AliITSTrackleterSPDEff.cxx:1467 AliITSTrackleterSPDEff.cxx:1468 AliITSTrackleterSPDEff.cxx:1469 AliITSTrackleterSPDEff.cxx:1470 AliITSTrackleterSPDEff.cxx:1471 AliITSTrackleterSPDEff.cxx:1472 AliITSTrackleterSPDEff.cxx:1473 AliITSTrackleterSPDEff.cxx:1474 AliITSTrackleterSPDEff.cxx:1475 AliITSTrackleterSPDEff.cxx:1476 AliITSTrackleterSPDEff.cxx:1477 AliITSTrackleterSPDEff.cxx:1478 AliITSTrackleterSPDEff.cxx:1479 AliITSTrackleterSPDEff.cxx:1480 AliITSTrackleterSPDEff.cxx:1481 AliITSTrackleterSPDEff.cxx:1482 AliITSTrackleterSPDEff.cxx:1483 AliITSTrackleterSPDEff.cxx:1484 AliITSTrackleterSPDEff.cxx:1485 AliITSTrackleterSPDEff.cxx:1486 AliITSTrackleterSPDEff.cxx:1487 AliITSTrackleterSPDEff.cxx:1488 AliITSTrackleterSPDEff.cxx:1489 AliITSTrackleterSPDEff.cxx:1490 AliITSTrackleterSPDEff.cxx:1491 AliITSTrackleterSPDEff.cxx:1492 AliITSTrackleterSPDEff.cxx:1493 AliITSTrackleterSPDEff.cxx:1494 AliITSTrackleterSPDEff.cxx:1495 AliITSTrackleterSPDEff.cxx:1496 AliITSTrackleterSPDEff.cxx:1497 AliITSTrackleterSPDEff.cxx:1498 AliITSTrackleterSPDEff.cxx:1499 AliITSTrackleterSPDEff.cxx:1500 AliITSTrackleterSPDEff.cxx:1501 AliITSTrackleterSPDEff.cxx:1502 AliITSTrackleterSPDEff.cxx:1503 AliITSTrackleterSPDEff.cxx:1504 AliITSTrackleterSPDEff.cxx:1505 AliITSTrackleterSPDEff.cxx:1506 AliITSTrackleterSPDEff.cxx:1507 AliITSTrackleterSPDEff.cxx:1508 AliITSTrackleterSPDEff.cxx:1509 AliITSTrackleterSPDEff.cxx:1510 AliITSTrackleterSPDEff.cxx:1511 AliITSTrackleterSPDEff.cxx:1512 AliITSTrackleterSPDEff.cxx:1513 AliITSTrackleterSPDEff.cxx:1514 AliITSTrackleterSPDEff.cxx:1515 AliITSTrackleterSPDEff.cxx:1516 AliITSTrackleterSPDEff.cxx:1517 AliITSTrackleterSPDEff.cxx:1518 AliITSTrackleterSPDEff.cxx:1519 AliITSTrackleterSPDEff.cxx:1520 AliITSTrackleterSPDEff.cxx:1521 AliITSTrackleterSPDEff.cxx:1522 AliITSTrackleterSPDEff.cxx:1523 AliITSTrackleterSPDEff.cxx:1524 AliITSTrackleterSPDEff.cxx:1525 AliITSTrackleterSPDEff.cxx:1526 AliITSTrackleterSPDEff.cxx:1527 AliITSTrackleterSPDEff.cxx:1528 AliITSTrackleterSPDEff.cxx:1529 AliITSTrackleterSPDEff.cxx:1530 AliITSTrackleterSPDEff.cxx:1531 AliITSTrackleterSPDEff.cxx:1532 AliITSTrackleterSPDEff.cxx:1533 AliITSTrackleterSPDEff.cxx:1534 AliITSTrackleterSPDEff.cxx:1535 AliITSTrackleterSPDEff.cxx:1536 AliITSTrackleterSPDEff.cxx:1537 AliITSTrackleterSPDEff.cxx:1538 AliITSTrackleterSPDEff.cxx:1539 AliITSTrackleterSPDEff.cxx:1540 AliITSTrackleterSPDEff.cxx:1541 AliITSTrackleterSPDEff.cxx:1542 AliITSTrackleterSPDEff.cxx:1543 AliITSTrackleterSPDEff.cxx:1544 AliITSTrackleterSPDEff.cxx:1545 AliITSTrackleterSPDEff.cxx:1546 AliITSTrackleterSPDEff.cxx:1547 AliITSTrackleterSPDEff.cxx:1548 AliITSTrackleterSPDEff.cxx:1549 AliITSTrackleterSPDEff.cxx:1550 AliITSTrackleterSPDEff.cxx:1551 AliITSTrackleterSPDEff.cxx:1552 AliITSTrackleterSPDEff.cxx:1553 AliITSTrackleterSPDEff.cxx:1554 AliITSTrackleterSPDEff.cxx:1555 AliITSTrackleterSPDEff.cxx:1556 AliITSTrackleterSPDEff.cxx:1557 AliITSTrackleterSPDEff.cxx:1558 AliITSTrackleterSPDEff.cxx:1559 AliITSTrackleterSPDEff.cxx:1560 AliITSTrackleterSPDEff.cxx:1561 AliITSTrackleterSPDEff.cxx:1562 AliITSTrackleterSPDEff.cxx:1563 AliITSTrackleterSPDEff.cxx:1564 AliITSTrackleterSPDEff.cxx:1565 AliITSTrackleterSPDEff.cxx:1566 AliITSTrackleterSPDEff.cxx:1567 AliITSTrackleterSPDEff.cxx:1568 AliITSTrackleterSPDEff.cxx:1569 AliITSTrackleterSPDEff.cxx:1570 AliITSTrackleterSPDEff.cxx:1571 AliITSTrackleterSPDEff.cxx:1572 AliITSTrackleterSPDEff.cxx:1573 AliITSTrackleterSPDEff.cxx:1574 AliITSTrackleterSPDEff.cxx:1575 AliITSTrackleterSPDEff.cxx:1576 AliITSTrackleterSPDEff.cxx:1577 AliITSTrackleterSPDEff.cxx:1578 AliITSTrackleterSPDEff.cxx:1579 AliITSTrackleterSPDEff.cxx:1580 AliITSTrackleterSPDEff.cxx:1581 AliITSTrackleterSPDEff.cxx:1582 AliITSTrackleterSPDEff.cxx:1583 AliITSTrackleterSPDEff.cxx:1584 AliITSTrackleterSPDEff.cxx:1585 AliITSTrackleterSPDEff.cxx:1586 AliITSTrackleterSPDEff.cxx:1587 AliITSTrackleterSPDEff.cxx:1588 AliITSTrackleterSPDEff.cxx:1589 AliITSTrackleterSPDEff.cxx:1590 AliITSTrackleterSPDEff.cxx:1591 AliITSTrackleterSPDEff.cxx:1592 AliITSTrackleterSPDEff.cxx:1593 AliITSTrackleterSPDEff.cxx:1594 AliITSTrackleterSPDEff.cxx:1595 AliITSTrackleterSPDEff.cxx:1596 AliITSTrackleterSPDEff.cxx:1597 AliITSTrackleterSPDEff.cxx:1598 AliITSTrackleterSPDEff.cxx:1599 AliITSTrackleterSPDEff.cxx:1600 AliITSTrackleterSPDEff.cxx:1601 AliITSTrackleterSPDEff.cxx:1602 AliITSTrackleterSPDEff.cxx:1603 AliITSTrackleterSPDEff.cxx:1604 AliITSTrackleterSPDEff.cxx:1605 AliITSTrackleterSPDEff.cxx:1606 AliITSTrackleterSPDEff.cxx:1607 AliITSTrackleterSPDEff.cxx:1608 AliITSTrackleterSPDEff.cxx:1609 AliITSTrackleterSPDEff.cxx:1610 AliITSTrackleterSPDEff.cxx:1611 AliITSTrackleterSPDEff.cxx:1612 AliITSTrackleterSPDEff.cxx:1613 AliITSTrackleterSPDEff.cxx:1614 AliITSTrackleterSPDEff.cxx:1615 AliITSTrackleterSPDEff.cxx:1616 AliITSTrackleterSPDEff.cxx:1617 AliITSTrackleterSPDEff.cxx:1618 AliITSTrackleterSPDEff.cxx:1619 AliITSTrackleterSPDEff.cxx:1620 AliITSTrackleterSPDEff.cxx:1621 AliITSTrackleterSPDEff.cxx:1622 AliITSTrackleterSPDEff.cxx:1623 AliITSTrackleterSPDEff.cxx:1624 AliITSTrackleterSPDEff.cxx:1625 AliITSTrackleterSPDEff.cxx:1626 AliITSTrackleterSPDEff.cxx:1627 AliITSTrackleterSPDEff.cxx:1628 AliITSTrackleterSPDEff.cxx:1629 AliITSTrackleterSPDEff.cxx:1630 AliITSTrackleterSPDEff.cxx:1631 AliITSTrackleterSPDEff.cxx:1632 AliITSTrackleterSPDEff.cxx:1633 AliITSTrackleterSPDEff.cxx:1634 AliITSTrackleterSPDEff.cxx:1635 AliITSTrackleterSPDEff.cxx:1636 AliITSTrackleterSPDEff.cxx:1637 AliITSTrackleterSPDEff.cxx:1638 AliITSTrackleterSPDEff.cxx:1639 AliITSTrackleterSPDEff.cxx:1640 AliITSTrackleterSPDEff.cxx:1641 AliITSTrackleterSPDEff.cxx:1642 AliITSTrackleterSPDEff.cxx:1643 AliITSTrackleterSPDEff.cxx:1644 AliITSTrackleterSPDEff.cxx:1645 AliITSTrackleterSPDEff.cxx:1646 AliITSTrackleterSPDEff.cxx:1647 AliITSTrackleterSPDEff.cxx:1648 AliITSTrackleterSPDEff.cxx:1649 AliITSTrackleterSPDEff.cxx:1650 AliITSTrackleterSPDEff.cxx:1651 AliITSTrackleterSPDEff.cxx:1652 AliITSTrackleterSPDEff.cxx:1653 AliITSTrackleterSPDEff.cxx:1654 AliITSTrackleterSPDEff.cxx:1655 AliITSTrackleterSPDEff.cxx:1656 AliITSTrackleterSPDEff.cxx:1657 AliITSTrackleterSPDEff.cxx:1658 AliITSTrackleterSPDEff.cxx:1659 AliITSTrackleterSPDEff.cxx:1660 AliITSTrackleterSPDEff.cxx:1661 AliITSTrackleterSPDEff.cxx:1662 AliITSTrackleterSPDEff.cxx:1663 AliITSTrackleterSPDEff.cxx:1664 AliITSTrackleterSPDEff.cxx:1665 AliITSTrackleterSPDEff.cxx:1666 AliITSTrackleterSPDEff.cxx:1667 AliITSTrackleterSPDEff.cxx:1668 AliITSTrackleterSPDEff.cxx:1669 AliITSTrackleterSPDEff.cxx:1670 AliITSTrackleterSPDEff.cxx:1671 AliITSTrackleterSPDEff.cxx:1672 AliITSTrackleterSPDEff.cxx:1673 AliITSTrackleterSPDEff.cxx:1674 AliITSTrackleterSPDEff.cxx:1675 AliITSTrackleterSPDEff.cxx:1676 AliITSTrackleterSPDEff.cxx:1677 AliITSTrackleterSPDEff.cxx:1678 AliITSTrackleterSPDEff.cxx:1679 AliITSTrackleterSPDEff.cxx:1680 AliITSTrackleterSPDEff.cxx:1681 AliITSTrackleterSPDEff.cxx:1682 AliITSTrackleterSPDEff.cxx:1683 AliITSTrackleterSPDEff.cxx:1684 AliITSTrackleterSPDEff.cxx:1685 AliITSTrackleterSPDEff.cxx:1686 AliITSTrackleterSPDEff.cxx:1687 AliITSTrackleterSPDEff.cxx:1688 AliITSTrackleterSPDEff.cxx:1689 AliITSTrackleterSPDEff.cxx:1690 AliITSTrackleterSPDEff.cxx:1691 AliITSTrackleterSPDEff.cxx:1692 AliITSTrackleterSPDEff.cxx:1693 AliITSTrackleterSPDEff.cxx:1694 AliITSTrackleterSPDEff.cxx:1695 AliITSTrackleterSPDEff.cxx:1696 AliITSTrackleterSPDEff.cxx:1697 AliITSTrackleterSPDEff.cxx:1698 AliITSTrackleterSPDEff.cxx:1699 AliITSTrackleterSPDEff.cxx:1700 AliITSTrackleterSPDEff.cxx:1701 AliITSTrackleterSPDEff.cxx:1702 AliITSTrackleterSPDEff.cxx:1703 AliITSTrackleterSPDEff.cxx:1704 AliITSTrackleterSPDEff.cxx:1705 AliITSTrackleterSPDEff.cxx:1706 AliITSTrackleterSPDEff.cxx:1707 AliITSTrackleterSPDEff.cxx:1708 AliITSTrackleterSPDEff.cxx:1709 AliITSTrackleterSPDEff.cxx:1710 AliITSTrackleterSPDEff.cxx:1711 AliITSTrackleterSPDEff.cxx:1712 AliITSTrackleterSPDEff.cxx:1713 AliITSTrackleterSPDEff.cxx:1714 AliITSTrackleterSPDEff.cxx:1715 AliITSTrackleterSPDEff.cxx:1716 AliITSTrackleterSPDEff.cxx:1717 AliITSTrackleterSPDEff.cxx:1718 AliITSTrackleterSPDEff.cxx:1719 AliITSTrackleterSPDEff.cxx:1720 AliITSTrackleterSPDEff.cxx:1721 AliITSTrackleterSPDEff.cxx:1722 AliITSTrackleterSPDEff.cxx:1723 AliITSTrackleterSPDEff.cxx:1724 AliITSTrackleterSPDEff.cxx:1725 AliITSTrackleterSPDEff.cxx:1726 AliITSTrackleterSPDEff.cxx:1727 AliITSTrackleterSPDEff.cxx:1728 AliITSTrackleterSPDEff.cxx:1729 AliITSTrackleterSPDEff.cxx:1730 AliITSTrackleterSPDEff.cxx:1731 AliITSTrackleterSPDEff.cxx:1732 AliITSTrackleterSPDEff.cxx:1733 AliITSTrackleterSPDEff.cxx:1734 AliITSTrackleterSPDEff.cxx:1735 AliITSTrackleterSPDEff.cxx:1736 AliITSTrackleterSPDEff.cxx:1737 AliITSTrackleterSPDEff.cxx:1738 AliITSTrackleterSPDEff.cxx:1739 AliITSTrackleterSPDEff.cxx:1740 AliITSTrackleterSPDEff.cxx:1741 AliITSTrackleterSPDEff.cxx:1742 AliITSTrackleterSPDEff.cxx:1743 AliITSTrackleterSPDEff.cxx:1744 AliITSTrackleterSPDEff.cxx:1745 AliITSTrackleterSPDEff.cxx:1746 AliITSTrackleterSPDEff.cxx:1747 AliITSTrackleterSPDEff.cxx:1748 AliITSTrackleterSPDEff.cxx:1749 AliITSTrackleterSPDEff.cxx:1750 AliITSTrackleterSPDEff.cxx:1751 AliITSTrackleterSPDEff.cxx:1752 AliITSTrackleterSPDEff.cxx:1753 AliITSTrackleterSPDEff.cxx:1754 AliITSTrackleterSPDEff.cxx:1755 AliITSTrackleterSPDEff.cxx:1756 AliITSTrackleterSPDEff.cxx:1757 AliITSTrackleterSPDEff.cxx:1758 AliITSTrackleterSPDEff.cxx:1759 AliITSTrackleterSPDEff.cxx:1760 AliITSTrackleterSPDEff.cxx:1761 AliITSTrackleterSPDEff.cxx:1762 AliITSTrackleterSPDEff.cxx:1763 AliITSTrackleterSPDEff.cxx:1764 AliITSTrackleterSPDEff.cxx:1765 AliITSTrackleterSPDEff.cxx:1766 AliITSTrackleterSPDEff.cxx:1767 AliITSTrackleterSPDEff.cxx:1768 AliITSTrackleterSPDEff.cxx:1769 AliITSTrackleterSPDEff.cxx:1770 AliITSTrackleterSPDEff.cxx:1771 AliITSTrackleterSPDEff.cxx:1772 AliITSTrackleterSPDEff.cxx:1773 AliITSTrackleterSPDEff.cxx:1774 AliITSTrackleterSPDEff.cxx:1775 AliITSTrackleterSPDEff.cxx:1776 AliITSTrackleterSPDEff.cxx:1777 AliITSTrackleterSPDEff.cxx:1778 AliITSTrackleterSPDEff.cxx:1779 AliITSTrackleterSPDEff.cxx:1780 AliITSTrackleterSPDEff.cxx:1781 AliITSTrackleterSPDEff.cxx:1782 AliITSTrackleterSPDEff.cxx:1783 AliITSTrackleterSPDEff.cxx:1784 AliITSTrackleterSPDEff.cxx:1785 AliITSTrackleterSPDEff.cxx:1786 AliITSTrackleterSPDEff.cxx:1787 AliITSTrackleterSPDEff.cxx:1788 AliITSTrackleterSPDEff.cxx:1789 AliITSTrackleterSPDEff.cxx:1790 AliITSTrackleterSPDEff.cxx:1791 AliITSTrackleterSPDEff.cxx:1792 AliITSTrackleterSPDEff.cxx:1793 AliITSTrackleterSPDEff.cxx:1794 AliITSTrackleterSPDEff.cxx:1795 AliITSTrackleterSPDEff.cxx:1796 AliITSTrackleterSPDEff.cxx:1797 AliITSTrackleterSPDEff.cxx:1798 AliITSTrackleterSPDEff.cxx:1799 AliITSTrackleterSPDEff.cxx:1800 AliITSTrackleterSPDEff.cxx:1801 AliITSTrackleterSPDEff.cxx:1802 AliITSTrackleterSPDEff.cxx:1803 AliITSTrackleterSPDEff.cxx:1804 AliITSTrackleterSPDEff.cxx:1805 AliITSTrackleterSPDEff.cxx:1806 AliITSTrackleterSPDEff.cxx:1807 AliITSTrackleterSPDEff.cxx:1808 AliITSTrackleterSPDEff.cxx:1809 AliITSTrackleterSPDEff.cxx:1810 AliITSTrackleterSPDEff.cxx:1811 AliITSTrackleterSPDEff.cxx:1812 AliITSTrackleterSPDEff.cxx:1813 AliITSTrackleterSPDEff.cxx:1814 AliITSTrackleterSPDEff.cxx:1815 AliITSTrackleterSPDEff.cxx:1816 AliITSTrackleterSPDEff.cxx:1817 AliITSTrackleterSPDEff.cxx:1818 AliITSTrackleterSPDEff.cxx:1819 AliITSTrackleterSPDEff.cxx:1820 AliITSTrackleterSPDEff.cxx:1821 AliITSTrackleterSPDEff.cxx:1822 AliITSTrackleterSPDEff.cxx:1823 AliITSTrackleterSPDEff.cxx:1824 AliITSTrackleterSPDEff.cxx:1825 AliITSTrackleterSPDEff.cxx:1826 AliITSTrackleterSPDEff.cxx:1827 AliITSTrackleterSPDEff.cxx:1828 AliITSTrackleterSPDEff.cxx:1829 AliITSTrackleterSPDEff.cxx:1830 AliITSTrackleterSPDEff.cxx:1831 AliITSTrackleterSPDEff.cxx:1832 AliITSTrackleterSPDEff.cxx:1833 AliITSTrackleterSPDEff.cxx:1834 AliITSTrackleterSPDEff.cxx:1835 AliITSTrackleterSPDEff.cxx:1836 AliITSTrackleterSPDEff.cxx:1837 AliITSTrackleterSPDEff.cxx:1838 AliITSTrackleterSPDEff.cxx:1839 AliITSTrackleterSPDEff.cxx:1840 AliITSTrackleterSPDEff.cxx:1841 AliITSTrackleterSPDEff.cxx:1842 AliITSTrackleterSPDEff.cxx:1843 AliITSTrackleterSPDEff.cxx:1844 AliITSTrackleterSPDEff.cxx:1845 AliITSTrackleterSPDEff.cxx:1846 AliITSTrackleterSPDEff.cxx:1847 AliITSTrackleterSPDEff.cxx:1848 AliITSTrackleterSPDEff.cxx:1849 AliITSTrackleterSPDEff.cxx:1850 AliITSTrackleterSPDEff.cxx:1851 AliITSTrackleterSPDEff.cxx:1852 AliITSTrackleterSPDEff.cxx:1853 AliITSTrackleterSPDEff.cxx:1854 AliITSTrackleterSPDEff.cxx:1855 AliITSTrackleterSPDEff.cxx:1856 AliITSTrackleterSPDEff.cxx:1857 AliITSTrackleterSPDEff.cxx:1858 AliITSTrackleterSPDEff.cxx:1859 AliITSTrackleterSPDEff.cxx:1860 AliITSTrackleterSPDEff.cxx:1861 AliITSTrackleterSPDEff.cxx:1862 AliITSTrackleterSPDEff.cxx:1863 AliITSTrackleterSPDEff.cxx:1864 AliITSTrackleterSPDEff.cxx:1865 AliITSTrackleterSPDEff.cxx:1866 AliITSTrackleterSPDEff.cxx:1867 AliITSTrackleterSPDEff.cxx:1868 AliITSTrackleterSPDEff.cxx:1869 AliITSTrackleterSPDEff.cxx:1870 AliITSTrackleterSPDEff.cxx:1871 AliITSTrackleterSPDEff.cxx:1872 AliITSTrackleterSPDEff.cxx:1873 AliITSTrackleterSPDEff.cxx:1874 AliITSTrackleterSPDEff.cxx:1875 AliITSTrackleterSPDEff.cxx:1876 AliITSTrackleterSPDEff.cxx:1877 AliITSTrackleterSPDEff.cxx:1878 AliITSTrackleterSPDEff.cxx:1879 AliITSTrackleterSPDEff.cxx:1880 AliITSTrackleterSPDEff.cxx:1881 AliITSTrackleterSPDEff.cxx:1882 AliITSTrackleterSPDEff.cxx:1883 AliITSTrackleterSPDEff.cxx:1884 AliITSTrackleterSPDEff.cxx:1885 AliITSTrackleterSPDEff.cxx:1886 AliITSTrackleterSPDEff.cxx:1887 AliITSTrackleterSPDEff.cxx:1888 AliITSTrackleterSPDEff.cxx:1889 AliITSTrackleterSPDEff.cxx:1890 AliITSTrackleterSPDEff.cxx:1891 AliITSTrackleterSPDEff.cxx:1892 AliITSTrackleterSPDEff.cxx:1893 AliITSTrackleterSPDEff.cxx:1894 AliITSTrackleterSPDEff.cxx:1895 AliITSTrackleterSPDEff.cxx:1896 AliITSTrackleterSPDEff.cxx:1897 AliITSTrackleterSPDEff.cxx:1898 AliITSTrackleterSPDEff.cxx:1899 AliITSTrackleterSPDEff.cxx:1900 AliITSTrackleterSPDEff.cxx:1901 AliITSTrackleterSPDEff.cxx:1902 AliITSTrackleterSPDEff.cxx:1903 AliITSTrackleterSPDEff.cxx:1904 AliITSTrackleterSPDEff.cxx:1905 AliITSTrackleterSPDEff.cxx:1906 AliITSTrackleterSPDEff.cxx:1907 AliITSTrackleterSPDEff.cxx:1908 AliITSTrackleterSPDEff.cxx:1909 AliITSTrackleterSPDEff.cxx:1910 AliITSTrackleterSPDEff.cxx:1911 AliITSTrackleterSPDEff.cxx:1912 AliITSTrackleterSPDEff.cxx:1913 AliITSTrackleterSPDEff.cxx:1914 AliITSTrackleterSPDEff.cxx:1915 AliITSTrackleterSPDEff.cxx:1916 AliITSTrackleterSPDEff.cxx:1917 AliITSTrackleterSPDEff.cxx:1918 AliITSTrackleterSPDEff.cxx:1919 AliITSTrackleterSPDEff.cxx:1920 AliITSTrackleterSPDEff.cxx:1921 AliITSTrackleterSPDEff.cxx:1922 AliITSTrackleterSPDEff.cxx:1923 AliITSTrackleterSPDEff.cxx:1924 AliITSTrackleterSPDEff.cxx:1925 AliITSTrackleterSPDEff.cxx:1926 AliITSTrackleterSPDEff.cxx:1927 AliITSTrackleterSPDEff.cxx:1928 AliITSTrackleterSPDEff.cxx:1929 AliITSTrackleterSPDEff.cxx:1930 AliITSTrackleterSPDEff.cxx:1931 AliITSTrackleterSPDEff.cxx:1932 AliITSTrackleterSPDEff.cxx:1933 AliITSTrackleterSPDEff.cxx:1934 AliITSTrackleterSPDEff.cxx:1935 AliITSTrackleterSPDEff.cxx:1936 AliITSTrackleterSPDEff.cxx:1937 AliITSTrackleterSPDEff.cxx:1938 AliITSTrackleterSPDEff.cxx:1939 AliITSTrackleterSPDEff.cxx:1940 AliITSTrackleterSPDEff.cxx:1941 AliITSTrackleterSPDEff.cxx:1942 AliITSTrackleterSPDEff.cxx:1943 AliITSTrackleterSPDEff.cxx:1944 AliITSTrackleterSPDEff.cxx:1945 AliITSTrackleterSPDEff.cxx:1946 AliITSTrackleterSPDEff.cxx:1947 AliITSTrackleterSPDEff.cxx:1948 AliITSTrackleterSPDEff.cxx:1949 AliITSTrackleterSPDEff.cxx:1950 AliITSTrackleterSPDEff.cxx:1951 AliITSTrackleterSPDEff.cxx:1952 AliITSTrackleterSPDEff.cxx:1953 AliITSTrackleterSPDEff.cxx:1954 AliITSTrackleterSPDEff.cxx:1955 AliITSTrackleterSPDEff.cxx:1956 AliITSTrackleterSPDEff.cxx:1957 AliITSTrackleterSPDEff.cxx:1958 AliITSTrackleterSPDEff.cxx:1959 AliITSTrackleterSPDEff.cxx:1960 AliITSTrackleterSPDEff.cxx:1961 AliITSTrackleterSPDEff.cxx:1962 AliITSTrackleterSPDEff.cxx:1963 AliITSTrackleterSPDEff.cxx:1964 AliITSTrackleterSPDEff.cxx:1965 AliITSTrackleterSPDEff.cxx:1966 AliITSTrackleterSPDEff.cxx:1967 AliITSTrackleterSPDEff.cxx:1968 AliITSTrackleterSPDEff.cxx:1969 AliITSTrackleterSPDEff.cxx:1970 AliITSTrackleterSPDEff.cxx:1971 AliITSTrackleterSPDEff.cxx:1972 AliITSTrackleterSPDEff.cxx:1973 AliITSTrackleterSPDEff.cxx:1974 AliITSTrackleterSPDEff.cxx:1975 AliITSTrackleterSPDEff.cxx:1976 AliITSTrackleterSPDEff.cxx:1977 AliITSTrackleterSPDEff.cxx:1978 AliITSTrackleterSPDEff.cxx:1979 AliITSTrackleterSPDEff.cxx:1980 AliITSTrackleterSPDEff.cxx:1981 AliITSTrackleterSPDEff.cxx:1982 AliITSTrackleterSPDEff.cxx:1983 AliITSTrackleterSPDEff.cxx:1984 AliITSTrackleterSPDEff.cxx:1985 AliITSTrackleterSPDEff.cxx:1986 AliITSTrackleterSPDEff.cxx:1987 AliITSTrackleterSPDEff.cxx:1988 AliITSTrackleterSPDEff.cxx:1989 AliITSTrackleterSPDEff.cxx:1990 AliITSTrackleterSPDEff.cxx:1991 AliITSTrackleterSPDEff.cxx:1992 AliITSTrackleterSPDEff.cxx:1993 AliITSTrackleterSPDEff.cxx:1994 AliITSTrackleterSPDEff.cxx:1995 AliITSTrackleterSPDEff.cxx:1996 AliITSTrackleterSPDEff.cxx:1997 AliITSTrackleterSPDEff.cxx:1998 AliITSTrackleterSPDEff.cxx:1999 AliITSTrackleterSPDEff.cxx:2000 AliITSTrackleterSPDEff.cxx:2001 AliITSTrackleterSPDEff.cxx:2002 AliITSTrackleterSPDEff.cxx:2003 AliITSTrackleterSPDEff.cxx:2004 AliITSTrackleterSPDEff.cxx:2005 AliITSTrackleterSPDEff.cxx:2006 AliITSTrackleterSPDEff.cxx:2007 AliITSTrackleterSPDEff.cxx:2008 AliITSTrackleterSPDEff.cxx:2009 AliITSTrackleterSPDEff.cxx:2010 AliITSTrackleterSPDEff.cxx:2011 AliITSTrackleterSPDEff.cxx:2012 AliITSTrackleterSPDEff.cxx:2013 AliITSTrackleterSPDEff.cxx:2014 AliITSTrackleterSPDEff.cxx:2015 AliITSTrackleterSPDEff.cxx:2016 AliITSTrackleterSPDEff.cxx:2017 AliITSTrackleterSPDEff.cxx:2018 AliITSTrackleterSPDEff.cxx:2019 AliITSTrackleterSPDEff.cxx:2020 AliITSTrackleterSPDEff.cxx:2021 AliITSTrackleterSPDEff.cxx:2022 AliITSTrackleterSPDEff.cxx:2023 AliITSTrackleterSPDEff.cxx:2024 AliITSTrackleterSPDEff.cxx:2025 AliITSTrackleterSPDEff.cxx:2026 AliITSTrackleterSPDEff.cxx:2027 AliITSTrackleterSPDEff.cxx:2028 AliITSTrackleterSPDEff.cxx:2029 AliITSTrackleterSPDEff.cxx:2030 AliITSTrackleterSPDEff.cxx:2031 AliITSTrackleterSPDEff.cxx:2032 AliITSTrackleterSPDEff.cxx:2033 AliITSTrackleterSPDEff.cxx:2034 AliITSTrackleterSPDEff.cxx:2035 AliITSTrackleterSPDEff.cxx:2036 AliITSTrackleterSPDEff.cxx:2037 AliITSTrackleterSPDEff.cxx:2038 AliITSTrackleterSPDEff.cxx:2039 AliITSTrackleterSPDEff.cxx:2040 AliITSTrackleterSPDEff.cxx:2041 AliITSTrackleterSPDEff.cxx:2042 AliITSTrackleterSPDEff.cxx:2043 AliITSTrackleterSPDEff.cxx:2044 AliITSTrackleterSPDEff.cxx:2045 AliITSTrackleterSPDEff.cxx:2046 AliITSTrackleterSPDEff.cxx:2047 AliITSTrackleterSPDEff.cxx:2048 AliITSTrackleterSPDEff.cxx:2049 AliITSTrackleterSPDEff.cxx:2050 AliITSTrackleterSPDEff.cxx:2051 AliITSTrackleterSPDEff.cxx:2052 AliITSTrackleterSPDEff.cxx:2053 AliITSTrackleterSPDEff.cxx:2054 AliITSTrackleterSPDEff.cxx:2055 AliITSTrackleterSPDEff.cxx:2056 AliITSTrackleterSPDEff.cxx:2057 AliITSTrackleterSPDEff.cxx:2058 AliITSTrackleterSPDEff.cxx:2059 AliITSTrackleterSPDEff.cxx:2060 AliITSTrackleterSPDEff.cxx:2061 AliITSTrackleterSPDEff.cxx:2062 AliITSTrackleterSPDEff.cxx:2063 AliITSTrackleterSPDEff.cxx:2064 AliITSTrackleterSPDEff.cxx:2065 AliITSTrackleterSPDEff.cxx:2066 AliITSTrackleterSPDEff.cxx:2067 AliITSTrackleterSPDEff.cxx:2068 AliITSTrackleterSPDEff.cxx:2069 AliITSTrackleterSPDEff.cxx:2070 AliITSTrackleterSPDEff.cxx:2071 AliITSTrackleterSPDEff.cxx:2072 AliITSTrackleterSPDEff.cxx:2073 AliITSTrackleterSPDEff.cxx:2074 AliITSTrackleterSPDEff.cxx:2075 AliITSTrackleterSPDEff.cxx:2076 AliITSTrackleterSPDEff.cxx:2077 AliITSTrackleterSPDEff.cxx:2078 AliITSTrackleterSPDEff.cxx:2079 AliITSTrackleterSPDEff.cxx:2080 AliITSTrackleterSPDEff.cxx:2081 AliITSTrackleterSPDEff.cxx:2082 AliITSTrackleterSPDEff.cxx:2083 AliITSTrackleterSPDEff.cxx:2084 AliITSTrackleterSPDEff.cxx:2085 AliITSTrackleterSPDEff.cxx:2086 AliITSTrackleterSPDEff.cxx:2087 AliITSTrackleterSPDEff.cxx:2088 AliITSTrackleterSPDEff.cxx:2089 AliITSTrackleterSPDEff.cxx:2090 AliITSTrackleterSPDEff.cxx:2091 AliITSTrackleterSPDEff.cxx:2092 AliITSTrackleterSPDEff.cxx:2093 AliITSTrackleterSPDEff.cxx:2094 AliITSTrackleterSPDEff.cxx:2095 AliITSTrackleterSPDEff.cxx:2096 AliITSTrackleterSPDEff.cxx:2097 AliITSTrackleterSPDEff.cxx:2098 AliITSTrackleterSPDEff.cxx:2099 AliITSTrackleterSPDEff.cxx:2100 AliITSTrackleterSPDEff.cxx:2101 AliITSTrackleterSPDEff.cxx:2102 AliITSTrackleterSPDEff.cxx:2103 AliITSTrackleterSPDEff.cxx:2104 AliITSTrackleterSPDEff.cxx:2105 AliITSTrackleterSPDEff.cxx:2106 AliITSTrackleterSPDEff.cxx:2107 AliITSTrackleterSPDEff.cxx:2108 AliITSTrackleterSPDEff.cxx:2109 AliITSTrackleterSPDEff.cxx:2110 AliITSTrackleterSPDEff.cxx:2111 AliITSTrackleterSPDEff.cxx:2112 AliITSTrackleterSPDEff.cxx:2113 AliITSTrackleterSPDEff.cxx:2114 AliITSTrackleterSPDEff.cxx:2115 AliITSTrackleterSPDEff.cxx:2116 AliITSTrackleterSPDEff.cxx:2117 AliITSTrackleterSPDEff.cxx:2118 AliITSTrackleterSPDEff.cxx:2119 AliITSTrackleterSPDEff.cxx:2120 AliITSTrackleterSPDEff.cxx:2121 AliITSTrackleterSPDEff.cxx:2122 AliITSTrackleterSPDEff.cxx:2123 AliITSTrackleterSPDEff.cxx:2124 AliITSTrackleterSPDEff.cxx:2125 AliITSTrackleterSPDEff.cxx:2126 AliITSTrackleterSPDEff.cxx:2127 AliITSTrackleterSPDEff.cxx:2128 AliITSTrackleterSPDEff.cxx:2129 AliITSTrackleterSPDEff.cxx:2130 AliITSTrackleterSPDEff.cxx:2131 AliITSTrackleterSPDEff.cxx:2132 AliITSTrackleterSPDEff.cxx:2133 AliITSTrackleterSPDEff.cxx:2134 AliITSTrackleterSPDEff.cxx:2135 AliITSTrackleterSPDEff.cxx:2136 AliITSTrackleterSPDEff.cxx:2137 AliITSTrackleterSPDEff.cxx:2138 AliITSTrackleterSPDEff.cxx:2139 AliITSTrackleterSPDEff.cxx:2140 AliITSTrackleterSPDEff.cxx:2141 AliITSTrackleterSPDEff.cxx:2142 AliITSTrackleterSPDEff.cxx:2143 AliITSTrackleterSPDEff.cxx:2144 AliITSTrackleterSPDEff.cxx:2145 AliITSTrackleterSPDEff.cxx:2146 AliITSTrackleterSPDEff.cxx:2147 AliITSTrackleterSPDEff.cxx:2148 AliITSTrackleterSPDEff.cxx:2149 AliITSTrackleterSPDEff.cxx:2150 AliITSTrackleterSPDEff.cxx:2151 AliITSTrackleterSPDEff.cxx:2152 AliITSTrackleterSPDEff.cxx:2153 AliITSTrackleterSPDEff.cxx:2154