13 #include "AliSimDigits.h"
26 typedef struct GoodTrack GoodTrack;
32 class AliL3TrackArray;
33 class AliL3SpacePointData;
45 AliL3TrackArray *fTracks; //!
47 AliL3SpacePointData *fClusters[36][6]; //!
49 AliSimDigits *fDigits;
54 Int_t fRowid[36][176];
55 Int_t fMinPointsOnTrack; //Minimum points on track to be considered.
56 Int_t fMinHitsFromParticle;
57 GoodTrack *fGoodTracks; //!
58 Float_t fMaxFalseClusters;
72 TH1F *fNFoundTracksPt;
75 TH1F *fFakeTrackEffPt;
76 TH1F *fNGoodTracksEta;
77 TH1F *fNFoundTracksEta;
78 TH1F *fNFakeTracksEta;
80 TH1F *fFakeTrackEffEta;
82 Bool_t fStandardComparison;
86 AliL3Evaluate(Char_t *path,Int_t min_clusters,Int_t minhits,Double_t minpt=0.1,Double_t maxpt=4.,Int_t *slice=0);
87 virtual ~AliL3Evaluate();
89 void LoadData(Int_t event=-1,Bool_t sp=kFALSE);
90 void CreateHistos(Int_t nbin=20,Float_t xlow=0,Float_t xup=4);
91 void Write2File(Char_t *outputfile);
93 void FillEffHistosNAIVE();
97 void GetGoodParticles(Char_t *particle_file,Int_t event=-1,Int_t *padrowrange=0);
98 void GetFastClusterIDs(Char_t *path);
99 void GetCFeff(Char_t *path,Char_t *outfile,Int_t nevent=0,Bool_t sp=kFALSE);
100 Int_t GetMCTrackLabel(AliL3Track *track);
101 Float_t GetTrackPID(AliL3Track *track);
102 void CalculateResiduals();
103 void EvaluatePoints(Char_t *rootfile,Char_t *exactfile,Char_t *tofile,Int_t nevent=1,Bool_t offline=kFALSE,Bool_t sp=kFALSE);
104 Float_t GetCrossingAngle(TParticle *part,Int_t slice,Int_t padrow,Float_t *xyz);
105 Int_t FindPrimaries(Int_t nparticles);
106 void SetMinPoints(Int_t f) {fMinPointsOnTrack = f;}
107 void SetMinGoodPt(Double_t f) {fMinGoodPt = f;}
108 void SetMaxFalseClusters(Float_t f) {fMaxFalseClusters = f;}
109 void SetStandardComparison(Bool_t b) {fStandardComparison = b;}
110 TNtuple *GetNtuple();
111 Int_t GetNGoodTracks() {return fGoodGen;}
112 Int_t GetNFoundTracks() {return fGoodFound;}
113 TH1F *GetTrackEffPt() {return fTrackEffPt;}
114 TH1F *GetTrackEffEta() {return fTrackEffEta;}
115 TH1F *GetFakeEffEta() {return fFakeTrackEffEta;}
116 TH1F *GetFakeEffPt() {return fFakeTrackEffPt;}
117 TH1F *GetPtRes() {return fPtRes;}
118 AliL3TrackArray *GetTracks() {return fTracks;}
120 ClassDef(AliL3Evaluate,1) //Tracking evaluation class