//-*- Mode: C++ -*- // $Id$ // 1 // 2 // 3 // 4 // 5 #ifndef ALIHLTPHOSRCUHISTOGRAMPRODUCER_H #define ALIHLTPHOSRCUHISTOGRAMPRODUCER_H /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ #include "AliHLTPHOSDefinitions.h" #include "TH1.h" #include "TH2D.h" #include "AliHLTPHOSRcuCellAccumulatedEnergyDataStruct.h" //#include "AliHLTPHOSBase.h" #include "AliHLTPHOSRcuProcessor.h" class TH1; class TH2D; class AliHLTPHOSRcuCellAccumulatedEnergyDataStruct; //class AliHLTPHOSUtilities; #define XBINLOW 0 #define XBINUP 1023 #define NBINS 1023 class AliHLTPHOSRcuCalibrationProcessor : public AliHLTPHOSBase //class AliHLTPHOSRcuCalibrationProcessor : public AliHLTPHOSRcuProcessor { public: // AliHLTPHOSRcuCalibrationProcessor(); AliHLTPHOSRcuCalibrationProcessor(AliHLTUInt8_t moduleID, AliHLTUInt8_t rcuX, AliHLTUInt8_t rcuZ); virtual ~AliHLTPHOSRcuCalibrationProcessor(); const AliHLTPHOSRcuCellAccumulatedEnergyDataStruct& GetCellAccumulatedEnergies(); void Init(); void SetHistoOutDir(char *outDir); void FillEnergy(AliHLTUInt8_t x, AliHLTUInt8_t z, AliHLTUInt8_t gain, float energy); void FillTime(AliHLTUInt8_t x, AliHLTUInt8_t z, AliHLTUInt8_t gain, float time); void FillLiveChannels(Int_t data[], int size, Int_t x, Int_t z, Int_t gain); void FillLiveChannelHistograms(); void Reset(); void WriteAllHistograms(char opt[] = "update"); protected: private: AliHLTPHOSRcuCalibrationProcessor(); AliHLTPHOSRcuCalibrationProcessor(const AliHLTPHOSRcuCalibrationProcessor & ); AliHLTPHOSRcuCalibrationProcessor & operator = (const AliHLTPHOSRcuCalibrationProcessor &); void SetDefaultHistoOutDir(); void ScanTimeString(char *timeString); char fHistoOutDir[512]; TH1F *fEnergyHistogramPtrs[NXCOLUMNSRCU][NZROWSRCU][NGAINS]; /**