-// @(#) $Id$
+// $Id$
#ifndef ALIHLTSAMPLECOMPONENT2_H
#define ALIHLTSAMPLECOMPONENT2_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
-/* AliHLTSampleComponent2
- */
+/// @file AliHLTSampleComponent2.h
+/// @author Matthias Richter, Timm Steinbeck
+/// @date
+/// @brief Another sample processing component for the HLT.
+///
#include "AliHLTProcessor.h"
+/**
+ * @class AliHLTSampleComponent2
+ * @brief An HLT sample component.
+ * This component does not any data processing at all. It just
+ * illustrates the existence of several components in ine library and
+ * allows to set up a very simple chain with different components.
+ * @ingroup alihlt_tutorial
+ */
class AliHLTSampleComponent2 : public AliHLTProcessor {
public:
AliHLTSampleComponent2();
virtual ~AliHLTSampleComponent2();
const char* GetComponentID() { return "Sample-component2";}
- void GetInputDataTypes( vector<AliHLTComponent_DataType>& list) {
- const AliHLTComponent_DataType* pType=inputDataTypes;
- while (pType->fID!=0) {
- list.push_back(*pType);
- pType++;
- }
+ void GetInputDataTypes( AliHLTComponentDataTypeList& list) {
+ list.push_back(kAliHLTAnyDataType);
}
- AliHLTComponent_DataType GetOutputDataType() {return outputDataType;}
+ AliHLTComponentDataType GetOutputDataType() {return kAliHLTVoidDataType;}
+ virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier ) {constBase = 0;inputMultiplier = 0;};
// Spawn function, return new class instance
AliHLTComponent* Spawn() {return new AliHLTSampleComponent2;};
int DoInit( int argc, const char** argv );
int DoDeinit();
- int DoEvent( AliHLTComponent_EventData evtData, AliHLTComponent_BlockData* blocks,
- AliHLTComponent_TriggerData trigData, AliHLTUInt8_t* outputPtr,
- AliHLTUInt32_t* size, vector<AliHLTComponent_BlockData>& outputBlocks );
+ int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
+ AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
+ AliHLTUInt32_t& size, AliHLTComponentBlockDataList& outputBlocks );
+
+ using AliHLTProcessor::DoEvent;
private:
- static const AliHLTComponent_DataType inputDataTypes[];
- static const AliHLTComponent_DataType outputDataType;
ClassDef(AliHLTSampleComponent2, 0)
};