#ifndef ALIMUON2DSTOREVALIDATOR_H
#define ALIMUON2DSTOREVALIDATOR_H
#ifndef ROOT_TObject
# include "TObject.h"
#endif
class AliMUONVStore;
class TList;
class TObjArray;
class AliMUONCheckItem;
class AliMUONVCalibParam;
class AliMUON2DStoreValidator : public TObject
{
public:
AliMUON2DStoreValidator();
virtual ~AliMUON2DStoreValidator();
TObjArray* Validate(const AliMUONVStore& store, Float_t invalidFloatValue, AliMUONVStore* config=0x0);
TObjArray* Validate(const AliMUONVStore& store, AliMUONVStore* config=0x0);
TObjArray* Validate(const AliMUONVStore& store,
Bool_t (*check)(const AliMUONVCalibParam&,Int_t),
AliMUONVStore* config=0x0);
AliMUONVStore* GetStatus() const { return fStatus; }
void Report(TList& lines) const;
static void Report(TList& lines, const TObjArray& chambers);
private:
AliMUON2DStoreValidator(const AliMUON2DStoreValidator&);
AliMUON2DStoreValidator& operator=(const AliMUON2DStoreValidator&);
void AddMissingChannel(Int_t detElemId, Int_t manuId, Int_t manuChannel);
void AddMissingManu(Int_t detElemId, Int_t manuId);
AliMUONCheckItem* GetChamber(Int_t chamberID);
AliMUONCheckItem* GetDE(Int_t detElemId);
AliMUONCheckItem* GetManu(Int_t detElemId, Int_t manuId);
static void ReportChamber(TList& list, const AliMUONCheckItem& chamber);
static void ReportDE(TList& list, const AliMUONCheckItem& de);
static void ReportManu(TList& list, const AliMUONCheckItem& manu);
private:
TObjArray* fChambers;
AliMUONVStore* fStatus;
ClassDef(AliMUON2DStoreValidator,3)
};
#endif
AliMUON2DStoreValidator.h:1 AliMUON2DStoreValidator.h:2 AliMUON2DStoreValidator.h:3 AliMUON2DStoreValidator.h:4 AliMUON2DStoreValidator.h:5 AliMUON2DStoreValidator.h:6 AliMUON2DStoreValidator.h:7 AliMUON2DStoreValidator.h:8 AliMUON2DStoreValidator.h:9 AliMUON2DStoreValidator.h:10 AliMUON2DStoreValidator.h:11 AliMUON2DStoreValidator.h:12 AliMUON2DStoreValidator.h:13 AliMUON2DStoreValidator.h:14 AliMUON2DStoreValidator.h:15 AliMUON2DStoreValidator.h:16 AliMUON2DStoreValidator.h:17 AliMUON2DStoreValidator.h:18 AliMUON2DStoreValidator.h:19 AliMUON2DStoreValidator.h:20 AliMUON2DStoreValidator.h:21 AliMUON2DStoreValidator.h:22 AliMUON2DStoreValidator.h:23 AliMUON2DStoreValidator.h:24 AliMUON2DStoreValidator.h:25 AliMUON2DStoreValidator.h:26 AliMUON2DStoreValidator.h:27 AliMUON2DStoreValidator.h:28 AliMUON2DStoreValidator.h:29 AliMUON2DStoreValidator.h:30 AliMUON2DStoreValidator.h:31 AliMUON2DStoreValidator.h:32 AliMUON2DStoreValidator.h:33 AliMUON2DStoreValidator.h:34 AliMUON2DStoreValidator.h:35 AliMUON2DStoreValidator.h:36 AliMUON2DStoreValidator.h:37 AliMUON2DStoreValidator.h:38 AliMUON2DStoreValidator.h:39 AliMUON2DStoreValidator.h:40 AliMUON2DStoreValidator.h:41 AliMUON2DStoreValidator.h:42 AliMUON2DStoreValidator.h:43 AliMUON2DStoreValidator.h:44 AliMUON2DStoreValidator.h:45 AliMUON2DStoreValidator.h:46 AliMUON2DStoreValidator.h:47 AliMUON2DStoreValidator.h:48 AliMUON2DStoreValidator.h:49 AliMUON2DStoreValidator.h:50 AliMUON2DStoreValidator.h:51 AliMUON2DStoreValidator.h:52 AliMUON2DStoreValidator.h:53 AliMUON2DStoreValidator.h:54 AliMUON2DStoreValidator.h:55 AliMUON2DStoreValidator.h:56 AliMUON2DStoreValidator.h:57 AliMUON2DStoreValidator.h:58 AliMUON2DStoreValidator.h:59 AliMUON2DStoreValidator.h:60 AliMUON2DStoreValidator.h:61 AliMUON2DStoreValidator.h:62 AliMUON2DStoreValidator.h:63 AliMUON2DStoreValidator.h:64 AliMUON2DStoreValidator.h:65 AliMUON2DStoreValidator.h:66 AliMUON2DStoreValidator.h:67 AliMUON2DStoreValidator.h:68 AliMUON2DStoreValidator.h:69 AliMUON2DStoreValidator.h:70 AliMUON2DStoreValidator.h:71 AliMUON2DStoreValidator.h:72 AliMUON2DStoreValidator.h:73