]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSQASDDDataMakerRec.h
New survey data for V0A (Lizardo)
[u/mrichter/AliRoot.git] / ITS / AliITSQASDDDataMakerRec.h
index 8462171aec99535e3544e2a42b088320c180559f..0958b668f8a5b6a14b6481f692cf2995531f1d54 100644 (file)
 //
 //
 //  W. Ferrarese + P. Cerello Feb 2008
-//  M.Siciliano Aug 2008 QA RecPoints and HLT mode
 
 /* $Id$ */
 
-#include "AliQA.h"
+#include "AliQAv1.h"
 #include "AliITSQADataMakerRec.h"
 
 class TObjArray;
 class AliITSDDLModuleMapSDD;
-class AliITSHLTforSDD;
 class AliITSQASDDDataMakerRec: public TObject {
 
 public:
   AliITSQASDDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Short_t ldc = 0);
   AliITSQASDDDataMakerRec(const AliITSQASDDDataMakerRec& qadm);
   AliITSQASDDDataMakerRec& operator = (const AliITSQASDDDataMakerRec& qac);
-  virtual void InitRaws();
-  virtual void InitRecPoints();
-  virtual void MakeRaws(AliRawReader *rawReader);
-  virtual void MakeRecPoints(TTree *clustersTree);
+  virtual Int_t InitRaws();
+  virtual Int_t InitDigits();
+  virtual Int_t InitRecPoints();
+  virtual Int_t MakeRaws(AliRawReader *rawReader);
+  virtual Int_t MakeDigits()  {return 0;}
+  virtual Int_t MakeDigits(TTree *clustersTree);
+  virtual Int_t MakeRecPoints(TTree *clustersTree);
   virtual void StartOfDetectorCycle();
-  virtual void EndOfDetectorCycle(AliQA::TASKINDEX_t task, TObjArray * list);
+  virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray * list);
 
 
   virtual ~AliITSQASDDDataMakerRec(); // dtor
-  Int_t GetOffset(AliQA::TASKINDEX_t task);
-  Int_t GetTaskHisto(AliQA::TASKINDEX_t task);
-
-  void SetHLTMode(Bool_t khltmode=kFALSE){fHLTMode=khltmode;};
-  Bool_t GetHLTMode(){return fHLTMode;};
-  void SetHLTModeFromEnvironment();
+  Int_t GetOffset(AliQAv1::TASKINDEX_t task);
+  void  SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0);
+  Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task);
 
 private:
 
+       void AnalyseBNG();                       // Analyse ROOT files with baselines, noise, gains
+       void AnalyseINJ();                                              // Analyse ROOT files with drift speed
+       void AnodeStatus();                                             // Check Anode Status changes (0 = bad, 1 = good)
+       void AnalyseHistos(Int_t type);                         // Analyse Histos type: 1 = Baseline, 2 = Noise (Uncorrected), 3 = Noise (Common Mode), 4 = Noise (Corrected), 5 = Gain, 6 = Drift Speed
   static const Int_t fgknSDDmodules = 260; // number of SDD modules
   static const Int_t fgkmodoffset = 240;   // number of SPD modules
   static const Int_t fgknAnode = 256;      // anode per half-module
@@ -56,15 +58,20 @@ private:
   Bool_t  fkOnline;                           // online (1) or offline (0) use
   Int_t   fLDC;                               // LDC number (0 for offline, 1 to 4 for online) 
   Int_t   fSDDhRawsTask;                      // number of histo booked for each the Raws Task SDD
+  Int_t   fSDDhDigitsTask;                    // number of histo booked for each the RecPoints Task SDD
   Int_t   fSDDhRecPointsTask;                 // number of histo booked for each the RecPoints Task SDD
-  Int_t   fGenRawsOffset;                     // QAchecking Raws offset       
-  Int_t   fGenRecPointsOffset;                // QAchecking RecPoints offset       
+  Int_t   *fGenRawsOffset;                     // QAchecking Raws offset       
+  Int_t   *fGenDigitsOffset;                   // QAchecking RecPoints offset       
+  Int_t   *fGenRecPointsOffset;                // QAchecking RecPoints offset       
   Int_t   fTimeBinSize;                              // time bin width in number of clocks
   AliITSDDLModuleMapSDD  *fDDLModuleMap;      // SDD Detector configuration for the decoding
-  Bool_t fHLTMode;                            // kTRUE mode C kFALSE mode A 
-                                              // Used in online mode only
-  AliITSHLTforSDD *fHLTSDD;                   // used for offline QA as the HLT mode flag
-  ClassDef(AliITSQASDDDataMakerRec,7)         // description 
+
+  Bool_t fAnodeMap[fgknSDDmodules][fgknSide][fgknAnode];  // Array of anode status 1 = ok, 0 = bad
+  Int_t   fGoodAnodes;
+  Int_t   fBadAnodes;
+  Int_t   fGoodAnodesCurrent;
+  Int_t   fBadAnodesCurrent;
+  ClassDef(AliITSQASDDDataMakerRec,9)         // description 
 
 };