Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / TRD / AliTRDQADataMakerRec.h
1 #ifndef ALITRDQADATAMAKERREC_H
2 #define ALITRDQADATAMAKERREC_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ////////////////////////////////////////////////////////////////////////////
9 //                                                                        //
10 //  Produces the data needed to calculate the quality assurance.          //
11 //  All data must be mergeable objects.                                   //
12 //                                                                        //
13 //  Author:                                                               //
14 //    Sylwester Radomski (radomski@physi.uni-heidelberg.de)               //
15 //                                                                        //
16 ////////////////////////////////////////////////////////////////////////////
17
18 // --- ROOT system ---
19 class TH1F ; 
20 class TH1I ; 
21
22 // --- AliRoot header files ---
23 class AliExternalTrackParam;
24
25 #include "AliQADataMakerRec.h"
26
27 class AliTRDQADataMakerRec: public AliQADataMakerRec {
28
29  public:
30
31   AliTRDQADataMakerRec() ;          // ctor
32   AliTRDQADataMakerRec(const AliTRDQADataMakerRec& qadm) ;   
33   AliTRDQADataMakerRec& operator = (const AliTRDQADataMakerRec& qadm) ;
34   virtual ~AliTRDQADataMakerRec() {;} // dtor
35
36   // private:
37  public:
38
39   enum {kTimeBin = 30};
40   virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list) ;
41
42   virtual void InitESDs() ; 
43   virtual void InitRecPoints() ; 
44   virtual void InitRaws() ; 
45
46   virtual void MakeRaws(AliRawReader* rawReader); 
47   virtual void MakeRecPoints(TTree * recpo); 
48   virtual void MakeESDs(AliESDEvent * const esd);
49
50   virtual void StartOfDetectorCycle() ; 
51   Int_t        CheckPointer(TObject * const obj, const char *name);
52
53   // internal methods
54   Int_t        GetSector(Double_t alpha) const;
55   Int_t        GetStack(const AliExternalTrackParam *paramOut) const;
56   Double_t     GetExtZ(const AliExternalTrackParam *paramIn) const;
57   Int_t        FillBits(TH1F *hist, Int_t code, Int_t offset);
58
59   void         BuildRatio(TH1 *ratio, TH1 * const histN, TH1 * const histD);
60
61   ClassDef(AliTRDQADataMakerRec,1)   // Creates the TRD QA data
62
63 };
64 #endif // AliTRDQADataMakerRec_H