4 #ifndef ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
5 #define ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
9 /* AliHLTTPCRawDataUnpackerComponent
12 #include "AliHLTProcessor.h"
13 #include "AliHLTTPCDefinitions.h"
15 class AliRawReaderMemory;
16 class AliTPCRawStream;
18 class AliHLTTPCRawDataUnpackerComponent : public AliHLTProcessor
21 AliHLTTPCRawDataUnpackerComponent();
22 virtual ~AliHLTTPCRawDataUnpackerComponent();
24 // Public functions to implement AliHLTComponent's interface.
25 // These functions are required for the registration process
27 const char* GetComponentID();
28 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
29 AliHLTComponentDataType GetOutputDataType();
30 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
31 AliHLTComponent* Spawn();
35 // Protected functions to implement AliHLTComponent's interface.
36 // These functions provide initialization as well as the actual processing
37 // capabilities of the component.
39 int DoInit( int argc, const char** argv );
41 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
42 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
43 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
47 // Initialize AliROOT TPC raw stream parsing class
48 AliRawReaderMemory *fRawMemoryReader;
49 AliTPCRawStream *fTPCRawStream;
51 ClassDef(AliHLTTPCRawDataUnpackerComponent, 0)