+ AliITSDetTypeRec *GetDetTypeRec() const {return fDetTypeRec;}
+ void SetDetTypeRec(AliITSDetTypeRec *ptr){fDetTypeRec = ptr;}
+ //
+ void SetCutPxDrSPDin(Float_t v=0.1) { fCutPxDrSPDin = v;}
+ void SetCutPxDrSPDout(Float_t v=0.15) { fCutPxDrSPDout = v;}
+ void SetCutPxDz(Float_t v=0.2) { fCutPxDz = v;}
+ void SetCutDCArz(Float_t v=0.5) { fCutDCArz = v;}
+ void SetCutMinElectronProbTPC(Float_t v=0.5) { fCutMinElectronProbTPC = v;}
+ void SetCutMinElectronProbESD(Float_t v=0.1) { fCutMinElectronProbESD = v;}
+ void SetCutMinP(Float_t v=0.05) { fCutMinP = v;}
+ void SetCutMinRGamma(Float_t v=2.) { fCutMinRGamma = v;}
+ void SetCutMinRK0(Float_t v=1.) { fCutMinRK0 = v;}
+ void SetCutMinPointAngle(Float_t v=0.98) { fCutMinPointAngle = v;}
+ void SetCutMaxDCADauther(Float_t v=0.5) { fCutMaxDCADauther = v;}
+ void SetCutMassGamma(Float_t v=0.03) { fCutMassGamma = v;}
+ void SetCutMassGammaNSigma(Float_t v=5.) { fCutMassGammaNSigma = v;}
+ void SetCutMassK0(Float_t v=0.03) { fCutMassK0 = v;}
+ void SetCutMassK0NSigma(Float_t v=5.) { fCutMassK0NSigma = v;}
+ void SetCutChi2cGamma(Float_t v=2.) { fCutChi2cGamma = v;}
+ void SetCutChi2cK0(Float_t v=2.) { fCutChi2cK0 = v;}
+ void SetCutGammaSFromDecay(Float_t v=-10.) { fCutGammaSFromDecay = v;}
+ void SetCutK0SFromDecay(Float_t v=-10.) { fCutK0SFromDecay = v;}
+ void SetCutMaxDCA(Float_t v=1.) { fCutMaxDCA = v;}
+ //
+ Float_t GetCutPxDrSPDin() const {return fCutPxDrSPDin;}
+ Float_t GetCutPxDrSPDout() const {return fCutPxDrSPDout;}
+ Float_t GetCutPxDz() const {return fCutPxDz;}
+ Float_t GetCutDCArz() const {return fCutDCArz;}
+ Float_t GetCutMinElectronProbTPC() const {return fCutMinElectronProbTPC;}
+ Float_t GetCutMinElectronProbESD() const {return fCutMinElectronProbESD;}
+ Float_t GetCutMinP() const {return fCutMinP;}
+ Float_t GetCutMinRGamma() const {return fCutMinRGamma;}
+ Float_t GetCutMinRK0() const {return fCutMinRK0;}
+ Float_t GetCutMinPointAngle() const {return fCutMinPointAngle;}
+ Float_t GetCutMaxDCADauther() const {return fCutMaxDCADauther;}
+ Float_t GetCutMassGamma() const {return fCutMassGamma;}
+ Float_t GetCutMassGammaNSigma() const {return fCutMassGammaNSigma;}
+ Float_t GetCutMassK0() const {return fCutMassK0;}
+ Float_t GetCutMassK0NSigma() const {return fCutMassK0NSigma;}
+ Float_t GetCutChi2cGamma() const {return fCutChi2cGamma;}
+ Float_t GetCutChi2cK0() const {return fCutChi2cK0;}
+ Float_t GetCutGammaSFromDecay() const {return fCutGammaSFromDecay;}
+ Float_t GetCutK0SFromDecay() const {return fCutK0SFromDecay;}
+ Float_t GetCutMaxDCA() const {return fCutMaxDCA;}
+ //
+ void InitAux();
+ void ClusterPos2Angles(const Float_t *vtx);
+ void ClusterPos2Angles(Float_t *clPar, const Float_t *vtx);
+ Int_t AssociateClusterOfL1(Int_t iC1);
+ Int_t StoreTrackletForL2Cluster(Int_t iC2);
+ void StoreL1Singles();
+ TClonesArray* GetClustersOfLayer(Int_t il) const {return fClArr[il];}
+ void LoadClusters() {LoadClusterArrays(fTreeRP);}
+ void SetTreeRP(TTree* rp) {fTreeRP = rp;}
+ void SetTreeRPMix(TTree* rp=0) {fTreeRPMix = rp;}
+ Bool_t AreClustersLoaded() const {return fClustersLoaded;}
+ Bool_t GetCreateClustersCopy() const {return fCreateClustersCopy;}
+ Bool_t IsRecoDone() const {return fRecoDone;}
+ void SetCreateClustersCopy(Bool_t v=kTRUE) {fCreateClustersCopy=v;}
+ //
+ Float_t* GetClustersArray(Int_t lr) const {return (Float_t*) (lr==0) ? fClustersLay[0]:fClustersLay[1];}
+ Int_t* GetPartnersOfL2() const {return (Int_t*)fPartners;}
+ Float_t* GetMinDistsOfL2() const {return (Float_t*)fMinDists;}
+ Double_t GetDPhiShift() const {return fDPhiShift;}
+ Double_t GetDPhiWindow2() const {return fDPhiWindow2;}
+ Double_t GetDThetaWindow2() const {return fDThetaWindow2;}
+ Double_t CalcDist(Double_t dphi, Double_t dtheta, Double_t theta) const;
+ //
+ protected:
+ void SetClustersLoaded(Bool_t v=kTRUE) {fClustersLoaded = v;}