ROOT logo
#ifndef ALIITSQASDDCHECKER_H
#define ALIITSQASDDCHECKER_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
//  P. Cerello - apr 2008
//

#include "AliQAv1.h"
//#include "TPad.h"
// --- ROOT system ---
class TFile;
class TH2F; 

// --- AliRoot header files ---

class AliQACheckerBase;
class AliQAChecker;
class AliITSQAChecker;
class AliITSCalibrationSDD;
class AliITSLoader;
class TSystem;
class AliQAManager;
class AliLog;
class TF1;
class TCanvas;
class TPaveText;
class AliQAv1;

class AliITSQASDDChecker: public TObject{

public:

  AliITSQASDDChecker();  // ctor
  virtual ~AliITSQASDDChecker(); // dtor
  virtual Double_t Check(AliQAv1::ALITASK_t index, const TObjArray * list, const AliDetectorRecoParam * recoParam);
  virtual void SetTaskOffset(Int_t taskoffset);
  virtual void SetStepBit(const Double_t *steprange);
  virtual Double_t *GetStepBit(){return fStepBitSDD;};
  virtual void SetSDDLimits(const Float_t *lowvalue, const Float_t * highvalue);
  void SetEventSpecieForCheck(Int_t esforcheck=0){ fESforCheck=esforcheck;}
  Int_t GetEventSpecieForCheck() const {return  fESforCheck;}

  virtual Bool_t   MakeSDDImage( TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode) ; 
  Bool_t MakeSDDRawsImage(TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode );//{AliInfo("The method for raw image has been called\n");}
  Bool_t MakeSDDRecPointsImage(TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode);//{AliInfo("The method for recpoint image has been called\n");}


 private:
  
  AliITSQASDDChecker(const AliITSQASDDChecker& qac); 
  AliITSQASDDChecker& operator = (const AliITSQASDDChecker& qac) ; 
    Int_t fSubDetOffset;            // checking operation starting point
    Double_t *fStepBitSDD;          //step size for each QAbit(kINFO, kWARNING,kERROR,kFATAL)
    Float_t *fLowSDDValue;          //low value of each QA bit range 
    Float_t *fHighSDDValue;         //High value of each QA bit range
    TObjArray *fCalibration;        //TObjArray with Calibration SDD Objects
        
    
    Float_t fThresholdForRelativeOccupancy;  // ThresholdForRelativeOccupancy (by module)
    Float_t fThresholdForRecToRawRatio; // ThresholdForRecToRawRatio (by module)
    
    TCanvas **    fImage          ; //[AliRecoParam::kNSpecies] 
    TPaveText *    fPaveText[AliRecoParam::kNSpecies]         ; //[AliRecoParam::kNSpecies] 

    Int_t fESforCheck; //eventspecie of the list to check

    static const Int_t fgknSDDmodules = 260; // number of SDD modules
    static const Int_t fgkmodoffset = 240;   // number of SPD modules

    ClassDef(AliITSQASDDChecker,8)  // description 
      
};

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