]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIHLTPHOSRAWANALYZERCOMPONENT_H | |
2 | #define ALIHLTPHOSRAWANALYZERCOMPONENT_H | |
3 | ||
4 | /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | #include "AliHLTPHOSRcuProcessor.h" | |
7 | ||
8 | class AliHLTPHOSRawAnalyzer; | |
9 | class AliHLTPHOSRcuCellEnergyDataStruct; | |
10 | class AliHLTPHOSRcuChannelDataStruct; | |
11 | class AliHLTPHOSMapper; | |
12 | class AliHLTDDLDecoder; | |
13 | class AliHLTAltroData; | |
14 | class AliHLTAltroBunch; | |
15 | ||
16 | class AliHLTPHOSRawAnalyzerComponent: public AliHLTPHOSRcuProcessor | |
17 | { | |
18 | public: | |
19 | AliHLTPHOSRawAnalyzerComponent(); | |
20 | virtual ~AliHLTPHOSRawAnalyzerComponent(); | |
21 | virtual int DoInit(int argc =0, const char** argv = 0); | |
22 | virtual int Deinit(); | |
23 | virtual const char* GetComponentID() = 0; | |
24 | virtual void GetInputDataTypes( vector <AliHLTComponentDataType>& list); | |
25 | virtual AliHLTComponentDataType GetOutputDataType(); | |
26 | virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier); | |
27 | virtual AliHLTComponent* Spawn() = 0; | |
28 | protected: | |
29 | AliHLTPHOSRawAnalyzer *fAnalyzerPtr; /**<Pointer to an analyzer object used for raw data anlysis*/ | |
30 | ||
31 | private: | |
32 | virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, | |
33 | AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, | |
34 | AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks ); | |
35 | void Reset(); | |
36 | void ResetDataPtr(int startindex = 0, int sampleCnt = 0); | |
37 | Bool_t fSendChannelData; /**<wether or not to send raw data from the component into shared memory*/ | |
38 | Double_t fTmpChannelData[ALTRO_MAX_SAMPLES]; /**<temporary variable to store raw samples from a single altro channel*/ | |
39 | Double_t fMaxValues[N_MODULES][N_ZROWS_MOD][N_XCOLUMNS_MOD][N_GAINS]; /**<array to store cell energies*/ | |
40 | AliHLTPHOSRcuCellEnergyDataStruct* fOutPtr; /**<Pointer to outputbuffer to write results from the component into shared memory*/ | |
41 | AliHLTPHOSMapper *fMapperPtr; | |
42 | AliHLTDDLDecoder *fDecoderPtr; | |
43 | AliHLTAltroData *fAltroDataPtr; | |
44 | AliHLTAltroBunch *fAltroBunchPtr; | |
45 | }; | |
46 | #endif | |
47 |