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



////////////////////////////////////////////////////////////////////////////
//         Implementation of the ITS SDD fast clusterer  class            //
//                                                                        //
//   Origin: Simone Capodicasa, Universita e INFN, capodica@to.infn.it    //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

#include <vector>
#include <TClonesArray.h>
#include <TBits.h>
#include <TMath.h>
#include <TH2F.h>
#include <TFile.h>
#include "AliITSClusterFinderSDDfast.h"
#include "AliITSRecPoint.h"
#include "AliITSRecPointContainer.h"
#include "AliITSDetTypeRec.h"
#include "AliRawReader.h"
#include "AliITSRawStreamSDD.h"
#include "AliITSRawStreamSDDCompressed.h"
#include "AliITSCalibrationSDD.h"
#include "AliITSresponseSDD.h"
#include "AliITSDetTypeRec.h"
#include "AliITSReconstructor.h"
#include "AliITSsegmentationSDD.h"
#include "AliITSdigitSDD.h"
#include "AliITSgeomTGeo.h"

ClassImp(AliITSClusterFinderSDDfast)

AliITSClusterFinderSDDfast::AliITSClusterFinderSDDfast(AliITSDetTypeRec* dettyp):AliITSClusterFinder(dettyp),
  fNAnodes(0),
  fNTimeBins(0),
  fNZbins(0),
  fNXbins(0),
  fDDLBins(),
  fCutOnPeakLoose(0.),
  fCutOnPeakTight(0.),
  fMaxDrTimeForTightCut(0.)
{
  //Default constructor
  fNAnodes = GetSeg()->NpzHalf();
  fNZbins = fNAnodes+2;
  fNTimeBins = GetSeg()->Npx();
  fNXbins = fNTimeBins+2;
  AliDebug(2,Form("Cells in SDD cluster finder: Andoes=%d  TimeBins=%d",fNAnodes,fNTimeBins));
  SetPeakSelection(15.,30.,2000.);
  fDDLBins.resize(kHybridsPerDDL);
}


//______________________________________________________________________
AliITSClusterFinderSDDfast::~AliITSClusterFinderSDDfast()
{
  //Default destructor
}

//______________________________________________________________________
void AliITSClusterFinderSDDfast::FindRawClusters(Int_t mod){

  //Find clusters 
  SetModule(mod);
  FindClustersSDD(fDigits);

}

//______________________________________________________________________
void AliITSClusterFinderSDDfast::FindClustersSDD(TClonesArray *digits){

  std::vector<int> bins0;
  std::vector<int> bins1;
  const Int_t kMapDim=fNZbins*fNXbins/32;
  Int_t map0[kMapDim];
  Int_t map1[kMapDim];
  for(Int_t j=0;j<kMapDim;++j){
    map0[j]=map1[j]=0;
  }
  AliITSCalibrationSDD* cal = (AliITSCalibrationSDD*)GetResp(fModule);
  if(cal==0){
    AliError(Form("Calibration object not present for SDD module %d\n",fModule));
    return;
  }

  AliITSdigitSDD *d=0;
  Int_t i, ndigits=digits->GetEntriesFast();
  for (i=0; i<ndigits; i++){
    d=(AliITSdigitSDD*)digits->UncheckedAt(i);
    Int_t ian=d->GetCoord1();
    Int_t itb=d->GetCoord2();
    Float_t gain=cal->GetChannelGain(ian)/fDetTypeRec->GetAverageGainSDD();
    Float_t charge=d->GetSignal(); // returns expanded signal
    // (10 bit, low threshold already added)
    Float_t baseline = cal->GetBaseline(ian);
    if(charge>baseline) charge-=baseline;
    else charge=0;

    if(gain>0.){ // Bad channels have gain=0.
      charge/=gain;
      if(charge<cal->GetThresholdAnode(ian)) continue;
      Int_t q=(Int_t)(charge+0.5);
      Int_t y=itb+1;
      Int_t z=ian+1;
      Int_t iindex=y*fNZbins+z;
      Float_t noise=cal->GetNoiseAfterElectronics(ian)*2.2; // applies zero suppression using the measured noise of each anode. Threshold values from ALICE-INT-1999-28 V10
      if (z<=fNAnodes){
        if(q>noise){
          bins0.push_back(iindex);
          bins0.push_back(q);
          bins0.push_back(0);
          bins0.push_back(i);
          map0[iindex/32]|=(1<<(iindex%32));
        }
      }
      else{
        z-=fNAnodes;
        if(q>noise){
          iindex=y*fNZbins+z;
          bins1.push_back(iindex);
          bins1.push_back(q);
          bins1.push_back(0);
          bins1.push_back(i);
          map1[iindex/32]|=(1<<(iindex%32));
        }
      }
    }
  }
  FindClustersSDD(bins0, bins1, map0, map1, digits);
}

