]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/BASE/AliHLTProcessor.h
Added a dummy component into the sample library.
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTProcessor.h
1 // @(#) $Id$
2
3 #ifndef ALIHLTPROCESSOR_H
4 #define ALIHLTPROCESSOR_H
5 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6  * See cxx source for full Copyright notice                               */
7
8 /* AliHLTProcessor
9    base class for HLT processing components
10  */
11
12 #include "AliHLTComponent.h"
13
14 class AliHLTProcessor : public AliHLTComponent {
15  public:
16   AliHLTProcessor();
17   virtual ~AliHLTProcessor();
18
19   int Init( AliHLTComponentEnvironment* environ, void* environ_param, int argc, const char** argv );
20   int Deinit();
21   int ProcessEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
22                     AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
23                     AliHLTUInt32_t& size, AliHLTUInt32_t& outputBlockCnt, 
24                     AliHLTComponent_BlockData*& outputBlocks,
25                     AliHLTComponent_EventDoneData*& edd );
26
27   // Information member functions for registration.
28   TComponentType GetComponentType() { return AliHLTComponent::kProcessor;}
29
30  private:
31   virtual int DoInit( int argc, const char** argv ){
32     return 0;
33   }
34
35   virtual int DoDeinit(){
36     return 0;
37   }
38   virtual int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
39                        AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
40                        AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks ) = 0;
41
42
43   ClassDef(AliHLTProcessor, 0)
44 };
45 #endif