8 #include "AliSimDigits.h"
13 class AliL3TrackArray;
14 class AliL3SpacePointData;
22 class AliL3Evaluate : public TObject {
27 TFile *fMCclusterfile; //If you run the fast simulator.
28 TClonesArray *fParticles;
29 AliL3TrackArray *fTracks; //!
31 AliL3SpacePointData *fClusters[36][5]; //!
32 AliL3Transform *fTransform; //!
33 AliSimDigits *fDigits;
38 Int_t fRowid[36][174];
39 Int_t fMinPointsOnTrack; //Minimum points on track to be considered.
49 TH1F *fNFoundTracksPt;
52 TH1F *fFakeTrackEffPt;
53 TH1F *fNGoodTracksEta;
54 TH1F *fNFoundTracksEta;
55 TH1F *fNFakeTracksEta;
57 TH1F *fFakeTrackEffEta;
59 void FillEffHistos(TObjArray *good_particles,Int_t *particle_id);
62 Bool_t SetDigitsTree();
63 Bool_t SetMCParticleArray();
64 TObjArray *DefineGoodTracks(Int_t slice,Int_t *padrow,Int_t good_number,Int_t *particle_id);
65 Int_t GetMCTrackLabel(AliL3Track *track);
66 Int_t **GetClusterIDs(AliL3Track *track);
67 void GetFastClusterIDs(Char_t *path);
68 //void Setup(Char_t *trackfile,Char_t *path);
72 AliL3Evaluate(Char_t *mcfile,Int_t *slice);
73 AliL3Evaluate(Int_t *slice);
75 virtual ~AliL3Evaluate();
77 void SetupFast(Char_t *trackfile,Char_t *mcClusterfile,Char_t *path=".");
78 void SetupSlow(Char_t *trackfile,Char_t *path=".");
79 void Setup(Char_t *trackfile,Char_t *path);
80 void CreateHistos(Int_t nbin=20,Int_t xlow=0,Int_t xup=4);
81 void EvaluatePatch(Int_t slice,Int_t patch,Int_t min_points,Int_t good_number);
82 void EvaluateSlice(Int_t slice,Int_t min_points,Int_t good_number);
83 void EvaluateGlobal(Int_t min_points,Int_t good_number);
84 void Write2File(Char_t *outputfile);
86 TH1F *GetTrackEffPt() {return fTrackEffPt;}
87 TH1F *GetTrackEffEta() {return fTrackEffEta;}
88 TH1F *GetPtRes() {return fPtRes;}
90 void SetMinPoints(Int_t f) {fMinPointsOnTrack = f;}
92 TNtuple *CalculateResiduals();
95 ClassDef(AliL3Evaluate,1)