AliHLTJET module
[u/mrichter/AliRoot.git] / HLT / QA / AliHLTQADataMakerBase.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTQADATAMAKERBASE_H
5 #define ALIHLTQADATAMAKERBASE_H
6 //* This file is property of and copyright by the ALICE HLT Project        * 
7 //* ALICE Experiment at CERN, All rights reserved.                         *
8 //* See cxx source for full Copyright notice                               *
9
10 /** @file   AliHLTQADataMakerBase.h
11     @author Matthias Richter
12     @date   2010-03-10
13     @brief  Base class for HLT detector QA data makers
14 */
15
16 #include "AliQADataMakerRec.h"
17
18 class AliHLTQADataMakerBase: public AliQADataMakerRec {
19  public:
20   AliHLTQADataMakerBase();
21   virtual ~AliHLTQADataMakerBase();
22
23  protected:
24   TObjArray** GetESDsQAList() {return fESDsQAList;}
25   TObjArray** GetRawsQAList() {return fRawsQAList;}
26   TObjArray** GetRecPointsQAList() {return fRecPointsQAList;}
27   TObjArray** GetDigitsQAList() {return fDigitsQAList;}
28
29   /** specific Exec handler which which can handle both the Esd and
30    * HLTEsd in order to call MakeESDs with two parameters
31    */
32   virtual void Exec(AliQAv1::TASKINDEX_t task, TObject * data);
33
34   /** dummy function, required by the QA framework, however
35    * HLT QA is done in the other MakeESDs function
36    */
37   virtual void MakeESDs(AliESDEvent * esd);
38
39   /** specific function with the two ESDs as argument
40    */
41   virtual void MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd);
42
43   friend class AliHLTQADataMakerRec;  
44  private:
45   /** copy constructor prohibited */
46   AliHLTQADataMakerBase(const AliHLTQADataMakerBase&);   
47   /** assignment operator prohibited */
48   AliHLTQADataMakerBase& operator = (const AliHLTQADataMakerBase&);
49
50   ClassDef(AliHLTQADataMakerBase,0)  // Base class for HLT QA Data Makers
51 };
52
53 #endif // ALIHLTQADATAMAKERBASE_H