]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/SampleLib/AliHLTDummyComponent.h
- added default CDB initialization to AliHLTComponent: CDB storage and
[u/mrichter/AliRoot.git] / HLT / SampleLib / AliHLTDummyComponent.h
CommitLineData
b22e91eb 1// $Id$
71d7c760 2
3#ifndef ALIHLTDUMMYCOMPONENT_H
4#define ALIHLTDUMMYCOMPONENT_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 AliHLTDummyComponent.h
9 @author Timm Steinbeck, Matthias Richter
10 @date
11 @brief Declaration of a dummy component. */
12
f32b83e1 13// see below for class documentation
14// or
15// refer to README to build package
16// or
17// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
71d7c760 18
19#include "AliHLTProcessor.h"
20
b22e91eb 21/**
22 * @class AliHLTDummyComponent
23 * @brief A dummy HLT processing component.
24 *
25 * An implementiation of a dummy component that just copies its input data
26 * as a test, demonstration, and example of the HLT component scheme.
27 * @ingroup alihlt_tutorial
28 */
71d7c760 29class AliHLTDummyComponent : public AliHLTProcessor
30 {
31 public:
32 AliHLTDummyComponent();
33 virtual ~AliHLTDummyComponent();
34
35 // Public functions to implement AliHLTComponent's interface.
36 // These functions are required for the registration process
37
38 const char* GetComponentID();
8ede8717 39 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
40 AliHLTComponentDataType GetOutputDataType();
71d7c760 41 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
42 AliHLTComponent* Spawn();
43
44 protected:
45
46 // Protected functions to implement AliHLTComponent's interface.
47 // These functions provide initialization as well as the actual processing
48 // capabilities of the component.
49
50 int DoInit( int argc, const char** argv );
51 int DoDeinit();
8ede8717 52 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
53 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
54 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
71d7c760 55
d76bc02a 56 using AliHLTProcessor::DoEvent;
57
71d7c760 58 private:
59
c7500dae 60 /** The size of the output data produced, as a percentage of the input data's size.
61 Can be greater than 100 (%) */
62 unsigned fOutputPercentage; // see above
71d7c760 63
64 ClassDef(AliHLTDummyComponent, 0)
65
66 };
67#endif