]>
Commit | Line | Data |
---|---|---|
c5318542 | 1 | // @(#) $Id$ |
2 | ||
3 | #ifndef ALIHLTSAMPLECOMPONENT1_H | |
4 | #define ALIHLTSAMPLECOMPONENT1_H | |
5 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
6 | * See cxx source for full Copyright notice */ | |
7 | ||
b22e91eb | 8 | /** @file AliHLTSampleComponent1.h |
9 | @author Matthias Richter, Timm Steinbeck | |
10 | @date | |
11 | @brief A sample processing component for the HLT. */ | |
c5318542 | 12 | |
13 | #include "AliHLTProcessor.h" | |
14 | ||
b22e91eb | 15 | /** |
16 | * @class AliHLTSampleComponent1 | |
aa7f26de | 17 | * @brief An HLT sample component. |
18 | * This component does not any data processing at all. It just | |
19 | * illustrates the existence of several components in ine library and | |
20 | * allows to set up a very simple chain with different components. | |
b22e91eb | 21 | * @ingroup alihlt_tutorial |
22 | */ | |
c5318542 | 23 | class AliHLTSampleComponent1 : public AliHLTProcessor { |
24 | public: | |
25 | AliHLTSampleComponent1(); | |
26 | virtual ~AliHLTSampleComponent1(); | |
27 | ||
28 | const char* GetComponentID() { return "Sample-component1";} | |
8ede8717 | 29 | void GetInputDataTypes( vector<AliHLTComponentDataType>& list) { |
f644d3f1 | 30 | const AliHLTComponentDataType* pType=fgInputDataTypes; |
c5318542 | 31 | while (pType->fID!=0) { |
32 | list.push_back(*pType); | |
33 | pType++; | |
34 | } | |
35 | } | |
f644d3f1 | 36 | AliHLTComponentDataType GetOutputDataType() {return kAliHLTVoidDataType;} |
71d7c760 | 37 | virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ) {constBase = 0;inputMultiplier = 0;}; |
c5318542 | 38 | |
39 | // Spawn function, return new class instance | |
40 | AliHLTComponent* Spawn() {return new AliHLTSampleComponent1;}; | |
41 | ||
42 | protected: | |
43 | ||
44 | int DoInit( int argc, const char** argv ); | |
45 | int DoDeinit(); | |
8ede8717 | 46 | int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, |
47 | AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, | |
48 | AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks ); | |
c5318542 | 49 | |
50 | private: | |
f644d3f1 | 51 | /** array of input data types */ |
52 | static const AliHLTComponentDataType fgInputDataTypes[]; // see above | |
c5318542 | 53 | |
54 | ClassDef(AliHLTSampleComponent1, 0) | |
55 | }; | |
56 | #endif |