]>
Commit | Line | Data |
---|---|---|
3ceb45ae | 1 | #ifndef ALITRDCHECKTRK_H |
2 | #define ALITRDCHECKTRK_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ||
7 | //////////////////////////////////////////////////////////////////////////// | |
8 | // // | |
9 | // TRD tracker systematic // | |
10 | // // | |
11 | // Authors: // | |
12 | // Alexandru Bercuci <A.Bercuci@gsi.de> // | |
13 | // // | |
14 | //////////////////////////////////////////////////////////////////////////// | |
15 | ||
3ed01fbe | 16 | #ifndef ALITRDRESOLUTION_H |
17 | #include "AliTRDresolution.h" | |
3ceb45ae | 18 | #endif |
19 | ||
3ceb45ae | 20 | class TObjArray; |
3ceb45ae | 21 | class AliTRDtrackV1; |
3ed01fbe | 22 | class AliTRDcheckTRK : public AliTRDresolution |
3ceb45ae | 23 | { |
24 | public: | |
b9058d72 | 25 | enum ETRDcheckTRKsteer { |
26 | kKalmanUpdate = 0 | |
27 | ,kTrkltRefit | |
28 | ,kClRecalibrate | |
29 | ,kUseITS | |
30 | }; | |
3ceb45ae | 31 | enum ETRDcheckTRKconst { |
566c3d46 | 32 | kNptBins = 25 // no of log bins in pt spectrum |
33 | ,kNSigmaBins = 25 // no of sigma bins | |
34 | ,kNclusters = 19 // no of no of clusters | |
35 | ,kNdim = 7 // no of dimensions in THnSparse | |
3ceb45ae | 36 | }; |
3ceb45ae | 37 | AliTRDcheckTRK(); |
38 | AliTRDcheckTRK(char* name); | |
39 | virtual ~AliTRDcheckTRK(); | |
40 | static Float_t GetKalmanStep() { return fgKalmanStep;} | |
b9058d72 | 41 | static Bool_t HasClRecalibrate() { return TESTBIT(fgSteer, kClRecalibrate);} |
42 | static Bool_t HasKalmanUpdate() { return TESTBIT(fgSteer, kKalmanUpdate);} | |
43 | static Bool_t HasTrkltRefit() { return TESTBIT(fgSteer, kTrkltRefit);} | |
566c3d46 | 44 | virtual TObjArray* Histos(); |
3ed01fbe | 45 | TH1* PlotTrack(const AliTRDtrackV1 *t=NULL); |
566c3d46 | 46 | TH1* DoRoads(const AliTRDtrackV1 *t=NULL); |
35983729 | 47 | static Bool_t PropagateKalman(AliTRDtrackV1 &t, AliExternalTrackParam *ref); |
3ceb45ae | 48 | static void SetKalmanStep(Float_t step) { fgKalmanStep=step;} |
b9058d72 | 49 | static void SetClRecalibrate(Bool_t s=kTRUE) { if(s){SETBIT(fgSteer, kClRecalibrate); SetTrkltRefit();} else CLRBIT(fgSteer, kClRecalibrate);} |
50 | static void SetKalmanUpdate(Bool_t s=kTRUE) { if(s) SETBIT(fgSteer, kKalmanUpdate); else CLRBIT(fgSteer, kKalmanUpdate);} | |
51 | static void SetTrkltRefit(Bool_t s=kTRUE) { if(s) SETBIT(fgSteer, kTrkltRefit); else CLRBIT(fgSteer, kTrkltRefit);} | |
52 | static void SetUseITS(Bool_t s=kTRUE) { if(s) SETBIT(fgSteer, kUseITS); else CLRBIT(fgSteer, kUseITS);} | |
53 | static Bool_t UseITS() { return TESTBIT(fgSteer, kUseITS);} | |
3ceb45ae | 54 | private: |
55 | AliTRDcheckTRK(const AliTRDcheckTRK&); | |
56 | AliTRDcheckTRK& operator=(const AliTRDcheckTRK&); | |
566c3d46 | 57 | void MakePtCalib(Float_t pt0=0.3, Float_t dpt=0.002); |
58 | Int_t GetPtBinCalib(Float_t pt); | |
3ceb45ae | 59 | |
60 | // kalman related settings | |
b9058d72 | 61 | static UChar_t fgSteer; // steering bit map |
3ceb45ae | 62 | static Float_t fgKalmanStep; // Kalman stepping |
566c3d46 | 63 | Float_t fPtBinCalib[kNptBins+1]; //! pt segmentation |
3ceb45ae | 64 | |
65 | ClassDef(AliTRDcheckTRK, 1) // TRD tracker systematic | |
66 | }; | |
67 | ||
0d69a485 | 68 | #endif |