1 #ifndef ALIHLTPHOSRAWANALYZERCOMPONENT_H
2 #define ALIHLTPHOSRAWANALYZERCOMPONENT_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"
14 class AliHLTPHOSRcuCellEnergyDataStruct;
17 class AliHLTPHOSRawAnalyzerComponent: public AliHLTProcessor
21 AliHLTPHOSRawAnalyzerComponent();
22 ~AliHLTPHOSRawAnalyzerComponent();
23 AliHLTPHOSRawAnalyzerComponent(const AliHLTPHOSRawAnalyzerComponent & );
24 AliHLTPHOSRawAnalyzerComponent & operator = (const AliHLTPHOSRawAnalyzerComponent &)
29 virtual int DoInit( int argc, const char** argv );
31 virtual int DoDeinit();
32 void DumpData(int gain);
34 void DumpChannelData(Double_t *data);
35 void SetEquippmentID(AliHLTUInt32_t id);
36 int GetEquippmentID();
37 void SetCoordinates( AliHLTUInt32_t equippmentID);
38 virtual const char* GetComponentID() = 0;
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() = 0;
43 virtual int DoEvent(const AliHLTComponentEventData&, const AliHLTComponentBlockData*, AliHLTComponentTriggerData&, AliHLTUInt8_t*, AliHLTUInt32_t&, std::vector<AliHLTComponentBlockData, std::allocator<AliHLTComponentBlockData> >&);
46 AliHLTPHOSRawAnalyzer *analyzerPtr;
51 void ResetDataPtr(int sampleCnt);
52 void ResetDataPtr(int startindex, int sampleCnt);
53 static int fEventCount;
54 AliHLTUInt32_t fEquippmentID;
57 AliHLTUInt16_t fRcuRowOffeset;
58 AliHLTUInt16_t fRcuColOffeset;
59 AliHLTUInt16_t fModuleID;
60 Double_t fTmpChannelData[ALTRO_MAX_SAMPLES];
61 Double_t fMaxValues[N_MODULES][N_ROWS_MOD][N_COLUMNS_MOD][N_GAINS];
62 AliCaloRawStream *fPHOSRawStream;
63 AliRawReaderMemory *fRawMemoryReader;
64 AliHLTPHOSRcuCellEnergyDataStruct* fOutPtr;
65 static const AliHLTComponentDataType inputDataTypes[];