//______________________________________________________________________
void AliITSClusterFinderSDDfast::FindClustersSDD(std::vector<int>& bins0, std::vector<int>& bins1, const Int_t map0[], const Int_t map1[], TClonesArray *digits, TClonesArray *clusters, Int_t jitter){

  static AliITSRecoParam *repa = NULL;
  if(!repa){
    repa = (AliITSRecoParam*) AliITSReconstructor::GetRecoParam();
    if(!repa){
      repa = AliITSRecoParam::GetHighFluxParam();
      AliWarning("Using default AliITSRecoParam class");
    }
  }
  const TGeoHMatrix *mT2L=AliITSgeomTGeo::GetTracking2LocalMatrix(fModule);
  AliITSCalibrationSDD* cal = (AliITSCalibrationSDD*)GetResp(fModule);
  if(cal==0){
    AliError(Form("Calibration object not present for SDD module %d\n",fModule));
    return;
  }

  TClonesArray &cl=*clusters;
  Int_t nrp=0;
  for (Int_t s=0; s<2; s++){
    Int_t *bins;
    unsigned int binssize;
    const Int_t* map;
    if(s==0){
      binssize=bins0.size();
      bins = &bins0[0];
      map=map0;
    }
    if(s==1){
      binssize=bins1.size();
      bins=&bins1[0];
      map=map1;
    }

    const Int_t rresto=fNZbins-1;
    Int_t cid=0;
    for(std::vector<int>::size_type i=0;i<binssize;i+=4){
      if(!bins[i+2])
	bins[i+2]=++cid;
      Int_t me=bins[i];
      Int_t resto=me%fNZbins;
      if(resto==rresto){
        Int_t idxs[1]={me+fNZbins};
        for(Int_t k=0;k<1;++k)
	  if(map[idxs[k]/32]&(1<<(idxs[k]%32)))
	    for(std::vector<int>::size_type j=i+4;j<binssize;j+=4)
	      if(bins[j]==idxs[k]){
		bins[j+2]=bins[i+2];
		break;
	      }
      }
      else{
        Int_t idxs[2]={me+1,me+fNZbins};
        for(int k=0;k<2;++k)
	  if(map[idxs[k]/32]&(1<<(idxs[k]%32)))
	    for(std::vector<int>::size_type j=i+4;j<binssize;j+=4)
	      if(bins[j]==idxs[k]){
		bins[j+2]=bins[i+2];
		break;
	      }
      }
    }
    for(std::vector<int>::size_type i=0;i<binssize;i+=4){
      Int_t me=bins[i];
      Int_t resto=me%fNZbins;
      if(resto==fNZbins-1){
        Int_t idxs[1]={me+fNZbins};
        Int_t myid=bins[i+2];
        for(Int_t l=0;l<1;++l){
          if(map[idxs[l]/32]&(1<<(idxs[l]%32)))
	    for(std::vector<int>::size_type j=i+4;j<binssize;j+=4){
	      if(bins[j]==idxs[l]){
		Int_t hisid=bins[j+2];
		if(myid!=hisid){
		  for(std::vector<int>::size_type k=2;k<binssize;k+=4)
		    if(bins[k]==hisid)
		      bins[k]=myid;
		}
		break;
	      }
	    }
        }
      }
      else{
        Int_t idxs[2]={me+1,me+fNZbins};
        Int_t myid=bins[i+2];
        for(Int_t l=0;l<2;++l){
          if(map[idxs[l]/32]&(1<<(idxs[l]%32)))
	    for(std::vector<int>::size_type j=i+4;j<binssize;j+=4){
	      if(bins[j]==idxs[l]){
		Int_t hisid=bins[j+2];
		if(myid!=hisid){
		  for(std::vector<int>::size_type k=2;k<binssize;k+=4)
		    if(bins[k]==hisid)
		      bins[k]=myid;
		}
		break;
	      }
	    }
        }
      }
    }

    Int_t recp[cid][12];
    for(Int_t i=0;i<cid;++i)
      for(Int_t j=0;j<12;++j)
	recp[i][j]=0;

    Int_t kplab[cid][10];
    for(Int_t i=0;i<cid;++i)
      for(Int_t j=0;j<10;++j)
	kplab[i][j]=-2;

    for(std::vector<int>::size_type i=0;i<binssize;i+=4){
      Int_t q=bins[i+1];
      Int_t me=bins[i+2]-1;
      Int_t z=bins[i]%fNZbins;
      Int_t x=bins[i]/fNZbins;
      recp[me][0]+=q;                   //sumq
      recp[me][1]+=z*q;                 //sumz
      recp[me][2]+=x*q;                 //sumx

#ifdef CSBASEDERROR
      recp[me][3]+=z*z*q;               //sigmaZ2
      recp[me][4]+=x*x*q;               //sigmaX2
#endif

      if(recp[me][5]==0){
        recp[me][6]=z;
        recp[me][7]=z;
        recp[me][8]=x;
        recp[me][9]=x;
        recp[me][10]=q;
        recp[me][11]=bins[i];
      }
      else{
        if(recp[me][6]<z) recp[me][6]=z;
        if(recp[me][7]>z) recp[me][7]=z;
        if(recp[me][8]<x) recp[me][8]=x;
        if(recp[me][9]>x) recp[me][9]=x;
        if(recp[me][10]<q){
          recp[me][10]=q;
          recp[me][11]=bins[i];
        }
      }

      if(digits){
        Int_t kplab2[10];
        for(Int_t ilab=0;ilab<10;++ilab)
	  kplab2[ilab]=kplab[me][ilab];
        AliITSdigitSDD* d=(AliITSdigitSDD*)digits->UncheckedAt(bins[i+3]);
        for (Int_t itrack=0;itrack<10;itrack++){
          Int_t track = (d->GetTracks())[itrack];
          if (track>=0) {
            AddLabel(kplab2, track);
          }
        }
        for(Int_t ilab=0;ilab<10;++ilab)
	  kplab[me][ilab]=kplab2[ilab];
      }
      ++recp[me][5];                    //nPiInClu
    }

    for(Int_t i=0;i<cid;++i){
      if(recp[i][5]==0) continue;
      if(recp[i][5]==1) continue;

      Float_t q=recp[i][0];

      Int_t clSizAnode=recp[i][6]-recp[i][7]+1;
      Int_t clSizTb=recp[i][8]-recp[i][9]+1;
      if(repa->GetUseSDDClusterSizeSelection()){
        if(clSizTb==1) continue; // cut common mode noise spikes
        if(clSizAnode>5) continue; // cut common mode noise spikes
        if(clSizTb>10) continue; // cut clusters on noisy anodes
        if(cal->IsAMAt20MHz() && clSizTb>8) continue; // cut clusters on noisy anodes
      }

      Float_t zz=(Float_t)recp[i][1]/q;
      Float_t xx=(Float_t)recp[i][2]/q;

      AliITSresponseSDD* rsdd = fDetTypeRec->GetResponseSDD();

      Float_t zAnode=zz-0.5;  // to have anode in range 0.-255. and centered on the mid of the pitch
      Float_t timebin=xx-0.5;  // to have time bin in range 0.-255. amd centered on the mid of the bin

      if(s==1) zAnode+=fNAnodes;  // right side has anodes from 256. to 511.

      Float_t zdet=GetSeg()->GetLocalZFromAnode(zAnode);
      Float_t driftTimeUncorr=GetSeg()->GetDriftTimeFromTb(timebin)+jitter*rsdd->GetCarlosRXClockPeriod();
      Float_t driftTime=driftTimeUncorr-rsdd->GetTimeZero(fModule);

      if(driftTime<fMaxDrTimeForTightCut && recp[i][10]<fCutOnPeakTight) continue;
      if(recp[i][10]<fCutOnPeakLoose) continue;

      Float_t driftSpeed=cal->GetDriftSpeedAtAnode(zAnode) + rsdd->GetDeltaVDrift(fModule,zAnode>255);
      Float_t driftPathMicron=driftTime*driftSpeed;
      const Double_t kMicronTocm=1.0e-4;
      Float_t xdet=(driftPathMicron-GetSeg()->Dx())*kMicronTocm; // xdet is negative
      if(s==0) xdet=-xdet; // left side has positive local x

      if(repa->GetUseSDDCorrectionMaps()){
        Float_t corrx=0, corrz=0;
        cal->GetCorrections(zdet,xdet,corrz,corrx,GetSeg());
        zdet+=corrz;
        xdet+=corrx;
      }

      Double_t loc[3]={xdet,0.,zdet},trk[3]={0.,0.,0.};
      mT2L->MasterToLocal(loc,trk);
      xx=trk[1];
      zz=trk[2];

      q+=(driftTime*rsdd->GetADCvsDriftTime(fModule)); // correction for zero supp.
      q/=rsdd->GetADCtokeV(fModule);
      if(cal-> IsAMAt20MHz()) q*=2.; // account for 1/2 sampling freq.
      if(q<repa->GetMinClusterChargeSDD()) continue; // remove noise clusters

#ifdef  CSBASEDERROR
      Float_t hit[6]={xx,zz,recp[i][3],recp[i][4],q,0.};
#else
      Float_t hit[6]={xx, zz, 0.0030*0.0030, 0.0020*0.0020, q, 0.};
#endif

      Int_t  info[3]={clSizTb, clSizAnode, fNlayer[fModule]};

      Int_t kplab2[10];
      if(digits){
        for(Int_t ilab=0;ilab<10;++ilab)
	  if(kplab[i][ilab]!=-2)
	    kplab2[ilab]=kplab[i][ilab];
	  else
	    kplab2[ilab]=-2;
      }
      else{
        if(fRawID2ClusID) kplab2[0]=fNClusters+1; // RS: store clID+1 as a reference to the cluster
        for(Int_t ilab=1;ilab<10;++ilab)
	  kplab2[ilab]=-2;
      }
      if(digits) CheckLabels2(kplab2);
      kplab2[3]=fNdet[fModule];
      AliITSRecPoint cc(kplab2,hit,info);
      cc.SetType(101);
      cc.SetDriftTime(driftTimeUncorr);
      cc.SetDriftSide(s);
      cc.SetChargeRatio(recp[i][10]);
      if(clusters) new (cl[nrp]) AliITSRecPoint(cc);
      else {
        fDetTypeRec->AddRecPoint(cc);
      }
      ++nrp;
      ++fNClusters;
    }
  }
  AliDebug(2,Form("Clusters found on SDD module %d (unfolding %d) = %d\n",fModule,repa->GetUseUnfoldingInClusterFinderSDD(),nrp));
}

