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 */
8 /** @file AliHLTSampleComponent1.h
9 @author Matthias Richter, Timm Steinbeck
11 @brief A sample processing component for the HLT. */
13 #include "AliHLTProcessor.h"
16 * @class AliHLTSampleComponent1
17 * @brief An HLT sample component
18 * @ingroup alihlt_tutorial
20 class AliHLTSampleComponent1 : public AliHLTProcessor {
22 AliHLTSampleComponent1();
23 virtual ~AliHLTSampleComponent1();
25 const char* GetComponentID() { return "Sample-component1";}
26 void GetInputDataTypes( vector<AliHLTComponentDataType>& list) {
27 const AliHLTComponentDataType* pType=inputDataTypes;
28 while (pType->fID!=0) {
29 list.push_back(*pType);
33 AliHLTComponentDataType GetOutputDataType() {return outputDataType;}
34 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ) {constBase = 0;inputMultiplier = 0;};
36 // Spawn function, return new class instance
37 AliHLTComponent* Spawn() {return new AliHLTSampleComponent1;};
41 int DoInit( int argc, const char** argv );
43 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
44 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
45 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
48 static const AliHLTComponentDataType inputDataTypes[];
49 static const AliHLTComponentDataType outputDataType;
51 ClassDef(AliHLTSampleComponent1, 0)