]>
Commit | Line | Data |
---|---|---|
9a281e83 | 1 | #ifndef AliTRDcheckESD_H |
2 | #define AliTRDcheckESD_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id: AliTRDcheckESD.h 27496 2008-07-22 08:35:45Z cblume $ */ | |
7 | ||
8 | //////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
10 | // Reconstruction QA // | |
11 | // // | |
12 | //////////////////////////////////////////////////////////////////////////// | |
13 | ||
14 | #ifndef ALIANALYSISTASK_H | |
15 | #include "AliAnalysisTask.h" | |
16 | #endif | |
17 | ||
18 | class AliESDEvent; | |
19 | class AliMCEvent; | |
20 | class TObjArray; | |
965e895b | 21 | class TGraphErrors; |
9a281e83 | 22 | class AliTRDcheckESD : public AliAnalysisTask { |
23 | public: | |
24 | enum ETRDcheckESDstatus { | |
25 | kMC = BIT(0) | |
26 | }; | |
27 | enum ETRDcheckESDhistos { | |
d12237d6 | 28 | kNCl = 0 // number of clusters per track |
29 | ,kTRDstat // TRD tracks status | |
30 | ,kResults // graphs as results | |
965e895b | 31 | ,kNhistos = 3 // number of histograms |
d12237d6 | 32 | }; |
33 | enum ETRDcheckESDbits { | |
34 | kTPCout = 1 // track left TPC | |
35 | ,kTRDin // track reach TRD fiducial volume | |
36 | ,kTRDout // track reconstructed in TRD | |
37 | ,kTRDpid // PID calculated in TRD | |
38 | ,kTRDref // track refitted in TRD | |
39 | ,kNbits = 5 // number of check bits | |
9a281e83 | 40 | }; |
41 | AliTRDcheckESD(); | |
42 | virtual ~AliTRDcheckESD(); | |
43 | ||
965e895b | 44 | void ConnectInputData(Option_t *); |
45 | void CreateOutputObjects(); | |
46 | TGraphErrors* GetGraph(Int_t id, Option_t *opt=0x0); | |
47 | void Exec(Option_t *); | |
9a281e83 | 48 | |
965e895b | 49 | Bool_t HasMC() const { return TESTBIT(fStatus, kMC);} |
c2fd5953 | 50 | TObjArray* Histos(); |
965e895b | 51 | Bool_t Load(const Char_t *fn, const Char_t *name=0x0); |
52 | void SetMC(Bool_t mc = kTRUE) { mc ? SETBIT(fStatus, kMC) : CLRBIT(fStatus, kMC);} | |
53 | void Terminate(Option_t *); | |
9a281e83 | 54 | |
965e895b | 55 | static const Int_t fgkNgraphs; |
56 | static const Float_t fgkxTPC; | |
57 | static const Float_t fgkxTOF; | |
9a281e83 | 58 | |
59 | private: | |
60 | AliTRDcheckESD(const AliTRDcheckESD&); | |
61 | AliTRDcheckESD& operator=(const AliTRDcheckESD&); | |
965e895b | 62 | void Process(TH1 **h, TGraphErrors *g); |
e9ed5db1 | 63 | void PrintStatus(ULong_t s); |
965e895b | 64 | |
9a281e83 | 65 | Int_t fStatus; // bit mask for controlling the task |
66 | AliESDEvent *fESD; // ESD event | |
67 | AliMCEvent *fMC; // MC event | |
68 | TObjArray *fHistos; // QA histos | |
69 | ClassDef(AliTRDcheckESD, 1) // user oriented TRD analysis based on ESD-MC data | |
70 | }; | |
71 | #endif |