//______________________________________________________________________
void AliITSClusterFinderSDDfast::RawdataToClusters(AliRawReader* rawReader){
  //------------------------------------------------------------
  // This function creates ITS clusters from raw data
  //------------------------------------------------------------
  fNClusters = 0; //RS
  AliITSRawStream* inputSDD=AliITSRawStreamSDD::CreateRawStreamSDD(rawReader);
  AliDebug(1,Form("%s is used",inputSDD->ClassName()));

  AliITSDDLModuleMapSDD *ddlmap=(AliITSDDLModuleMapSDD*)fDetTypeRec->GetDDLModuleMapSDD();
  inputSDD->SetDDLModuleMap(ddlmap);
  for(Int_t iddl=0; iddl<AliITSDDLModuleMapSDD::GetNDDLs(); iddl++){
    for(Int_t icar=0; icar<AliITSDDLModuleMapSDD::GetNModPerDDL();icar++){
      Int_t iMod=ddlmap->GetModuleNumber(iddl,icar);
      if(iMod==-1) continue;
      AliITSCalibrationSDD* cal = (AliITSCalibrationSDD*)GetResp(iMod);
      if(cal==0){
        AliError(Form("Calibration object not present for SDD module %d\n",iMod));
        continue;
      }
      Bool_t isZeroSupp=cal->GetZeroSupp();
      if(isZeroSupp){
        for(Int_t iSid=0; iSid<2; iSid++) inputSDD->SetZeroSuppLowThreshold(iMod-240,iSid,cal->GetZSLowThreshold(iSid));
      }else{
        for(Int_t iSid=0; iSid<2; iSid++) inputSDD->SetZeroSuppLowThreshold(iMod-240,iSid,0);
      }
    }
  }
  FindClustersSDD(inputSDD);
  delete inputSDD;
}

