#ifndef ALIHLTPHOSHISTOGRAMPRODUCERCOMPONENT_H #define ALIHLTPHOSHISTOGRAMPRODUCERCOMPONENT_H /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ #include "AliHLTPHOSProcessor.h" #include "AliHLTPHOSDefinitions.h" #include "AliHLTPHOSCommonDefs.h" class AliHLTPHOSModuleCellAccumulatedEnergyDataStruct; class AliHLTPHOSHistogramProducerComponent:public AliHLTPHOSProcessor { public: AliHLTPHOSHistogramProducerComponent(); virtual ~AliHLTPHOSHistogramProducerComponent(); AliHLTPHOSHistogramProducerComponent(const AliHLTPHOSHistogramProducerComponent & ); AliHLTPHOSHistogramProducerComponent & operator = (const AliHLTPHOSHistogramProducerComponent &) { return *this; }; virtual int DoInit( int argc = 0, const char** argv = 0); virtual int Deinit(); virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, AliHLTUInt32_t& size, vector& outputBlocks ); void DumpData(int gain = 0); virtual const char* GetComponentID(); virtual void GetInputDataTypes( vector & list); virtual AliHLTComponentDataType GetOutputDataType(); virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier); virtual AliHLTComponent* Spawn(); protected: void Reset(); void ResetDataPtr(); private: Double_t fEnergyAverageValues[N_ZROWS_MOD][N_XCOLUMNS_MOD][N_GAINS]; /**