new task to check TRD tracking performances at ESD-MC (only) level.
[u/mrichter/AliRoot.git] / TRD / qaRec / AliTRDcheckESD.h
CommitLineData
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
18class AliESDEvent;
19class AliMCEvent;
20class TObjArray;
21class AliTRDcheckESD : public AliAnalysisTask {
22public:
23 enum ETRDcheckESDstatus {
24 kMC = BIT(0)
25 };
26 enum ETRDcheckESDhistos {
27 kNCl = 0 // number of clusters per track
28 ,kTRDstat = 2 // TRD tracks status
29 };
30 AliTRDcheckESD();
31 virtual ~AliTRDcheckESD();
32
33 void ConnectInputData(Option_t *);
34 void CreateOutputObjects();
35
36 Bool_t HasMC() const { return TESTBIT(fStatus, kMC);}
37
38 void Exec(Option_t *);
39 void SetMC(Bool_t mc = kTRUE) { mc ? SETBIT(fStatus, kMC) : CLRBIT(fStatus, kMC);}
40 void Terminate(Option_t *);
41
42 static const Float_t xTPC;
43 static const Float_t xTOF;
44
45private:
46 AliTRDcheckESD(const AliTRDcheckESD&);
47 AliTRDcheckESD& operator=(const AliTRDcheckESD&);
48 Int_t fStatus; // bit mask for controlling the task
49 AliESDEvent *fESD; // ESD event
50 AliMCEvent *fMC; // MC event
51 TObjArray *fHistos; // QA histos
52 ClassDef(AliTRDcheckESD, 1) // user oriented TRD analysis based on ESD-MC data
53};
54#endif