void AliITSClusterFinderSDDfast::FindClustersSDD(AliITSRawStream* input){

  AliITSRecPointContainer* rpc = AliITSRecPointContainer::Instance();
  Int_t nClustersSDD=0;

  const Int_t kMapDim=fNZbins*fNXbins/32;
  Int_t mapsDDL[kHybridsPerDDL][kMapDim];
  for(Int_t i=0;i<kHybridsPerDDL;++i)
    for(Int_t j=0;j<kMapDim;++j)
      mapsDDL[i][j]=0;

  Int_t vectModId[kModulesPerDDL];
  for(Int_t iMod=0; iMod<kModulesPerDDL; iMod++) vectModId[iMod]=-1;
  // read raw data input stream
  int countRW = 0; //RS
  if (fRawID2ClusID) fRawID2ClusID->Reset(); //RS if array was provided, we shall store the rawID -> ClusterID

  while (input->Next()) {
    Int_t iModule = input->GetModuleID();
    if(iModule<0){
      AliWarning(Form("Invalid SDD module number %d\n", iModule));
      continue;
    }
    Int_t iCarlos=input->GetCarlosId();
    Int_t iSide=input->GetChannel();
    Int_t iHybrid=iCarlos*2+iSide;

    if(input->IsCompletedModule()){
      vectModId[iCarlos]=iModule; // store the module number
    }
    else if(input->IsCompletedDDL()){
      // when all data from a DDL was read, search for clusters
      Int_t jitter=input->GetJitter();
      for(Int_t iMod=0;iMod<kModulesPerDDL;iMod++){
        if(vectModId[iMod]>=0){
          fModule = vectModId[iMod];
          TClonesArray* clusters=rpc->UncheckedGetClusters(fModule);
	  std::vector<int> bins0;
	  std::vector<int> bins1;
          bins0=fDDLBins[iMod*2];
          bins1=fDDLBins[iMod*2+1];
	  Int_t map0[kMapDim];
	  Int_t map1[kMapDim];
	  for(Int_t j=0;j<kMapDim;++j){
	    map0[j]=map1[j]=0;
	  }
          for(Int_t i=0;i<kMapDim;++i){
            map0[i]=mapsDDL[iMod*2][i];
            map1[i]=mapsDDL[iMod*2+1][i];
          }

          FindClustersSDD(bins0, bins1, map0, map1, NULL, clusters,jitter);

          Int_t nClusters = clusters->GetEntriesFast();
          nClustersSDD += nClusters;
          vectModId[iMod]=-1;
        }
        for (Int_t s=0; s<2; s++){
          Int_t indexHyb=iMod*2+s;
	  for(std::vector<int>::size_type i=0;i<fDDLBins[indexHyb].size();++i)
	    fDDLBins[indexHyb].erase(fDDLBins[indexHyb].begin(),fDDLBins[indexHyb].end());
	  for(Int_t j=0;j<kMapDim;++j)
	    mapsDDL[indexHyb][j]=0;
        }
      }
    }
    else{ // fill the current digit into the bins array
      if(iHybrid<0 || iHybrid>=kHybridsPerDDL){
        AliWarning(Form("Invalid SDD hybrid number %d on module %d\n", iHybrid,iModule));
        continue;
      }
      AliITSCalibrationSDD* cal=(AliITSCalibrationSDD*)GetResp(iModule);
      if(cal==0){
        AliError(Form("Calibration object not present for SDD module %d\n",iModule));
        continue;
      }
      Float_t charge=input->GetSignal();
      Int_t chan=input->GetCoord1()+fNAnodes*iSide;
      Float_t gain=cal->GetChannelGain(chan)/fDetTypeRec->GetAverageGainSDD();;
      Float_t baseline=cal->GetBaseline(chan);
      if(charge>baseline) charge-=baseline;
      else charge=0;
      if(gain>0.){ // Bad channels have gain=0
        charge/=gain;
        if(charge>=cal->GetThresholdAnode(chan)){
          Int_t q=(Int_t)(charge+0.5);
          Int_t iz = input->GetCoord1();
          Int_t itb = input->GetCoord2();
	  Int_t ian=iz;
	  if(iSide==1)
	    ian+=256;
          Float_t noise=cal->GetNoiseAfterElectronics(ian)*2.2;  // applies zero suppression using the measured noise of each anode. Threshold values from ALICE-INT-1999-28 V10
          Int_t index=(itb+1)*fNZbins+(iz+1);
          if((itb<fNTimeBins) && (iz<fNAnodes)){
            if(q<noise) continue;
	    fDDLBins[iHybrid].push_back(index);
	    fDDLBins[iHybrid].push_back(q);
	    fDDLBins[iHybrid].push_back(0);
	    fDDLBins[iHybrid].push_back(countRW);
	    mapsDDL[iHybrid][index/32]|=(1<<(index%32));
          }
	  else{
            AliWarning(Form("Invalid SDD cell: Anode=%d   TimeBin=%d",iz,itb));
          }
        }
      }
    }
    countRW++; //RS
  }
  AliDebug(1,Form("found clusters in ITS SDD: %d", nClustersSDD));
}
 AliITSClusterFinderSDDfast.cxx:1
 AliITSClusterFinderSDDfast.cxx:2
 AliITSClusterFinderSDDfast.cxx:3
 AliITSClusterFinderSDDfast.cxx:4
 AliITSClusterFinderSDDfast.cxx:5
 AliITSClusterFinderSDDfast.cxx:6
 AliITSClusterFinderSDDfast.cxx:7
 AliITSClusterFinderSDDfast.cxx:8
 AliITSClusterFinderSDDfast.cxx:9
 AliITSClusterFinderSDDfast.cxx:10
 AliITSClusterFinderSDDfast.cxx:11
 AliITSClusterFinderSDDfast.cxx:12
 AliITSClusterFinderSDDfast.cxx:13
 AliITSClusterFinderSDDfast.cxx:14
 AliITSClusterFinderSDDfast.cxx:15
 AliITSClusterFinderSDDfast.cxx:16
 AliITSClusterFinderSDDfast.cxx:17
 AliITSClusterFinderSDDfast.cxx:18
 AliITSClusterFinderSDDfast.cxx:19
 AliITSClusterFinderSDDfast.cxx:20
 AliITSClusterFinderSDDfast.cxx:21
 AliITSClusterFinderSDDfast.cxx:22
 AliITSClusterFinderSDDfast.cxx:23
 AliITSClusterFinderSDDfast.cxx:24
 AliITSClusterFinderSDDfast.cxx:25
 AliITSClusterFinderSDDfast.cxx:26
 AliITSClusterFinderSDDfast.cxx:27
 AliITSClusterFinderSDDfast.cxx:28
 AliITSClusterFinderSDDfast.cxx:29
 AliITSClusterFinderSDDfast.cxx:30
 AliITSClusterFinderSDDfast.cxx:31
 AliITSClusterFinderSDDfast.cxx:32
 AliITSClusterFinderSDDfast.cxx:33
 AliITSClusterFinderSDDfast.cxx:34
 AliITSClusterFinderSDDfast.cxx:35
 AliITSClusterFinderSDDfast.cxx:36
 AliITSClusterFinderSDDfast.cxx:37
 AliITSClusterFinderSDDfast.cxx:38
 AliITSClusterFinderSDDfast.cxx:39
 AliITSClusterFinderSDDfast.cxx:40
 AliITSClusterFinderSDDfast.cxx:41
 AliITSClusterFinderSDDfast.cxx:42
 AliITSClusterFinderSDDfast.cxx:43
 AliITSClusterFinderSDDfast.cxx:44
 AliITSClusterFinderSDDfast.cxx:45
 AliITSClusterFinderSDDfast.cxx:46
 AliITSClusterFinderSDDfast.cxx:47
 AliITSClusterFinderSDDfast.cxx:48
 AliITSClusterFinderSDDfast.cxx:49
 AliITSClusterFinderSDDfast.cxx:50
 AliITSClusterFinderSDDfast.cxx:51
 AliITSClusterFinderSDDfast.cxx:52
 AliITSClusterFinderSDDfast.cxx:53
 AliITSClusterFinderSDDfast.cxx:54
 AliITSClusterFinderSDDfast.cxx:55
 AliITSClusterFinderSDDfast.cxx:56
 AliITSClusterFinderSDDfast.cxx:57
 AliITSClusterFinderSDDfast.cxx:58
 AliITSClusterFinderSDDfast.cxx:59
 AliITSClusterFinderSDDfast.cxx:60
 AliITSClusterFinderSDDfast.cxx:61
 AliITSClusterFinderSDDfast.cxx:62
 AliITSClusterFinderSDDfast.cxx:63
 AliITSClusterFinderSDDfast.cxx:64
 AliITSClusterFinderSDDfast.cxx:65
 AliITSClusterFinderSDDfast.cxx:66
 AliITSClusterFinderSDDfast.cxx:67
 AliITSClusterFinderSDDfast.cxx:68
 AliITSClusterFinderSDDfast.cxx:69
 AliITSClusterFinderSDDfast.cxx:70
 AliITSClusterFinderSDDfast.cxx:71
 AliITSClusterFinderSDDfast.cxx:72
 AliITSClusterFinderSDDfast.cxx:73
 AliITSClusterFinderSDDfast.cxx:74
 AliITSClusterFinderSDDfast.cxx:75
 AliITSClusterFinderSDDfast.cxx:76
 AliITSClusterFinderSDDfast.cxx:77
 AliITSClusterFinderSDDfast.cxx:78
 AliITSClusterFinderSDDfast.cxx:79
 AliITSClusterFinderSDDfast.cxx:80
 AliITSClusterFinderSDDfast.cxx:81
 AliITSClusterFinderSDDfast.cxx:82
 AliITSClusterFinderSDDfast.cxx:83
 AliITSClusterFinderSDDfast.cxx:84
 AliITSClusterFinderSDDfast.cxx:85
 AliITSClusterFinderSDDfast.cxx:86
 AliITSClusterFinderSDDfast.cxx:87
 AliITSClusterFinderSDDfast.cxx:88
 AliITSClusterFinderSDDfast.cxx:89
 AliITSClusterFinderSDDfast.cxx:90
 AliITSClusterFinderSDDfast.cxx:91
 AliITSClusterFinderSDDfast.cxx:92
 AliITSClusterFinderSDDfast.cxx:93
 AliITSClusterFinderSDDfast.cxx:94
 AliITSClusterFinderSDDfast.cxx:95
 AliITSClusterFinderSDDfast.cxx:96
 AliITSClusterFinderSDDfast.cxx:97
 AliITSClusterFinderSDDfast.cxx:98
 AliITSClusterFinderSDDfast.cxx:99
 AliITSClusterFinderSDDfast.cxx:100
 AliITSClusterFinderSDDfast.cxx:101
 AliITSClusterFinderSDDfast.cxx:102
 AliITSClusterFinderSDDfast.cxx:103
 AliITSClusterFinderSDDfast.cxx:104
 AliITSClusterFinderSDDfast.cxx:105
 AliITSClusterFinderSDDfast.cxx:106
 AliITSClusterFinderSDDfast.cxx:107
 AliITSClusterFinderSDDfast.cxx:108
 AliITSClusterFinderSDDfast.cxx:109
 AliITSClusterFinderSDDfast.cxx:110
 AliITSClusterFinderSDDfast.cxx:111
 AliITSClusterFinderSDDfast.cxx:112
 AliITSClusterFinderSDDfast.cxx:113
 AliITSClusterFinderSDDfast.cxx:114
 AliITSClusterFinderSDDfast.cxx:115
 AliITSClusterFinderSDDfast.cxx:116
 AliITSClusterFinderSDDfast.cxx:117
 AliITSClusterFinderSDDfast.cxx:118
 AliITSClusterFinderSDDfast.cxx:119
 AliITSClusterFinderSDDfast.cxx:120
 AliITSClusterFinderSDDfast.cxx:121
 AliITSClusterFinderSDDfast.cxx:122
 AliITSClusterFinderSDDfast.cxx:123
 AliITSClusterFinderSDDfast.cxx:124
 AliITSClusterFinderSDDfast.cxx:125
 AliITSClusterFinderSDDfast.cxx:126
 AliITSClusterFinderSDDfast.cxx:127
 AliITSClusterFinderSDDfast.cxx:128
 AliITSClusterFinderSDDfast.cxx:129
 AliITSClusterFinderSDDfast.cxx:130
 AliITSClusterFinderSDDfast.cxx:131
 AliITSClusterFinderSDDfast.cxx:132
 AliITSClusterFinderSDDfast.cxx:133
 AliITSClusterFinderSDDfast.cxx:134
 AliITSClusterFinderSDDfast.cxx:135
 AliITSClusterFinderSDDfast.cxx:136
 AliITSClusterFinderSDDfast.cxx:137
 AliITSClusterFinderSDDfast.cxx:138
 AliITSClusterFinderSDDfast.cxx:139
 AliITSClusterFinderSDDfast.cxx:140
 AliITSClusterFinderSDDfast.cxx:141
 AliITSClusterFinderSDDfast.cxx:142
 AliITSClusterFinderSDDfast.cxx:143
 AliITSClusterFinderSDDfast.cxx:144
 AliITSClusterFinderSDDfast.cxx:145
 AliITSClusterFinderSDDfast.cxx:146
 AliITSClusterFinderSDDfast.cxx:147
 AliITSClusterFinderSDDfast.cxx:148
 AliITSClusterFinderSDDfast.cxx:149
 AliITSClusterFinderSDDfast.cxx:150
 AliITSClusterFinderSDDfast.cxx:151
 AliITSClusterFinderSDDfast.cxx:152
 AliITSClusterFinderSDDfast.cxx:153
 AliITSClusterFinderSDDfast.cxx:154
 AliITSClusterFinderSDDfast.cxx:155
 AliITSClusterFinderSDDfast.cxx:156
 AliITSClusterFinderSDDfast.cxx:157
 AliITSClusterFinderSDDfast.cxx:158
 AliITSClusterFinderSDDfast.cxx:159
 AliITSClusterFinderSDDfast.cxx:160
 AliITSClusterFinderSDDfast.cxx:161
 AliITSClusterFinderSDDfast.cxx:162
 AliITSClusterFinderSDDfast.cxx:163
 AliITSClusterFinderSDDfast.cxx:164
 AliITSClusterFinderSDDfast.cxx:165
 AliITSClusterFinderSDDfast.cxx:166
 AliITSClusterFinderSDDfast.cxx:167
 AliITSClusterFinderSDDfast.cxx:168
 AliITSClusterFinderSDDfast.cxx:169
 AliITSClusterFinderSDDfast.cxx:170
 AliITSClusterFinderSDDfast.cxx:171
 AliITSClusterFinderSDDfast.cxx:172
 AliITSClusterFinderSDDfast.cxx:173
 AliITSClusterFinderSDDfast.cxx:174
 AliITSClusterFinderSDDfast.cxx:175
 AliITSClusterFinderSDDfast.cxx:176
 AliITSClusterFinderSDDfast.cxx:177
 AliITSClusterFinderSDDfast.cxx:178
 AliITSClusterFinderSDDfast.cxx:179
 AliITSClusterFinderSDDfast.cxx:180
 AliITSClusterFinderSDDfast.cxx:181
 AliITSClusterFinderSDDfast.cxx:182
 AliITSClusterFinderSDDfast.cxx:183
 AliITSClusterFinderSDDfast.cxx:184
 AliITSClusterFinderSDDfast.cxx:185
 AliITSClusterFinderSDDfast.cxx:186
 AliITSClusterFinderSDDfast.cxx:187
 AliITSClusterFinderSDDfast.cxx:188
 AliITSClusterFinderSDDfast.cxx:189
 AliITSClusterFinderSDDfast.cxx:190
 AliITSClusterFinderSDDfast.cxx:191
 AliITSClusterFinderSDDfast.cxx:192
 AliITSClusterFinderSDDfast.cxx:193
 AliITSClusterFinderSDDfast.cxx:194
 AliITSClusterFinderSDDfast.cxx:195
 AliITSClusterFinderSDDfast.cxx:196
 AliITSClusterFinderSDDfast.cxx:197
 AliITSClusterFinderSDDfast.cxx:198
 AliITSClusterFinderSDDfast.cxx:199
 AliITSClusterFinderSDDfast.cxx:200
 AliITSClusterFinderSDDfast.cxx:201
 AliITSClusterFinderSDDfast.cxx:202
 AliITSClusterFinderSDDfast.cxx:203
 AliITSClusterFinderSDDfast.cxx:204
 AliITSClusterFinderSDDfast.cxx:205
 AliITSClusterFinderSDDfast.cxx:206
 AliITSClusterFinderSDDfast.cxx:207
 AliITSClusterFinderSDDfast.cxx:208
 AliITSClusterFinderSDDfast.cxx:209
 AliITSClusterFinderSDDfast.cxx:210
 AliITSClusterFinderSDDfast.cxx:211
 AliITSClusterFinderSDDfast.cxx:212
 AliITSClusterFinderSDDfast.cxx:213
 AliITSClusterFinderSDDfast.cxx:214
 AliITSClusterFinderSDDfast.cxx:215
 AliITSClusterFinderSDDfast.cxx:216
 AliITSClusterFinderSDDfast.cxx:217
 AliITSClusterFinderSDDfast.cxx:218
 AliITSClusterFinderSDDfast.cxx:219
 AliITSClusterFinderSDDfast.cxx:220
 AliITSClusterFinderSDDfast.cxx:221
 AliITSClusterFinderSDDfast.cxx:222
 AliITSClusterFinderSDDfast.cxx:223
 AliITSClusterFinderSDDfast.cxx:224
 AliITSClusterFinderSDDfast.cxx:225
 AliITSClusterFinderSDDfast.cxx:226
 AliITSClusterFinderSDDfast.cxx:227
 AliITSClusterFinderSDDfast.cxx:228
 AliITSClusterFinderSDDfast.cxx:229
 AliITSClusterFinderSDDfast.cxx:230
 AliITSClusterFinderSDDfast.cxx:231
 AliITSClusterFinderSDDfast.cxx:232
 AliITSClusterFinderSDDfast.cxx:233
 AliITSClusterFinderSDDfast.cxx:234
 AliITSClusterFinderSDDfast.cxx:235
 AliITSClusterFinderSDDfast.cxx:236
 AliITSClusterFinderSDDfast.cxx:237
 AliITSClusterFinderSDDfast.cxx:238
 AliITSClusterFinderSDDfast.cxx:239
 AliITSClusterFinderSDDfast.cxx:240
 AliITSClusterFinderSDDfast.cxx:241
 AliITSClusterFinderSDDfast.cxx:242
 AliITSClusterFinderSDDfast.cxx:243
 AliITSClusterFinderSDDfast.cxx:244
 AliITSClusterFinderSDDfast.cxx:245
 AliITSClusterFinderSDDfast.cxx:246
 AliITSClusterFinderSDDfast.cxx:247
 AliITSClusterFinderSDDfast.cxx:248
 AliITSClusterFinderSDDfast.cxx:249
 AliITSClusterFinderSDDfast.cxx:250
 AliITSClusterFinderSDDfast.cxx:251
 AliITSClusterFinderSDDfast.cxx:252
 AliITSClusterFinderSDDfast.cxx:253
 AliITSClusterFinderSDDfast.cxx:254
 AliITSClusterFinderSDDfast.cxx:255
 AliITSClusterFinderSDDfast.cxx:256
 AliITSClusterFinderSDDfast.cxx:257
 AliITSClusterFinderSDDfast.cxx:258
 AliITSClusterFinderSDDfast.cxx:259
 AliITSClusterFinderSDDfast.cxx:260
 AliITSClusterFinderSDDfast.cxx:261
 AliITSClusterFinderSDDfast.cxx:262
 AliITSClusterFinderSDDfast.cxx:263
 AliITSClusterFinderSDDfast.cxx:264
 AliITSClusterFinderSDDfast.cxx:265
 AliITSClusterFinderSDDfast.cxx:266
 AliITSClusterFinderSDDfast.cxx:267
 AliITSClusterFinderSDDfast.cxx:268
 AliITSClusterFinderSDDfast.cxx:269
 AliITSClusterFinderSDDfast.cxx:270
 AliITSClusterFinderSDDfast.cxx:271
 AliITSClusterFinderSDDfast.cxx:272
 AliITSClusterFinderSDDfast.cxx:273
 AliITSClusterFinderSDDfast.cxx:274
 AliITSClusterFinderSDDfast.cxx:275
 AliITSClusterFinderSDDfast.cxx:276
 AliITSClusterFinderSDDfast.cxx:277
 AliITSClusterFinderSDDfast.cxx:278
 AliITSClusterFinderSDDfast.cxx:279
 AliITSClusterFinderSDDfast.cxx:280
 AliITSClusterFinderSDDfast.cxx:281
 AliITSClusterFinderSDDfast.cxx:282
 AliITSClusterFinderSDDfast.cxx:283
 AliITSClusterFinderSDDfast.cxx:284
 AliITSClusterFinderSDDfast.cxx:285
 AliITSClusterFinderSDDfast.cxx:286
 AliITSClusterFinderSDDfast.cxx:287
 AliITSClusterFinderSDDfast.cxx:288
 AliITSClusterFinderSDDfast.cxx:289
 AliITSClusterFinderSDDfast.cxx:290
 AliITSClusterFinderSDDfast.cxx:291
 AliITSClusterFinderSDDfast.cxx:292
 AliITSClusterFinderSDDfast.cxx:293
 AliITSClusterFinderSDDfast.cxx:294
 AliITSClusterFinderSDDfast.cxx:295
 AliITSClusterFinderSDDfast.cxx:296
 AliITSClusterFinderSDDfast.cxx:297
 AliITSClusterFinderSDDfast.cxx:298
 AliITSClusterFinderSDDfast.cxx:299
 AliITSClusterFinderSDDfast.cxx:300
 AliITSClusterFinderSDDfast.cxx:301
 AliITSClusterFinderSDDfast.cxx:302
 AliITSClusterFinderSDDfast.cxx:303
 AliITSClusterFinderSDDfast.cxx:304
 AliITSClusterFinderSDDfast.cxx:305
 AliITSClusterFinderSDDfast.cxx:306
 AliITSClusterFinderSDDfast.cxx:307
 AliITSClusterFinderSDDfast.cxx:308
 AliITSClusterFinderSDDfast.cxx:309
 AliITSClusterFinderSDDfast.cxx:310
 AliITSClusterFinderSDDfast.cxx:311
 AliITSClusterFinderSDDfast.cxx:312
 AliITSClusterFinderSDDfast.cxx:313
 AliITSClusterFinderSDDfast.cxx:314
 AliITSClusterFinderSDDfast.cxx:315
 AliITSClusterFinderSDDfast.cxx:316
 AliITSClusterFinderSDDfast.cxx:317
 AliITSClusterFinderSDDfast.cxx:318
 AliITSClusterFinderSDDfast.cxx:319
 AliITSClusterFinderSDDfast.cxx:320
 AliITSClusterFinderSDDfast.cxx:321
 AliITSClusterFinderSDDfast.cxx:322
 AliITSClusterFinderSDDfast.cxx:323
 AliITSClusterFinderSDDfast.cxx:324
 AliITSClusterFinderSDDfast.cxx:325
 AliITSClusterFinderSDDfast.cxx:326
 AliITSClusterFinderSDDfast.cxx:327
 AliITSClusterFinderSDDfast.cxx:328
 AliITSClusterFinderSDDfast.cxx:329
 AliITSClusterFinderSDDfast.cxx:330
 AliITSClusterFinderSDDfast.cxx:331
 AliITSClusterFinderSDDfast.cxx:332
 AliITSClusterFinderSDDfast.cxx:333
 AliITSClusterFinderSDDfast.cxx:334
 AliITSClusterFinderSDDfast.cxx:335
 AliITSClusterFinderSDDfast.cxx:336
 AliITSClusterFinderSDDfast.cxx:337
 AliITSClusterFinderSDDfast.cxx:338
 AliITSClusterFinderSDDfast.cxx:339
 AliITSClusterFinderSDDfast.cxx:340
 AliITSClusterFinderSDDfast.cxx:341
 AliITSClusterFinderSDDfast.cxx:342
 AliITSClusterFinderSDDfast.cxx:343
 AliITSClusterFinderSDDfast.cxx:344
 AliITSClusterFinderSDDfast.cxx:345
 AliITSClusterFinderSDDfast.cxx:346
 AliITSClusterFinderSDDfast.cxx:347
 AliITSClusterFinderSDDfast.cxx:348
 AliITSClusterFinderSDDfast.cxx:349
 AliITSClusterFinderSDDfast.cxx:350
 AliITSClusterFinderSDDfast.cxx:351
 AliITSClusterFinderSDDfast.cxx:352
 AliITSClusterFinderSDDfast.cxx:353
 AliITSClusterFinderSDDfast.cxx:354
 AliITSClusterFinderSDDfast.cxx:355
 AliITSClusterFinderSDDfast.cxx:356
 AliITSClusterFinderSDDfast.cxx:357
 AliITSClusterFinderSDDfast.cxx:358
 AliITSClusterFinderSDDfast.cxx:359
 AliITSClusterFinderSDDfast.cxx:360
 AliITSClusterFinderSDDfast.cxx:361
 AliITSClusterFinderSDDfast.cxx:362
 AliITSClusterFinderSDDfast.cxx:363
 AliITSClusterFinderSDDfast.cxx:364
 AliITSClusterFinderSDDfast.cxx:365
 AliITSClusterFinderSDDfast.cxx:366
 AliITSClusterFinderSDDfast.cxx:367
 AliITSClusterFinderSDDfast.cxx:368
 AliITSClusterFinderSDDfast.cxx:369
 AliITSClusterFinderSDDfast.cxx:370
 AliITSClusterFinderSDDfast.cxx:371
 AliITSClusterFinderSDDfast.cxx:372
 AliITSClusterFinderSDDfast.cxx:373
 AliITSClusterFinderSDDfast.cxx:374
 AliITSClusterFinderSDDfast.cxx:375
 AliITSClusterFinderSDDfast.cxx:376
 AliITSClusterFinderSDDfast.cxx:377
 AliITSClusterFinderSDDfast.cxx:378
 AliITSClusterFinderSDDfast.cxx:379
 AliITSClusterFinderSDDfast.cxx:380
 AliITSClusterFinderSDDfast.cxx:381
 AliITSClusterFinderSDDfast.cxx:382
 AliITSClusterFinderSDDfast.cxx:383
 AliITSClusterFinderSDDfast.cxx:384
 AliITSClusterFinderSDDfast.cxx:385
 AliITSClusterFinderSDDfast.cxx:386
 AliITSClusterFinderSDDfast.cxx:387
 AliITSClusterFinderSDDfast.cxx:388
 AliITSClusterFinderSDDfast.cxx:389
 AliITSClusterFinderSDDfast.cxx:390
 AliITSClusterFinderSDDfast.cxx:391
 AliITSClusterFinderSDDfast.cxx:392
 AliITSClusterFinderSDDfast.cxx:393
 AliITSClusterFinderSDDfast.cxx:394
 AliITSClusterFinderSDDfast.cxx:395
 AliITSClusterFinderSDDfast.cxx:396
 AliITSClusterFinderSDDfast.cxx:397
 AliITSClusterFinderSDDfast.cxx:398
 AliITSClusterFinderSDDfast.cxx:399
 AliITSClusterFinderSDDfast.cxx:400
 AliITSClusterFinderSDDfast.cxx:401
 AliITSClusterFinderSDDfast.cxx:402
 AliITSClusterFinderSDDfast.cxx:403
 AliITSClusterFinderSDDfast.cxx:404
 AliITSClusterFinderSDDfast.cxx:405
 AliITSClusterFinderSDDfast.cxx:406
 AliITSClusterFinderSDDfast.cxx:407
 AliITSClusterFinderSDDfast.cxx:408
 AliITSClusterFinderSDDfast.cxx:409
 AliITSClusterFinderSDDfast.cxx:410
 AliITSClusterFinderSDDfast.cxx:411
 AliITSClusterFinderSDDfast.cxx:412
 AliITSClusterFinderSDDfast.cxx:413
 AliITSClusterFinderSDDfast.cxx:414
 AliITSClusterFinderSDDfast.cxx:415
 AliITSClusterFinderSDDfast.cxx:416
 AliITSClusterFinderSDDfast.cxx:417
 AliITSClusterFinderSDDfast.cxx:418
 AliITSClusterFinderSDDfast.cxx:419
 AliITSClusterFinderSDDfast.cxx:420
 AliITSClusterFinderSDDfast.cxx:421
 AliITSClusterFinderSDDfast.cxx:422
 AliITSClusterFinderSDDfast.cxx:423
 AliITSClusterFinderSDDfast.cxx:424
 AliITSClusterFinderSDDfast.cxx:425
 AliITSClusterFinderSDDfast.cxx:426
 AliITSClusterFinderSDDfast.cxx:427
 AliITSClusterFinderSDDfast.cxx:428
 AliITSClusterFinderSDDfast.cxx:429
 AliITSClusterFinderSDDfast.cxx:430
 AliITSClusterFinderSDDfast.cxx:431
 AliITSClusterFinderSDDfast.cxx:432
 AliITSClusterFinderSDDfast.cxx:433
 AliITSClusterFinderSDDfast.cxx:434
 AliITSClusterFinderSDDfast.cxx:435
 AliITSClusterFinderSDDfast.cxx:436
 AliITSClusterFinderSDDfast.cxx:437
 AliITSClusterFinderSDDfast.cxx:438
 AliITSClusterFinderSDDfast.cxx:439
 AliITSClusterFinderSDDfast.cxx:440
 AliITSClusterFinderSDDfast.cxx:441
 AliITSClusterFinderSDDfast.cxx:442
 AliITSClusterFinderSDDfast.cxx:443
 AliITSClusterFinderSDDfast.cxx:444
 AliITSClusterFinderSDDfast.cxx:445
 AliITSClusterFinderSDDfast.cxx:446
 AliITSClusterFinderSDDfast.cxx:447
 AliITSClusterFinderSDDfast.cxx:448
 AliITSClusterFinderSDDfast.cxx:449
 AliITSClusterFinderSDDfast.cxx:450
 AliITSClusterFinderSDDfast.cxx:451
 AliITSClusterFinderSDDfast.cxx:452
 AliITSClusterFinderSDDfast.cxx:453
 AliITSClusterFinderSDDfast.cxx:454
 AliITSClusterFinderSDDfast.cxx:455
 AliITSClusterFinderSDDfast.cxx:456
 AliITSClusterFinderSDDfast.cxx:457
 AliITSClusterFinderSDDfast.cxx:458
 AliITSClusterFinderSDDfast.cxx:459
 AliITSClusterFinderSDDfast.cxx:460
 AliITSClusterFinderSDDfast.cxx:461
 AliITSClusterFinderSDDfast.cxx:462
 AliITSClusterFinderSDDfast.cxx:463
 AliITSClusterFinderSDDfast.cxx:464
 AliITSClusterFinderSDDfast.cxx:465
 AliITSClusterFinderSDDfast.cxx:466
 AliITSClusterFinderSDDfast.cxx:467
 AliITSClusterFinderSDDfast.cxx:468
 AliITSClusterFinderSDDfast.cxx:469
 AliITSClusterFinderSDDfast.cxx:470
 AliITSClusterFinderSDDfast.cxx:471
 AliITSClusterFinderSDDfast.cxx:472
 AliITSClusterFinderSDDfast.cxx:473
 AliITSClusterFinderSDDfast.cxx:474
 AliITSClusterFinderSDDfast.cxx:475
 AliITSClusterFinderSDDfast.cxx:476
 AliITSClusterFinderSDDfast.cxx:477
 AliITSClusterFinderSDDfast.cxx:478
 AliITSClusterFinderSDDfast.cxx:479
 AliITSClusterFinderSDDfast.cxx:480
 AliITSClusterFinderSDDfast.cxx:481
 AliITSClusterFinderSDDfast.cxx:482
 AliITSClusterFinderSDDfast.cxx:483
 AliITSClusterFinderSDDfast.cxx:484
 AliITSClusterFinderSDDfast.cxx:485
 AliITSClusterFinderSDDfast.cxx:486
 AliITSClusterFinderSDDfast.cxx:487
 AliITSClusterFinderSDDfast.cxx:488
 AliITSClusterFinderSDDfast.cxx:489
 AliITSClusterFinderSDDfast.cxx:490
 AliITSClusterFinderSDDfast.cxx:491
 AliITSClusterFinderSDDfast.cxx:492
 AliITSClusterFinderSDDfast.cxx:493
 AliITSClusterFinderSDDfast.cxx:494
 AliITSClusterFinderSDDfast.cxx:495
 AliITSClusterFinderSDDfast.cxx:496
 AliITSClusterFinderSDDfast.cxx:497
 AliITSClusterFinderSDDfast.cxx:498
 AliITSClusterFinderSDDfast.cxx:499
 AliITSClusterFinderSDDfast.cxx:500
 AliITSClusterFinderSDDfast.cxx:501
 AliITSClusterFinderSDDfast.cxx:502
 AliITSClusterFinderSDDfast.cxx:503
 AliITSClusterFinderSDDfast.cxx:504
 AliITSClusterFinderSDDfast.cxx:505
 AliITSClusterFinderSDDfast.cxx:506
 AliITSClusterFinderSDDfast.cxx:507
 AliITSClusterFinderSDDfast.cxx:508
 AliITSClusterFinderSDDfast.cxx:509
 AliITSClusterFinderSDDfast.cxx:510
 AliITSClusterFinderSDDfast.cxx:511
 AliITSClusterFinderSDDfast.cxx:512
 AliITSClusterFinderSDDfast.cxx:513
 AliITSClusterFinderSDDfast.cxx:514
 AliITSClusterFinderSDDfast.cxx:515
 AliITSClusterFinderSDDfast.cxx:516
 AliITSClusterFinderSDDfast.cxx:517
 AliITSClusterFinderSDDfast.cxx:518
 AliITSClusterFinderSDDfast.cxx:519
 AliITSClusterFinderSDDfast.cxx:520
 AliITSClusterFinderSDDfast.cxx:521
 AliITSClusterFinderSDDfast.cxx:522
 AliITSClusterFinderSDDfast.cxx:523
 AliITSClusterFinderSDDfast.cxx:524
 AliITSClusterFinderSDDfast.cxx:525
 AliITSClusterFinderSDDfast.cxx:526
 AliITSClusterFinderSDDfast.cxx:527
 AliITSClusterFinderSDDfast.cxx:528
 AliITSClusterFinderSDDfast.cxx:529
 AliITSClusterFinderSDDfast.cxx:530
 AliITSClusterFinderSDDfast.cxx:531
 AliITSClusterFinderSDDfast.cxx:532
 AliITSClusterFinderSDDfast.cxx:533
 AliITSClusterFinderSDDfast.cxx:534
 AliITSClusterFinderSDDfast.cxx:535
 AliITSClusterFinderSDDfast.cxx:536
 AliITSClusterFinderSDDfast.cxx:537
 AliITSClusterFinderSDDfast.cxx:538
 AliITSClusterFinderSDDfast.cxx:539
 AliITSClusterFinderSDDfast.cxx:540
 AliITSClusterFinderSDDfast.cxx:541
 AliITSClusterFinderSDDfast.cxx:542
 AliITSClusterFinderSDDfast.cxx:543
 AliITSClusterFinderSDDfast.cxx:544
 AliITSClusterFinderSDDfast.cxx:545
 AliITSClusterFinderSDDfast.cxx:546
 AliITSClusterFinderSDDfast.cxx:547