]>
Commit | Line | Data |
---|---|---|
77203477 | 1 | #ifndef ALITRDTRACKINGRESOLUTION_H |
2 | #define ALITRDTRACKINGRESOLUTION_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id: AliTRDtrackingResolution.h 27496 2008-07-22 08:35:45Z cblume $ */ | |
7 | ||
8 | //////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
10 | // Reconstruction QA // | |
11 | // // | |
12 | //////////////////////////////////////////////////////////////////////////// | |
13 | ||
3d86166d | 14 | #ifndef ALITRDRECOTASK_H |
15 | #include "AliTRDrecoTask.h" | |
16 | #endif | |
77203477 | 17 | |
3c3d9ff1 | 18 | class TH1; |
19 | class TF1; | |
b718144c | 20 | class TObjArray; |
aaf47b30 | 21 | class AliTRDReconstructor; |
9605ce80 | 22 | class AliTRDgeometry; |
aaf47b30 | 23 | class AliTRDrecoParam; |
39779ce6 | 24 | class AliTRDseedV1; |
25 | class AliTRDtrackInfo; | |
3d86166d | 26 | class AliTRDtrackingResolution : public AliTRDrecoTask |
874acced | 27 | { |
77203477 | 28 | public: |
874acced | 29 | enum{ |
de520d8f | 30 | kClusterResidual = 0 |
251a1ae6 | 31 | ,kTrackletYResidual = 1 // tracklet - track residuals |
32 | ,kTrackletPhiResidual = 2 // tracklet - track angular residuals | |
b718144c | 33 | // ,kTrackletKalmanYResidual = 3 // Kalman track model |
34 | // ,kTrackletKalmanAngleResidual = 4 | |
251a1ae6 | 35 | ,kClusterResolution = 3/*5*/ |
36 | ,kTrackletYResolution = 4/*6*/ | |
37 | ,kTrackletZResolution = 5/*6*/ | |
38 | ,kTrackletAngleResolution= 6/*7*/ | |
b718144c | 39 | // ,kTrackRYResolution = 8 // Riemann track model |
40 | // ,kTrackRZResolution = 9 | |
41 | // ,kTrackRAngleResolution = 10 | |
42 | // ,kTrackKYResolution = 11 // Kalman track model | |
43 | // ,kTrackKZResolution = 12 | |
44 | // ,kTrackKAngleResolution = 13 | |
874acced | 45 | }; |
017bd6af | 46 | enum{ |
47 | kVerbose = 0 | |
48 | ,kVisual = 1 | |
49 | }; | |
874acced | 50 | |
3d86166d | 51 | AliTRDtrackingResolution(); |
ed383798 | 52 | virtual ~AliTRDtrackingResolution(); |
77203477 | 53 | |
39779ce6 | 54 | void CreateOutputObjects(); |
e15179be | 55 | Bool_t GetRefFigure(Int_t ifig); |
cf194b94 | 56 | TObjArray* Histos(); |
b2dc316d | 57 | void Exec(Option_t *); |
017bd6af | 58 | Bool_t IsVerbose() const {return TESTBIT(fStatus, kVerbose);} |
59 | Bool_t IsVisual() const {return TESTBIT(fStatus, kVisual);} | |
d85cd79c | 60 | Bool_t PostProcess(); |
017bd6af | 61 | |
de520d8f | 62 | TH1* PlotClusterResiduals(const AliTRDtrackV1 *t=0x0); |
251a1ae6 | 63 | TH1* PlotTrackletResiduals(const AliTRDtrackV1 *t=0x0); |
64 | TH1* PlotTrackletPhiResiduals(const AliTRDtrackV1 *t=0x0); | |
de520d8f | 65 | TH1* PlotResolution(const AliTRDtrackV1 *t=0x0); |
66 | ||
017bd6af | 67 | void SetRecoParam(AliTRDrecoParam *r); |
68 | void SetVerbose(Bool_t v = kTRUE) {v ? SETBIT(fStatus ,kVerbose): CLRBIT(fStatus ,kVerbose);} | |
69 | void SetVisual(Bool_t v = kTRUE) {v ? SETBIT(fStatus, kVisual) : CLRBIT(fStatus, kVisual);} | |
70 | ||
39779ce6 | 71 | void Terminate(Option_t *); |
77203477 | 72 | |
73 | private: | |
74 | AliTRDtrackingResolution(const AliTRDtrackingResolution&); | |
75 | AliTRDtrackingResolution& operator=(const AliTRDtrackingResolution&); | |
017bd6af | 76 | void AdjustF1(TH1 *h, TF1 *f); |
77203477 | 77 | |
78 | private: | |
b2dc316d | 79 | UChar_t fStatus; // steer parameter of the task |
80 | AliTRDReconstructor *fReconstructor; //! local reconstructor | |
81 | AliTRDgeometry *fGeo; //! TRD geometry | |
82 | TObjArray *fGraphS; //! result holder - sigma values | |
83 | TObjArray *fGraphM; //! result holder - mean values | |
84 | ||
85 | // calibration containers | |
86 | TObjArray *fClResiduals; //! | |
251a1ae6 | 87 | TObjArray *fTrkltResiduals; //! |
88 | TObjArray *fTrkltPhiResiduals; //! | |
b2dc316d | 89 | TObjArray *fClResolution; //! |
90 | TObjArray *fTrkltResolution;//! | |
91 | ||
77203477 | 92 | ClassDef(AliTRDtrackingResolution, 1) // tracking resolution task |
93 | }; | |
94 | #endif |