Increased error checking and possibility to extract some diagnostics
[u/mrichter/AliRoot.git] / FMD / AliFMDQADataMakerRec.h
1 #ifndef ALIFMDQADATAMAKERREC_H
2 #define ALIFMDQADATAMAKERREC_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights
4  * reserved. 
5  *
6  * See cxx source for full Copyright notice                               
7  */
8 #include "AliQADataMakerRec.h"
9 #include "TClonesArray.h"
10 class TH1F; 
11 class TH1I; 
12 class TList; 
13
14
15 //_____________________________________________________________________
16 // This class implements the AliQADataMakerRec for the FMD. Some
17 // functions are not implemented yet. 
18 // Author : Hans Hjersing Dalsgaard, hans.dalsgaard@cern.ch
19 //_____________________________________________________________________
20
21 class AliFMDQADataMakerRec: public AliQADataMakerRec 
22 {
23 public:
24   /** 
25    * Constructor
26    */
27   AliFMDQADataMakerRec();
28   /** 
29    * Copy constructor 
30    * 
31    * @param qadm What to copy from
32    */
33   AliFMDQADataMakerRec(const AliFMDQADataMakerRec& qadm);
34   /** 
35    * Assignment operator 
36    * 
37    * @param qadm What to assign from 
38    * 
39    * @return Reference to this
40    */
41   AliFMDQADataMakerRec& operator = (const AliFMDQADataMakerRec& qadm) ;
42   /** 
43    * Destrcutor 
44    */
45   virtual ~AliFMDQADataMakerRec();
46 private:
47   /** 
48    * Called at end of monitor cycle 
49    * 
50    * @param TASKINDEX_t Task
51    * @param list        Output list
52    */
53   virtual void   EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** list);
54   /** 
55    * Intialize for ESD
56    */
57   virtual void   InitESDs(); 
58   /** 
59    * Intialize for Digits
60    */
61   virtual void   InitDigits(); 
62   /** 
63    * Intialize for RecPoints
64    */
65   virtual void   InitRecPoints(); 
66   /** 
67    * Initialise for raw 
68    */
69   virtual void   InitRaws(); 
70   /** 
71    * Analyse ESD event
72    * 
73    * @param esd ESD event
74    */
75   virtual void   MakeESDs(AliESDEvent * esd);
76   /** 
77    * Analyse digits 
78    */
79   virtual void   MakeDigits(); 
80   /** 
81    * Analyse digits
82    * 
83    * @param digitTree Tree of digits
84    */
85   virtual void   MakeDigits(TTree * digitTree); 
86   /** 
87    * Analyse rec points
88    * 
89    * @param recpoTree Tree of RecPoints
90    */
91   virtual void   MakeRecPoints(TTree * recpoTree); 
92   /** 
93    * Analyse raw 
94    * 
95    * @param rawReader Raw reader
96    */
97   virtual void   MakeRaws(AliRawReader* rawReader); 
98   /** 
99    * Called at start of a cycle 
100    * 
101    */
102   virtual void   StartOfDetectorCycle(); 
103   /** 
104    * Get the half-ring index
105    * 
106    * @param det      Detector
107    * @param ring     Ring
108    * @param board    Board number
109    * @param monitor  Monitor 
110    * 
111    * @return Half ring index
112    */
113   Int_t GetHalfringIndex(UShort_t det, Char_t ring, 
114                          UShort_t board, UShort_t monitor = 0) const;
115   ClassDef(AliFMDQADataMakerRec,0)  // description 
116   TClonesArray fRecPointsArray; // Rec points
117 };
118
119 #endif // AliFMDQADataMakerRec_H
120 //____________________________________________________________________
121 //
122 // Local Variables: 
123 //  mode: c++
124 // End:
125 //
126