ROOT logo
#ifndef ALIITSQACHECKER_H
#define ALIITSQACHECKER_H
/* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */


/* $Id$ */

//
//  Checks the quality assurance. 
//  By comparing with reference data
//  INFN Torino
//  W.Ferrarese  P.Cerello  Mag 2008
//


// --- ROOT system ---
class TFile ; 
class TH2F ;  

// --- AliRoot header files ---
#include "AliQAv1.h"
#include "AliQACheckerBase.h"

class AliITSQASPDChecker;
class AliITSQASDDChecker;
class AliITSQASSDChecker;
class AliITSLoader ; 

class AliITSQAChecker: public AliQACheckerBase {

public:
  AliITSQAChecker(Bool_t kMode = kFALSE, Short_t subDet = 0, Short_t ldc = 0) ;         // ctor
  virtual ~AliITSQAChecker();// dtor
  void SetMode(Bool_t kMode) { fkOnline = kMode; }
  void SetSubDet(Short_t subdet) { fDet = subdet; }
  void SetLDC(Short_t ldc) { fLDC = ldc; }
  Bool_t GetMode() const { return fkOnline; };
  Short_t GetSubDet() const { return fDet; } ;
  Short_t GetLDC() const { return fLDC; }  ;
  virtual void SetTaskOffset(Int_t SPDOffset, Int_t SDDOffset, Int_t SSDOffset);
  virtual void SetHisto(Int_t SPDhisto, Int_t SDDhisto, Int_t SSDhisto);
  virtual void SetDetTaskOffset(Int_t subdet=0,Int_t offset=0);
  virtual void InitQACheckerLimits();
  virtual void CreateStepForBit(Double_t histonumb,Double_t *steprange);
  virtual void SetQA(AliQAv1::ALITASK_t index, Double_t * value) const;
  virtual void SetDetHisto(Int_t subdet=0,Int_t histo=0);

  virtual Int_t GetSPDHisto(){return fSPDHisto;} ;
  virtual Int_t GetSDDHisto(){return fSDDHisto;} ;
  virtual Int_t GetSSDHisto(){return fSSDHisto;} ;

  virtual  void   MakeImage( TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode) ; 
  virtual  void   MakeITSImage( TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode) { AliQACheckerBase::MakeImage(list,task, mode);} 

protected:
  virtual void Check(Double_t * test, AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * recoParam) ;
  virtual void SetSPDTaskOffset(Int_t SPDOffset){fSPDOffset = SPDOffset;} ;
  virtual void SetSDDTaskOffset(Int_t SDDOffset){fSDDOffset = SDDOffset;} ;
  virtual void SetSSDTaskOffset(Int_t SSDOffset){fSSDOffset = SSDOffset;} ;

  virtual void SetSPDHisto(Int_t SPDhisto){fSPDHisto = SPDhisto;} ;
  virtual void SetSDDHisto(Int_t SDDhisto){fSDDHisto = SDDhisto;} ;
  virtual void SetSSDHisto(Int_t SSDhisto){fSSDHisto = SSDhisto;} ;

private:
  AliITSQAChecker(const AliITSQAChecker& qac);
  AliITSQAChecker& operator=(const AliITSQAChecker& qac);  

  Bool_t  fkOnline; //online=kTRUE offline=kFALSE
  Short_t fDet;   //0=all 1=SPD 2=SDD 3=SSD
  Short_t fLDC; //LDC number

  Int_t fSPDOffset; //starting point for the QACheck list SPD
  Int_t fSDDOffset; //starting point for the QACheck list SDD
  Int_t fSSDOffset; //starting point for the QACheck list SSD

  Int_t fSPDHisto; //number of histograms for SPD
  Int_t fSDDHisto; //number of histograms for SDD
  Int_t fSSDHisto; //number of histograms for SSD

  AliITSQASPDChecker *fSPDChecker;  // SPD Checker
  AliITSQASDDChecker *fSDDChecker;  // SDD Checker
  AliITSQASSDChecker *fSSDChecker;  // SSD Checker

  ClassDef(AliITSQAChecker,3)  // description 

};

#endif // AliITSQAChecker_H
 AliITSQAChecker.h:1
 AliITSQAChecker.h:2
 AliITSQAChecker.h:3
 AliITSQAChecker.h:4
 AliITSQAChecker.h:5
 AliITSQAChecker.h:6
 AliITSQAChecker.h:7
 AliITSQAChecker.h:8
 AliITSQAChecker.h:9
 AliITSQAChecker.h:10
 AliITSQAChecker.h:11
 AliITSQAChecker.h:12
 AliITSQAChecker.h:13
 AliITSQAChecker.h:14
 AliITSQAChecker.h:15
 AliITSQAChecker.h:16
 AliITSQAChecker.h:17
 AliITSQAChecker.h:18
 AliITSQAChecker.h:19
 AliITSQAChecker.h:20
 AliITSQAChecker.h:21
 AliITSQAChecker.h:22
 AliITSQAChecker.h:23
 AliITSQAChecker.h:24
 AliITSQAChecker.h:25
 AliITSQAChecker.h:26
 AliITSQAChecker.h:27
 AliITSQAChecker.h:28
 AliITSQAChecker.h:29
 AliITSQAChecker.h:30
 AliITSQAChecker.h:31
 AliITSQAChecker.h:32
 AliITSQAChecker.h:33
 AliITSQAChecker.h:34
 AliITSQAChecker.h:35
 AliITSQAChecker.h:36
 AliITSQAChecker.h:37
 AliITSQAChecker.h:38
 AliITSQAChecker.h:39
 AliITSQAChecker.h:40
 AliITSQAChecker.h:41
 AliITSQAChecker.h:42
 AliITSQAChecker.h:43
 AliITSQAChecker.h:44
 AliITSQAChecker.h:45
 AliITSQAChecker.h:46
 AliITSQAChecker.h:47
 AliITSQAChecker.h:48
 AliITSQAChecker.h:49
 AliITSQAChecker.h:50
 AliITSQAChecker.h:51
 AliITSQAChecker.h:52
 AliITSQAChecker.h:53
 AliITSQAChecker.h:54
 AliITSQAChecker.h:55
 AliITSQAChecker.h:56
 AliITSQAChecker.h:57
 AliITSQAChecker.h:58
 AliITSQAChecker.h:59
 AliITSQAChecker.h:60
 AliITSQAChecker.h:61
 AliITSQAChecker.h:62
 AliITSQAChecker.h:63
 AliITSQAChecker.h:64
 AliITSQAChecker.h:65
 AliITSQAChecker.h:66
 AliITSQAChecker.h:67
 AliITSQAChecker.h:68
 AliITSQAChecker.h:69
 AliITSQAChecker.h:70
 AliITSQAChecker.h:71
 AliITSQAChecker.h:72
 AliITSQAChecker.h:73
 AliITSQAChecker.h:74
 AliITSQAChecker.h:75
 AliITSQAChecker.h:76
 AliITSQAChecker.h:77
 AliITSQAChecker.h:78
 AliITSQAChecker.h:79
 AliITSQAChecker.h:80
 AliITSQAChecker.h:81
 AliITSQAChecker.h:82
 AliITSQAChecker.h:83
 AliITSQAChecker.h:84
 AliITSQAChecker.h:85
 AliITSQAChecker.h:86
 AliITSQAChecker.h:87
 AliITSQAChecker.h:88
 AliITSQAChecker.h:89
 AliITSQAChecker.h:90