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