4 #ifndef ALIHLTDUMMYCOMPONENT_H
5 #define ALIHLTDUMMYCOMPONENT_H
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
9 /* AliHLTDummyComponent
10 ** An implementiation of a dummy component that just copies its input data
11 ** as a test, demonstration, and example of the new HLT component system.
14 #include "AliHLTProcessor.h"
16 class AliHLTDummyComponent : public AliHLTProcessor
19 AliHLTDummyComponent();
20 virtual ~AliHLTDummyComponent();
22 // Public functions to implement AliHLTComponent's interface.
23 // These functions are required for the registration process
25 const char* GetComponentID();
26 void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
27 AliHLTComponent_DataType GetOutputDataType();
28 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
29 AliHLTComponent* Spawn();
33 // Protected functions to implement AliHLTComponent's interface.
34 // These functions provide initialization as well as the actual processing
35 // capabilities of the component.
37 int DoInit( int argc, const char** argv );
39 int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks,
40 AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr,
41 AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
45 // The size of the output data produced, as a percentage of the input data's size.
46 // Can be greater than 100 (%)
47 unsigned fOutputPercentage;
49 ClassDef(AliHLTDummyComponent, 0)