During simulation: fill STU region w/ non null time sums
[u/mrichter/AliRoot.git] / TPC / AliTPCQADataMakerRec.h
1 #ifndef ALITPCQADATAMAKERREC_H
2 #define ALITPCQADATAMAKERREC_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 /* $Id: $ */
8
9 /*
10   Based on AliPHOSQADataMaker
11   Produces the data needed to calculate the quality assurance. 
12   All data must be mergeable objects.
13   P. Christiansen, Lund, January 2008
14 */
15
16
17 // --- ROOT system ---
18 #include <TH1.h> 
19 #include <TProfile.h> 
20
21 // --- Standard library ---
22
23 // --- AliRoot header files ---
24 #include <AliQADataMakerRec.h>
25 #include <AliRawReader.h>
26 #include <AliTPCAltroMapping.h>
27
28 #include <AliTPCdataQA.h>
29
30 class AliTPCQADataMakerRec: public AliQADataMakerRec {
31
32 public:
33   enum HRawsType_t         {kRawsOccupancyVsSector=0, kRawsQVsSector, kRawsQmaxVsSector} ; 
34   enum HDigitType_t        {kDigitsADC=0} ; 
35   enum HRECPOINTsType_t    {kClusters=0, kRatio, kPt} ; 
36   enum HESDsType_t         {kQmaxShort=0, kQmaxMedium, kQmaxLong, kQShort, kQMedium, kQLong, kRow} ; 
37
38   AliTPCQADataMakerRec() ;          // ctor
39   AliTPCQADataMakerRec(const AliTPCQADataMakerRec& qadm) ;   
40   AliTPCQADataMakerRec& operator = (const AliTPCQADataMakerRec& qadm) ;
41   virtual ~AliTPCQADataMakerRec(); 
42   
43   Int_t  GetRawFirstTimeBin() const { return fRawFirstTimeBin; }
44   Int_t  GetRawLastTimeBin()  const { return fRawLastTimeBin;  }
45   
46   void  SetRawRangeTime(Int_t tMin, Int_t tMax){ fRawFirstTimeBin=tMin; fRawLastTimeBin=tMax;}
47   
48  private:
49   virtual void   StartOfDetectorCycle() {}; // empty 
50   virtual void   EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** list) ;
51   
52   // ESD QA
53   virtual void   InitESDs() ; 
54   virtual void   MakeESDs(AliESDEvent *esd) ;
55   
56   // Raw QA
57   virtual void   InitRaws();
58   virtual void   MakeRaws(AliRawReader* rawReader);
59   
60   // Digits QA
61   virtual void   InitDigits();
62   virtual void   MakeDigits()  {return;}
63   virtual void   MakeDigits(TTree *digTree);
64   
65   // RecPoints QA
66   virtual void   InitRecPoints();
67   virtual void   MakeRecPoints(TTree *recTree);
68   
69   virtual void LoadMaps();
70   
71   AliTPCAltroMapping *fMapping[6]; //! Pointers to ALTRO mapping
72   AliTPCdataQA*  fTPCdataQA;//! TPC calibration object for making raw data QA
73   
74   Int_t fRawFirstTimeBin;   //! First Time bin needed for RAW QA
75   Int_t fRawLastTimeBin;    //! Last Time bin needed for RAW QA
76   
77   ClassDef(AliTPCQADataMakerRec,1)  // TPC Rec Quality Assurance Data Maker 
78     };
79
80 #endif // ALITPCQADATAMAKERREC_H