X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSQASSDDataMakerRec.h;h=378642544ad3928ec9258055b8adf91245e826ea;hb=0643f5a7dcd1eef82397ff958a7cc982e51c7351;hp=f2e68f88588641306a4addd473cd6a0537e2bde8;hpb=8c823e5a1743ee5bfe3e80ce7c94b65f6024b121;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSQASSDDataMakerRec.h b/ITS/AliITSQASSDDataMakerRec.h index f2e68f88588..378642544ad 100644 --- a/ITS/AliITSQASSDDataMakerRec.h +++ b/ITS/AliITSQASSDDataMakerRec.h @@ -1,8 +1,10 @@ -#ifndef AliITSQASSDDataMakerRec_H -#define AliITSQASSDDataMakerRec_H +#ifndef AliITSQASSDDATAMAKERREC_H +#define AliITSQASSDDATAMAKERREC_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 @@ -11,52 +13,80 @@ // W. Ferrarese + P. Cerello Feb 2008 // INFN Torino -#include "AliQA.h" -#include "AliITSQADataMakerRec.h" +#include "AliQAv1.h" +#include "AliQADataMakerRec.h" +class AliITSQADataMakerRec; class TObjArray; -class TH1D; -class AliRawReader; +class TH1F; +class AliRawReader; class AliITSQADataMakerRec; +class AliCDBManager; class AliITSQASSDDataMakerRec: public TObject { public: AliITSQASSDDataMakerRec(AliITSQADataMakerRec *aliITSQADataMakerRec, Bool_t kMode = kFALSE, Int_t ldc=0); //ctor - AliITSQASSDDataMakerRec(const AliITSQASSDDataMakerRec& qadm); - AliITSQASSDDataMakerRec& operator = (const AliITSQASSDDataMakerRec& 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 *digitsTree); + virtual Int_t MakeRecPoints(TTree *clustersTree); virtual void StartOfDetectorCycle(); - virtual void EndOfDetectorCycle(AliQA::TASKINDEX task, TObjArray * list); - virtual ~AliITSQASSDDataMakerRec() {;} // dtor - inline Int_t Raws() { return fSSDhRaws; } - inline Int_t Recs() { return fSSDhRecs; } + virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** /*list*/); + virtual ~AliITSQASSDDataMakerRec(); // dtor -private: + Int_t GetOffset(AliQAv1::TASKINDEX_t task,Int_t specie=0) const; + void SetOffset(AliQAv1::TASKINDEX_t task, Int_t offset, Int_t specie = 0); + Int_t GetTaskHisto(AliQAv1::TASKINDEX_t task); + void ResetRawsMonitoredObjects(); + void ResetDetector(AliQAv1::TASKINDEX_t task); + private: - Double_t GetSSDOccupancyRaws(TH1 *lHisto); + AliITSQASSDDataMakerRec(const AliITSQASSDDataMakerRec& qadm); + AliITSQASSDDataMakerRec& operator = (const AliITSQASSDDataMakerRec& qac); + void GetOccupancyStrip(TH1 *lHisto, Int_t *occupancyMatrix); + Double_t GetOccupancyModule(TH1 *lHisto, + Int_t stripside, + Int_t mode, + Double_t threshold); + void MonitorOCDBObjects(Int_t trCl=-1); + void MonitorCMValues(Int_t trCl=-1); + static const Int_t fgkNumOfLDCs = 8; //number of SSD LDCs + static const Int_t fgkNumOfDDLs = 16; //number of SSD DDLs static const Int_t fgkSSDMODULES = 1698; //total number of SSD modules + static const Int_t fgkSSDLADDERSLAYER5 = 34; //ladders on layer 5 + static const Int_t fgkSSDLADDERSLAYER6 = 38; //ladders on layer 6 + static const Int_t fgkSSDMODULESPERLADDERLAYER5 = 22; //modules per ladder - layer 5 + static const Int_t fgkSSDMODULESPERLADDERLAYER6 = 25; //modules per ladder - layer 6 static const Int_t fgkSSDMODULESLAYER5 = 748; //total number of SSD modules - layer5 static const Int_t fgkSSDMODULESLAYER6 = 950; //total number of SSD modules - layer6 - + static const Int_t fgkNumberOfPSideStrips = 768; //number of P-side strips + AliITSQADataMakerRec *fAliITSQADataMakerRec; //pointer to the main ctor Bool_t fkOnline; //online (1) or offline (0) use Int_t fLDC; //LDC number (0 for offline, 1 to 4 for online) - Int_t fSSDhRaws; // number of histo booked for Raws SSD - Int_t fSSDhRecs; // number of histo booked for Recs SSD - Int_t fRawsOffset; // number of histo booked when SSD start - Int_t fRecsOffset; // number of histo booked when SSD start - - TH1D *fHistSSDRawSignalModule[fgkSSDMODULES]; //raw signal vs strip number - SSD - ClassDef(AliITSQASSDDataMakerRec,1) // description + Int_t fSSDRawsOffset; //SSD raw data plot offset + Int_t fSSDRawsDAOffset; //SSD DA plot offset + Int_t fSSDRawsCommonLevelOffset; //Raw data QA - top level offset - histos used both online and offline + Int_t fSSDhRawsTask; //number of histo booked for the raws SSD task + Int_t fSSDhDigitsTask; //number of histo booked for the recpoints SSD task + Int_t fSSDhRecPointsTask; //number of histo booked for the recpoints SSD task + Int_t *fGenRawsOffset; //qachecking raws offset + Int_t *fGenDigitsOffset; //qachecking recpoints offset + Int_t *fGenRecPointsOffset; //qachecking recpoints offset + TH1F *fHistSSDRawSignalModule[fgkSSDMODULES]; //raw signal vs strip number - SSD + TH1F *fHistSSDCMModule[2*fgkSSDMODULES]; //SSD common mode noise + Int_t fOccupancyMatrix[fgkSSDMODULES][2*fgkNumberOfPSideStrips]; //occupancy values per strip + AliCDBManager *fCDBManager; //CDB manager + + ClassDef(AliITSQASSDDataMakerRec,7) // description }; #endif - -