1 #ifndef ALIPHOSQACHECKER_H
2 #define ALIPHOSQACHECKER_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //_________________________________________________________________________
9 // Base class of a checker, to be instanciated as a task container
11 //*-- Author: Yves Schutz (SUBATECH)
14 // --- ROOT system ---
19 // --- Standard library ---
21 // --- AliRoot header files ---
23 #include "AliPHOSQAVirtualCheckable.h"
25 class AliPHOSQAChecker : public TTask {
32 } ; // default ctor (not to be used)
33 AliPHOSQAChecker(const char * name, const char * title) ; // ctor
34 AliPHOSQAChecker(AliPHOSQAChecker& obj) : TTask(obj) {assert(0==1);}
35 virtual ~AliPHOSQAChecker() ; // dtor
37 void Alarms() { ExecuteTask("A") ; }
38 virtual TString CheckingOperation(){ return TString(""); } // where the checking operation must be implemented
40 void CheckIt(AliPHOSQAVirtualCheckable *ca) ;
41 void Delete() { delete this ; } // Hara-Kiri
42 TList * GetListOfCheckables() const { return fCheckablesList ; }
43 virtual void Exec(Option_t *option) ;
44 virtual void Print() ;
46 void PrintAll() { ExecuteTask("P") ; }
47 void Remove(AliPHOSQAChecker * ch) {GetListOfTasks()->Remove(ch); }
49 void StatusAll() { ExecuteTask("S") ; }
51 friend void AliPHOSQAVirtualCheckable::AddChecker(AliPHOSQAChecker * ch) ;
52 friend AliPHOSQAVirtualCheckable::AliPHOSQAVirtualCheckable(const char * name) ;
57 void SetCheckable(AliPHOSQAVirtualCheckable * ca) { fCheckable = ca ; }
61 void AddCheckable(AliPHOSQAVirtualCheckable *ca) {fCheckablesList->Add(ca) ;}
63 AliPHOSQAVirtualCheckable * fCheckable ; // current checkable
64 TList * fCheckablesList ; // list of checkable objects to be checked
66 ClassDef(AliPHOSQAChecker,1) // description
70 #endif // ALIPHOSQAChecker_H