]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - HLT/TPCLib/AliHLTTPCRawDataUnpackerComponent.h
update
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCRawDataUnpackerComponent.h
... / ...
CommitLineData
1// XEmacs -*-C++-*-
2// @(#) $Id$
3
4#ifndef ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
5#define ALIHLTTPCRAWDATAUNPACKERCOMPONENT_H
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 *
9
10#include "AliHLTProcessor.h"
11
12class AliRawReaderMemory;
13class AliTPCRawStream;
14
15/**
16 * @class AliHLTTPCRawDataUnpackerComponent
17 * Unpacker component for TPC RAW data.
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
23 */
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();
34 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
35 AliHLTComponentDataType GetOutputDataType();
36 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
37 AliHLTComponent* Spawn();
38
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();
47 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
48 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
49 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
50
51 using AliHLTProcessor::DoEvent;
52
53 private:
54 /** copy constructor prohibited */
55 AliHLTTPCRawDataUnpackerComponent(const AliHLTTPCRawDataUnpackerComponent&);
56 /** assignment operator prohibited */
57 AliHLTTPCRawDataUnpackerComponent& operator=(const AliHLTTPCRawDataUnpackerComponent&);
58
59 // Initialize AliROOT TPC raw stream parsing class
60 AliRawReaderMemory *fRawMemoryReader; //! transient
61 AliTPCRawStream *fTPCRawStream; //! transient
62
63 ClassDef(AliHLTTPCRawDataUnpackerComponent, 0);
64
65 };
66#endif