2 // $Id: AliHLTTPCCompModelDeconverterComponent.h,v 1.2 2006/08/10 09:46:51 richterm Exp $
4 #ifndef ALIHLTTPCCOMPMODELDECONVERTERCOMPONENT_H
5 #define ALIHLTTPCCOMPMODELDECONVERTERCOMPONENT_H
6 /* TPCCompModelDeconverterright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full TPCCompModelDeconverterright notice */
9 /** @file AliHLTTPCCompModelDeconverterComponent.h
10 @author Timm Steinbeck
12 @brief Declaration of a copy component. */
15 #include "AliHLTProcessor.h"
16 #include "AliHLTTPCCompModelDeconverter.h"
19 * @class AliHLTTPCCompModelDeconverterComponent
20 * @brief A dummy HLT processing component.
22 * An implementiation of a copy component that just copies its input data
23 * to debug a components input data
24 * @ingroup alihlt_tutorial
26 class AliHLTTPCCompModelDeconverterComponent : public AliHLTProcessor
30 /** standard constructor */
31 AliHLTTPCCompModelDeconverterComponent();
32 /** standard deconstructor */
33 virtual ~AliHLTTPCCompModelDeconverterComponent();
35 // Public functions to implement AliHLTComponent's interface.
36 // These functions are required for the registration process
38 /** function to get component id
39 * @return const char* pointer to componentid
41 const char* GetComponentID();
43 /** function to get input data types
44 * @param list vecotr of AliHLTComponent_DataType
46 void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
48 /** function to get output data type
49 * @return AliHLTComponent_DataType
51 AliHLTComponent_DataType GetOutputDataType();
53 /** function to get output data size
54 * @param constBase address of an unsigned long
55 * @param inputMultiplier address of a double
57 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
60 * @return AliHLTComponent* pointer to instance
62 AliHLTComponent* Spawn();
66 // Protected functions to implement AliHLTComponent's interface.
67 // These functions provide initialization as well as the actual processing
68 // capabilities of the component.
70 /** initialisation function
71 * @param argc integer counting number of input arguments
72 * @param argv const char** for parameter values
73 * @return zero upon success
75 int DoInit( int argc, const char** argv );
77 /** deinitialisation function
78 * @return zero upon success
83 * @param evt Data const AliHLTComponent_EventData& to event data
84 * @param blocks const AliHLTComponent_BlockData* to blocks of event data
85 * @param trigData AliHLTComponent_TriggerData& of trigger data
86 * @param outputPtr AliHLTUInt8_t* pointer to output data
87 * @param size AliHLTUInt32_t& of output size
88 * @param outputBlocks vector<AliHLTComponent_BlockData>& of output block data
89 * @return zero upon success
91 int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks,
92 AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr,
93 AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
95 /** member variable for instance of deconverter class */
96 AliHLTTPCCompModelDeconverter fDeconverter;
97 /** memeber varible for output tracks */
102 ClassDef(AliHLTTPCCompModelDeconverterComponent, 0)