]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTTPCRawDataUnpackerComponent.h
update
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCRawDataUnpackerComponent.h
CommitLineData
71d7c760 1// XEmacs -*-C++-*-
2// @(#) $Id$
3
4#ifndef ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
5#define ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
297174de 6//* This file is property of and copyright by the ALICE HLT Project *
7//* ALICE Experiment at CERN, All rights reserved. *
8//* See cxx source for full Copyright notice *
71d7c760 9
10#include "AliHLTProcessor.h"
71d7c760 11
12class AliRawReaderMemory;
13class AliTPCRawStream;
14
e67b0680 15/**
16 * @class AliHLTTPCRawDataUnpackerComponent
17 * Unpacker component for TPC RAW data.
297174de 18 *
19 * @note Old remnant and never used in the new online interface. Became
20 * obsolete with the introduction of DigitReaders. Maybe we want to
21 * convert this component into a tool.
22 * @ingroup alihlt_tpc_components
e67b0680 23 */
71d7c760 24class AliHLTTPCRawDataUnpackerComponent : public AliHLTProcessor
25 {
26 public:
27 AliHLTTPCRawDataUnpackerComponent();
28 virtual ~AliHLTTPCRawDataUnpackerComponent();
29
30 // Public functions to implement AliHLTComponent's interface.
31 // These functions are required for the registration process
32
33 const char* GetComponentID();
8ede8717 34 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
35 AliHLTComponentDataType GetOutputDataType();
71d7c760 36 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
37 AliHLTComponent* Spawn();
a655eae3 38
71d7c760 39 protected:
40
41 // Protected functions to implement AliHLTComponent's interface.
42 // These functions provide initialization as well as the actual processing
43 // capabilities of the component.
44
45 int DoInit( int argc, const char** argv );
46 int DoDeinit();
8ede8717 47 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
48 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
49 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
5d2abf3b 50
51 using AliHLTProcessor::DoEvent;
71d7c760 52
53 private:
8f8bf0af 54 /** copy constructor prohibited */
e419b223 55 AliHLTTPCRawDataUnpackerComponent(const AliHLTTPCRawDataUnpackerComponent&);
8f8bf0af 56 /** assignment operator prohibited */
e419b223 57 AliHLTTPCRawDataUnpackerComponent& operator=(const AliHLTTPCRawDataUnpackerComponent&);
71d7c760 58
59 // Initialize AliROOT TPC raw stream parsing class
e67b0680 60 AliRawReaderMemory *fRawMemoryReader; //! transient
61 AliTPCRawStream *fTPCRawStream; //! transient
71d7c760 62
e67b0680 63 ClassDef(AliHLTTPCRawDataUnpackerComponent, 0);
71d7c760 64
65 };
66#endif