]>
Commit | Line | Data |
---|---|---|
1ee39b3a | 1 | #ifndef ALITRDCHECKDET_H |
2 | #define ALITRDCHECKDET_H | |
3 | ||
4 | #ifndef ALITRDRECOTASK_H | |
5 | #include "AliTRDrecoTask.h" | |
6 | #endif | |
7 | //////////////////////////////////////////////////////////////////////////// | |
8 | // Basic checks for tracking and detector performance // | |
9 | // // | |
10 | // Authors: // | |
11 | // Anton Andronic <A.Andronic@gsi.de> // | |
12 | // Alexandru Bercuci <A.Bercuci@gsi.de> // | |
13 | // Markus Fasel <M.Fasel@gsi.de> // | |
14 | //////////////////////////////////////////////////////////////////////////// | |
15 | ||
16 | ||
17 | class TObjArray; | |
18 | class TH1; | |
19 | class TMap; | |
20 | class AliESDHeader; | |
21 | class AliTRDcluster; | |
22 | class AliTRDseedV1; | |
23 | class AliTRDgeometry; | |
24 | class AliTRDReconstructor; | |
25 | class AliTRDrecoParam; | |
26 | class AliTRDeventInfo; | |
27 | class AliTRDcheckDET : public AliTRDrecoTask{ | |
28 | public: | |
29 | // The Histogram number | |
30 | enum HistType_t { | |
31 | kNclustersTrack = 0, | |
32 | kNclustersTracklet = 1, | |
33 | kNtrackletsTrack = 2, | |
34 | kNtrackletsSTA = 3, | |
35 | kNtrackletsBAR = 4, | |
36 | kNtrackletsCross = 5, | |
37 | kNtrackletsFindable = 6, | |
38 | kNtracksEvent = 7, | |
39 | kNtracksSector = 8, | |
40 | kPH = 9, | |
41 | kChi2 = 10, | |
42 | kChargeCluster = 11, | |
43 | kChargeTracklet = 12, | |
44 | kNeventsTrigger = 13, | |
45 | kNeventsTriggerTracks=14, | |
46 | kTriggerPurity = 15, | |
47 | kTrackStatus = 16, | |
0c76cfa4 | 48 | kTrackletStatus = 17, |
49 | kNTrackletsP = 18 | |
1ee39b3a | 50 | }; |
51 | ||
52 | AliTRDcheckDET(); | |
f8f46e4d | 53 | AliTRDcheckDET(char* name); |
1ee39b3a | 54 | virtual ~AliTRDcheckDET(); |
55 | ||
f8f46e4d | 56 | virtual void UserCreateOutputObjects(); |
57 | virtual void UserExec(Option_t *opt); | |
1ee39b3a | 58 | virtual TObjArray *Histos(); |
59 | ||
60 | // Plotting Functions: | |
61 | TH1 *PlotTrackStatus(const AliTRDtrackV1 *track = 0x0); | |
62 | TH1 *PlotTrackletStatus(const AliTRDtrackV1 *track = 0x0); | |
63 | TH1 *PlotNClustersTracklet(const AliTRDtrackV1 *t = 0x0); | |
64 | TH1 *PlotNClustersTrack(const AliTRDtrackV1 *t = 0x0); | |
65 | TH1 *PlotNTrackletsTrack(const AliTRDtrackV1 *t = 0x0); | |
66 | TH1 *PlotNTrackletsRowCross(const AliTRDtrackV1 *t = 0x0); | |
67 | TH1 *PlotFindableTracklets(const AliTRDtrackV1 *track = 0x0); | |
68 | TH1 *PlotNTracksSector(const AliTRDtrackV1 *t = 0x0); | |
69 | TH1 *PlotPHt(const AliTRDtrackV1 *t = 0x0); | |
70 | TH1 *PlotPHx(const AliTRDtrackV1 *track = 0x0); | |
71 | TH1 *PlotChi2(const AliTRDtrackV1 *t = 0x0); | |
72 | TH1 *PlotChargeCluster(const AliTRDtrackV1 *t = 0x0); | |
73 | TH1 *PlotChargeTracklet(const AliTRDtrackV1 *t = 0x0); | |
74 | ||
75 | virtual Bool_t PostProcess(); | |
76 | virtual Bool_t GetRefFigure(Int_t ifig); | |
77 | ||
c732f879 | 78 | Bool_t IsUsingClustersOutsideChamber() const {return TESTBIT(fFlags, kUseClustersOutsideChamber);} |
79 | void UseClustersOutsideChamber(Bool_t b = kTRUE) {if(b) SETBIT(fFlags, kUseClustersOutsideChamber); else CLRBIT(fFlags, kUseClustersOutsideChamber);} | |
1ee39b3a | 80 | void SetRecoParam(AliTRDrecoParam *r); |
81 | ||
82 | private: | |
c732f879 | 83 | enum{ |
84 | kUseClustersOutsideChamber | |
85 | }; | |
1ee39b3a | 86 | AliTRDcheckDET(const AliTRDcheckDET &); |
87 | AliTRDcheckDET& operator=(const AliTRDcheckDET &); | |
88 | void GetDistanceToTracklet(Double_t *dist, AliTRDseedV1 * const tracklet, AliTRDcluster * const c); | |
89 | TH1* MakePlotChi2(); | |
90 | TH1* MakePlotNTracklets(); | |
91 | TH1* MakePlotPulseHeight(); | |
0c76cfa4 | 92 | void MakePlotnTrackletsVsP(); |
1ee39b3a | 93 | Bool_t MakeBarPlot(TH1 *histo, Int_t Color); |
94 | ||
95 | AliTRDeventInfo *fEventInfo; //! ESD Header | |
96 | TMap *fTriggerNames; //! Containing trigger class names | |
97 | AliTRDReconstructor *fReconstructor; // TRD Reconstructor | |
98 | AliTRDgeometry *fGeo; // TRD Geometry object | |
c732f879 | 99 | UChar_t fFlags; // Flags for setting |
1ee39b3a | 100 | |
101 | ClassDef(AliTRDcheckDET, 1) | |
102 | }; | |
103 | #endif |