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 ---
23 // --- AliRoot header files ---
25 #include "AliPHOSQAVirtualCheckable.h"
27 class AliPHOSQAChecker : public TTask {
31 AliPHOSQAChecker(){} ; // default ctor (not to be used)
32 AliPHOSQAChecker(const char * name, const char * title) ; // ctor
33 AliPHOSQAChecker(AliPHOSQAChecker& obj) {assert(0==1);}
34 virtual ~AliPHOSQAChecker() ; // dtor
36 void Alarms() { ExecuteTask("A") ; }
37 virtual TString CheckingOperation(){ return TString(""); } // where the checking operation must be implemented
39 void CheckIt(AliPHOSQAVirtualCheckable *ca) ;
40 void Delete() { delete this ; } // Hara-Kiri
41 TList * GetListOfCheckables() const { return fCheckablesList ; }
42 virtual void Exec(Option_t *option) ;
43 virtual void Print() ;
45 void PrintAll() { ExecuteTask("P") ; }
46 void Remove(AliPHOSQAChecker * ch) {GetListOfTasks()->Remove(ch); }
48 void StatusAll() { ExecuteTask("S") ; }
50 friend void AliPHOSQAVirtualCheckable::AddChecker(AliPHOSQAChecker * ch) ;
51 friend AliPHOSQAVirtualCheckable::AliPHOSQAVirtualCheckable(const char * name) ;
56 void SetCheckable(AliPHOSQAVirtualCheckable * ca) { fCheckable = ca ; }
60 void AddCheckable(AliPHOSQAVirtualCheckable *ca) {fCheckablesList->Add(ca) ;}
62 AliPHOSQAVirtualCheckable * fCheckable ; // current checkable
63 TList * fCheckablesList ; // list of checkable objects to be checked
65 ClassDef(AliPHOSQAChecker,1) // description
69 #endif // ALIPHOSQAChecker_H