1 #ifndef ALIHLTPHOSDDLDECODERCOMPONENT_H
2 #define ALIHLTPHOSDDLDECODERCOMPONENT_H
4 /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 #include "AliHLTProcessor.h"
8 #include "AliHLTPHOSRawAnalyzer.h"
9 #include "AliRawReaderMemory.h"
10 #include "AliCaloRawStream.h"
11 #include "AliHLTPHOSDefinitions.h"
12 #include "AliHLTPHOSCommonDefs.h"
13 #include "AliHLTPHOSRcuChannelDataStruct.h"
15 class AliHLTPHOSRcuCellEnergyDataStruct;
16 class AliHLTPHOSRcuChannelDataStruct;
18 class AliHLTPHOSDDLDecoderComponent:public AliHLTProcessor
24 AliHLTPHOSDDLDecoderComponent();
25 virtual ~AliHLTPHOSDDLDecoderComponent();
26 AliHLTPHOSDDLDecoderComponent(const AliHLTPHOSDDLDecoderComponent & );
27 AliHLTPHOSDDLDecoderComponent & operator = (const AliHLTPHOSDDLDecoderComponent &)
32 virtual int DoInit( int argc, const char** argv );
34 virtual int DoDeinit();
35 void SetEquippmentID(AliHLTUInt16_t id);
36 AliHLTUInt16_t GetEquippmentID();
37 void SetCoordinates(AliHLTUInt16_t equippmentID);
38 virtual const char* GetComponentID();
39 virtual void GetInputDataTypes(std::vector<AliHLTComponentDataType, std::allocator<AliHLTComponentDataType> >&);
40 virtual AliHLTComponentDataType GetOutputDataType();
41 virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
42 virtual AliHLTComponent* Spawn();
44 virtual int DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*, AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&, std::vector<AliHLTComponentBlockData, std::allocator<AliHLTComponentBlockData> >&);
47 static int fgEventCount;
48 AliHLTUInt16_t fEquippmentID;
51 AliHLTUInt8_t fRcuZOffset;
52 AliHLTUInt8_t fRcuXOffset;
53 AliHLTUInt8_t fModuleID;
54 Bool_t fSendChannelData;
56 Double_t fTmpChannelData[ALTRO_MAX_SAMPLES];
57 int fPrintInfoFrequncy;
58 AliCaloRawStream *fPHOSRawStream;
59 AliRawReaderMemory *fRawMemoryReader;
60 AliHLTPHOSRcuChannelDataStruct* fOutPtr;
61 static const AliHLTComponentDataType fgkInputDataTypes[];