]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSDDLDecoderComponent.h
ce8d84f6655901d8da72b89fea32b9cdd85876b9
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSDDLDecoderComponent.h
1 // 1
2 // 2
3 // 3
4 // 4
5 // 5
6 #ifndef ALIHLTPHOSDDLDECODERCOMPONENT_H
7 #define ALIHLTPHOSDDLDECODERCOMPONENT_H
8
9 /* Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. *
10  * See cxx source for full Copyright notice                          */
11
12 #include "AliHLTPHOSRcuProcessor.h"
13
14
15
16 class AliHLTPHOSRcuCellEnergyDataStruct;
17 class AliHLTPHOSRcuChannelDataStruct;
18 class AliHLTPHOSPulseGenerator;
19 class AliHLTPHOSDataCorruptor;
20 class AliHLTDDLDecoder;
21 class AliHLTAltroData;
22 class AliHLTPHOSMapper;
23
24
25
26 class AliHLTPHOSDDLDecoderComponent:public AliHLTPHOSRcuProcessor
27 {
28  public:
29   AliHLTPHOSDDLDecoderComponent();
30   virtual ~AliHLTPHOSDDLDecoderComponent();
31   virtual int DoInit( int argc, const char** argv );
32   virtual int Deinit();
33   virtual const char* GetComponentID();
34   virtual void GetInputDataTypes( vector <AliHLTComponentDataType>& list);
35   virtual AliHLTComponentDataType GetOutputDataType();
36   virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier);
37   virtual AliHLTComponent* Spawn();
38   
39   virtual int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, 
40                      AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, 
41                      AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks ); 
42
43  protected:
44   using AliHLTPHOSRcuProcessor::DoEvent;
45
46  private:
47   AliHLTPHOSDataCorruptor *fDataCorruptorPtr;                  /**<Pointer to data corruptor*/
48   Double_t fTmpChannelData[ALTRO_MAX_SAMPLES];                 /**<Temporary storage for altro dat from a single channel*/
49   AliHLTPHOSRcuChannelDataStruct*  fOutPtr;                    /**<Pointer to outputbuffer to write results from the component into shared memory*/
50   AliHLTDDLDecoder *fDecoderPtr; //comment
51   AliHLTAltroData *fAltroDataPtr; //comment
52   AliHLTPHOSMapper   *fMapperPtr; //comment
53 };
54 #endif
55