X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=TRD%2FAliTRDCalibPadStatus.h;h=e97bd3417d4eaa4aa82fdeae7e661a4ee35632f0;hp=5c36ff423805b7d8f150316b760f05f599bb8418;hb=a5b99acdc2e981f5cb0859d587f422cc49edb6c4;hpb=170c35f116f38eb467d25d0c5e7819974ff818ee diff --git a/TRD/AliTRDCalibPadStatus.h b/TRD/AliTRDCalibPadStatus.h index 5c36ff42380..e97bd3417d4 100644 --- a/TRD/AliTRDCalibPadStatus.h +++ b/TRD/AliTRDCalibPadStatus.h @@ -1,4 +1,4 @@ -#ifndef ALITPCCALIBPEDESTAL_H +#ifndef ALITRDCALIBPADSTATUS_H #define ALITRDCALIBPADSTATUS_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ @@ -13,12 +13,16 @@ class TObjArray; class TH2F; -class TTreeSRedirector; + +class AliRawReader; + +class AliTRDCalDet; +class AliTRDCalPad; class AliTRDCalROC; class AliTRDCalPadStatus; -class AliTRDRawStream; -class AliTRDarrayF; -class AliRawReader; +class AliTRDrawStreamBase; +class AliTRDgeometry; + struct eventHeaderStruct; class AliTRDCalibPadStatus : public TObject { @@ -31,27 +35,35 @@ public: AliTRDCalibPadStatus& operator = (const AliTRDCalibPadStatus &source); - Bool_t ProcessEvent(AliTRDRawStream *rawStream); - Bool_t ProcessEvent(AliRawReader *rawReader); - Bool_t ProcessEvent(eventHeaderStruct *event); + Int_t ProcessEvent(AliTRDrawStreamBase *rawStream, Bool_t nocheck = kFALSE); + Int_t ProcessEvent(AliRawReader *rawReader, Bool_t nocheck = kFALSE); + Int_t ProcessEvent(eventHeaderStruct *event, Bool_t nocheck = kFALSE); - Int_t Update(const Int_t idet, const Int_t iRow, const Int_t iCol, - const Int_t signal, const Int_t rowMax); + void Destroy(); Int_t UpdateHisto(const Int_t idet, const Int_t iRow, const Int_t iCol, - const Int_t signal, const Int_t crowMax); - void Analyse(); + const Int_t signal, const Int_t crowMax, const Int_t ccold, const Int_t icMcm); + void AnalyseHisto(); AliTRDCalPadStatus *CreateCalPadStatus(); + AliTRDCalPad *CreateCalPad(); + AliTRDCalDet *CreateCalDet() const; + + void SetCalRocMean(AliTRDCalROC *mean, Int_t det); + void SetCalRocRMS(AliTRDCalROC *rms, Int_t det); + + void SetCalRocMeand(AliTRDCalROC *mean, Int_t det); + void SetCalRocRMSd(AliTRDCalROC *rms, Int_t det); + // - AliTRDarrayF* GetCalEntries(Int_t det, Bool_t force=kFALSE); // get calibration object - AliTRDarrayF* GetCalMean(Int_t det, Bool_t force=kFALSE); // get calibration object - AliTRDarrayF* GetCalSquares(Int_t det, Bool_t force=kFALSE); // get calibration object AliTRDCalROC* GetCalRocMean(Int_t det, Bool_t force=kFALSE); // get calibration object AliTRDCalROC* GetCalRocRMS(Int_t det, Bool_t force=kFALSE); // get calibration object + AliTRDCalROC* GetCalRocMeand(Int_t det, Bool_t force=kFALSE); // get calibration object + AliTRDCalROC* GetCalRocRMSd(Int_t det, Bool_t force=kFALSE); // get calibration object + TH2F* GetHisto (Int_t det, Bool_t force=kFALSE); // get refernce histogram - void DumpToFile(const Char_t *filename, const Char_t *dir="", const Bool_t append=kFALSE); + void DumpToFile(const Char_t *filename, const Char_t *dir="", Bool_t append=kFALSE); // Int_t GetAdcMin() const { return fAdcMin; } Int_t GetAdcMax() const { return fAdcMax; } @@ -59,49 +71,40 @@ public: void SetRangeAdc (Int_t aMin, Int_t aMax){ fAdcMin=aMin; fAdcMax=aMax; } // Set adc range - Bool_t TestEvent(Int_t nevent); //test the fast approach to fill array - used for test purposes - Bool_t TestEventHisto(Int_t nevent); //test the fast approach to fill histograms + Bool_t TestEventHisto(Int_t nevent, Int_t sm, Int_t ch); //test the fast approach to fill histograms -private: + private: + + // Geometry + AliTRDgeometry *fGeo; //! The TRD geometry Int_t fAdcMin; // min adc channel of pedestal value Int_t fAdcMax; // max adc channel of pedestal value Int_t fDetector; // Current detector + Int_t fNumberOfTimeBins; // Current number of time bins - TObjArray fCalArrayEntries; // Array of AliTRDarrayF class calibration - TObjArray fCalArrayMean; // Array of AliTRDarrayF class calibration - TObjArray fCalArraySquares; // Array of AliTRDarrayF class calibration TObjArray fCalRocArrayMean; // Array of AliTRDCalROC class for signal width calibration TObjArray fCalRocArrayRMS; // Array of AliTRDCalROC class for mean width calibration + TObjArray fCalRocArrayMeand; // Array of AliTRDCalROC class for signal width calibration doubled + TObjArray fCalRocArrayRMSd; // Array of AliTRDCalROC class for mean width calibration doubled + TObjArray fHistoArray; // Array of histos for mean width calibration - AliTRDarrayF *fCalEntries; // Current AliTRDArrayF entries - AliTRDarrayF *fCalMean; // Current AliTRDArrayF Mean - AliTRDarrayF *fCalSquares; // Current AliTRDArrayF Squares - - AliTRDarrayF* GetCalEntries(Int_t det, TObjArray* arr, Bool_t force); - AliTRDarrayF* GetCalMean(Int_t det, TObjArray* arr, Bool_t force); - AliTRDarrayF* GetCalSquares(Int_t det, TObjArray* arr, Bool_t force); - AliTRDCalROC* GetCalRocMean(Int_t det, TObjArray* arr, Bool_t force); - AliTRDCalROC* GetCalRocRMS(Int_t det, TObjArray* arr, Bool_t force); - + + AliTRDCalROC* GetCalRoc(Int_t det, TObjArray* arr, Bool_t force); + TH2F* GetHisto(Int_t det, TObjArray *arr, Int_t nbinsY, Float_t ymin, Float_t ymax, - Char_t *type, Bool_t force); + const Char_t *type, Bool_t force); // Some basic geometry function - virtual Int_t GetPlane(Int_t d) const; - virtual Int_t GetChamber(Int_t d) const; + virtual Int_t GetLayer(Int_t d) const; + virtual Int_t GetStack(Int_t d) const; virtual Int_t GetSector(Int_t d) const; -public: - ClassDef(AliTRDCalibPadStatus,1) }; - - - #endif