Added a dummy component into the sample library.
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCRawDataUnpackerComponent.h
1 // XEmacs -*-C++-*-
2 // @(#) $Id$
3
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                               */
8
9 /* AliHLTTPCRawDataUnpackerComponent
10  */
11
12 #include "AliHLTProcessor.h"
13 #include "AliHLTTPCDefinitions.h"
14
15 class AliRawReaderMemory;
16 class AliTPCRawStream;
17
18 class AliHLTTPCRawDataUnpackerComponent : public AliHLTProcessor
19     {
20     public:
21         AliHLTTPCRawDataUnpackerComponent();
22         virtual ~AliHLTTPCRawDataUnpackerComponent();
23
24         // Public functions to implement AliHLTComponent's interface.
25         // These functions are required for the registration process
26
27         const char* GetComponentID();
28         void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
29         AliHLTComponent_DataType GetOutputDataType();
30         virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
31         AliHLTComponent* Spawn();
32         
33     protected:
34         
35         // Protected functions to implement AliHLTComponent's interface.
36         // These functions provide initialization as well as the actual processing
37         // capabilities of the component. 
38
39         int DoInit( int argc, const char** argv );
40         int DoDeinit();
41         int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
42                      AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
43                      AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
44         
45     private:
46
47         // Initialize AliROOT TPC raw stream parsing class
48         AliRawReaderMemory *fRawMemoryReader;
49         AliTPCRawStream *fTPCRawStream;
50
51         ClassDef(AliHLTTPCRawDataUnpackerComponent, 0)
52
53     };
54 #endif