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


/* $Id$ */

//
// Alla.Maevskaya@cern.ch
// 


// --- ROOT system ---



// --- Standard library ---
// --- AliRoot header files ---

#include "AliQADataMakerRec.h"
#include "AliT0RecoParam.h" 

class AliT0QADataMakerRec: public AliQADataMakerRec {

public:
  AliT0QADataMakerRec() ;          // ctor
  AliT0QADataMakerRec(const AliT0QADataMakerRec& qadm) ;   
  AliT0QADataMakerRec& operator = (const AliT0QADataMakerRec& qadm) ;
  virtual ~AliT0QADataMakerRec(); // dtor

private:
  virtual void   InitRaws() ;    //book Digit QA histo
  virtual void   InitRecPoints();  //book cluster QA histo
  virtual void   InitDigits() ; 
  virtual void   InitESDs() ;      //book ESD QA histo 
  virtual void   MakeRaws(AliRawReader* rawReader) ;
  virtual void   MakeRecPoints(TTree * clusters)    ;  //Fill cluster QA histo
  virtual void   MakeDigits() {;} 
  virtual void   MakeDigits(TTree * digTree);
  virtual void   MakeESDs(AliESDEvent * esd) ;         //Fill hit QA histo
  virtual void   EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** list) ;
  virtual void   StartOfDetectorCycle() ;
  virtual void   ResetDetector(AliQAv1::TASKINDEX_t task) ;

  const AliT0RecoParam* GetRecoParam() { return dynamic_cast<const AliT0RecoParam*>(fRecoParam);}
  void SetEfficiency(Int_t idxEffHisto,Int_t idxCounterHisto, Int_t trigger,  Float_t totNumOfEvts);

  // RS Commented by Ruben, read below:
  /*
  // RS: Don't use custom counters, they create problems with trigger cloning
  //     Use instead framework counters, incremented in the end of this routine
  // RS: There is some inconsistency here: the separation of physics and calib. events/histos is done by
  // fEventSpecie. Why do we book separate histos on different slots for calib and physics ? 
  // I am changing this in such way that we don't need local counters like fNumTriggers (the corresponding
  // histos now incremented in the MakeRaws, and for the normalization I will use the framework's counters
  // AliQADataMaker::GetEvCountCycle(...), AliQADataMaker::GetEvCountTotal(...)
  //
  // I think the histos xx+250 should be suppressed (the xx calib histos of specie==calibration will be 
  // used automatically)
  

  Int_t fNumTriggers[6];  //number of trigger signals;
  Int_t fNumTriggersCal[6];  //number of calibration  trigger signals;

  Int_t fnEventCal; 
  Int_t fnEventPhys; 
  Int_t feffC[24];
  Int_t feffPhysC[24]; 
  Int_t feffA[24]; 
  Int_t feffPhysA[24];
  Int_t feffqtc[24]; 
  Int_t feffqtcPhys[24];
  Float_t fTrEffCal[6];
  Float_t fTrEffPhys[6];
  TH1F*  fhTimeDiff[24];
*/
  Float_t fMeanCFDFromGoodRunParam[24]; //mean CFD for each PMT from a good run
  Float_t fMeanRawVertexParam; //mean hRawVertex from a good run  
  Float_t fMeanORAParam; // mean ORA from a good run
  Float_t fMeanORCParam; // mean ORC from a good run
  Float_t fCFDEffSubRangeLowParam; // lower border of subrange for efficiency of CFD
  Float_t fCFDEffSubRangeHighParam;// higher border of subrange for efficiency of CFD
  Float_t fLEDEffSubRangeLowParam; // lower border of subrange for efficiency of LED
  Float_t fLEDEffSubRangeHighParam;// higher border of subrange for efficiency of LED


  ClassDef(AliT0QADataMakerRec,7)  // description 

};

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