]>
Commit | Line | Data |
---|---|---|
e3cf3d02 | 1 | #ifndef ALITRDRESOLUTION_H |
2 | #define ALITRDRESOLUTION_H | |
77203477 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
e3cf3d02 | 6 | /* $Id: AliTRDresolution.h 27496 2008-07-22 08:35:45Z cblume $ */ |
77203477 | 7 | |
8 | //////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
e3cf3d02 | 10 | // Resolution QA // |
77203477 | 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; | |
e3cf3d02 | 26 | class AliTRDresolution : public AliTRDrecoTask |
874acced | 27 | { |
77203477 | 28 | public: |
e9ecf70f | 29 | enum ETRDresolutionPlot { |
e3cf3d02 | 30 | kCluster = 0 // cluster - track |
31 | ,kTrackletY = 1 // tracklet - track y pulls | |
32 | ,kTrackletPhi = 2 // tracklet - track angular pulls residuals | |
33 | ,kMCcluster = 3 // cluster - mc residuals/systematics | |
34 | ,kMCtrackletY = 4 // tracklet - mc y resolution/systematics | |
35 | ,kMCtrackletYPull = 5 // tracklet - mc y resolution/systematics | |
36 | ,kMCtrackletZ = 6 // tracklet - mc z resolution/systematics (pad row cross) | |
37 | ,kMCtrackletZPull = 7 // tracklet - mc z resolution/systematics (pad row cross) | |
38 | ,kMCtrackletPhi = 8 // tracklet - mc phi resolution/systematics | |
39 | ,kMCtrackY = 9 // Kalman Y resolution | |
40 | ,kMCtrackYPull = 10 // Kalman Y resolution | |
41 | ,kMCtrackZIn = 11 // Kalman Z resolution | |
42 | ,kMCtrackZOut = 12 // Kalman Z resolution | |
43 | ,kMCtrackZInPull = 13 // Kalman Z resolution | |
44 | ,kMCtrackZOutPull = 14 // Kalman Z resolution | |
45 | ,kMCtrackPt = 15 // Kalman Pt resolution | |
46 | ,kNhistos = 16 | |
874acced | 47 | }; |
e3cf3d02 | 48 | enum ETRDresolutionSteer { |
017bd6af | 49 | kVerbose = 0 |
50 | ,kVisual = 1 | |
51 | }; | |
874acced | 52 | |
e3cf3d02 | 53 | AliTRDresolution(); |
54 | virtual ~AliTRDresolution(); | |
77203477 | 55 | |
39779ce6 | 56 | void CreateOutputObjects(); |
e15179be | 57 | Bool_t GetRefFigure(Int_t ifig); |
cf194b94 | 58 | TObjArray* Histos(); |
b2dc316d | 59 | void Exec(Option_t *); |
017bd6af | 60 | Bool_t IsVerbose() const {return TESTBIT(fStatus, kVerbose);} |
61 | Bool_t IsVisual() const {return TESTBIT(fStatus, kVisual);} | |
d85cd79c | 62 | Bool_t PostProcess(); |
4fba4b4e | 63 | Bool_t Process(ETRDresolutionPlot ip, TF1 *f=0x0, Float_t scale=1.); |
017bd6af | 64 | |
b1957d3c | 65 | TH1* PlotCluster(const AliTRDtrackV1 *t=0x0); |
66 | TH1* PlotTracklet(const AliTRDtrackV1 *t=0x0); | |
67 | TH1* PlotTrackletPhi(const AliTRDtrackV1 *t=0x0); | |
e9ecf70f | 68 | TH1* PlotMC(const AliTRDtrackV1 *t=0x0); |
de520d8f | 69 | |
017bd6af | 70 | void SetRecoParam(AliTRDrecoParam *r); |
71 | void SetVerbose(Bool_t v = kTRUE) {v ? SETBIT(fStatus ,kVerbose): CLRBIT(fStatus ,kVerbose);} | |
72 | void SetVisual(Bool_t v = kTRUE) {v ? SETBIT(fStatus, kVisual) : CLRBIT(fStatus, kVisual);} | |
73 | ||
39779ce6 | 74 | void Terminate(Option_t *); |
77203477 | 75 | |
76 | private: | |
e3cf3d02 | 77 | AliTRDresolution(const AliTRDresolution&); |
78 | AliTRDresolution& operator=(const AliTRDresolution&); | |
017bd6af | 79 | void AdjustF1(TH1 *h, TF1 *f); |
77203477 | 80 | |
b2dc316d | 81 | UChar_t fStatus; // steer parameter of the task |
82 | AliTRDReconstructor *fReconstructor; //! local reconstructor | |
83 | AliTRDgeometry *fGeo; //! TRD geometry | |
84 | TObjArray *fGraphS; //! result holder - sigma values | |
85 | TObjArray *fGraphM; //! result holder - mean values | |
86 | ||
87 | // calibration containers | |
6fc46cba | 88 | TObjArray *fCl; //! cluster2track calib |
89 | TObjArray *fTrklt; //! tracklet2track calib | |
90 | TObjArray *fMCcl; //! cluster2mc calib | |
91 | TObjArray *fMCtrklt;//! tracklet2mc calib | |
b2dc316d | 92 | |
e3cf3d02 | 93 | ClassDef(AliTRDresolution, 1) // TRD tracking resolution task |
77203477 | 94 | }; |
95 | #endif |