]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTTPCDigitReader32Bit.h
configuration 'TPC-compression-emulation' added, to be activated in separate commit
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDigitReader32Bit.h
CommitLineData
17373fbf 1// $Id$
d9a0c52c 2// XEmacs -*-C++-*-
3
4#ifndef ALIHLTTPCDIGITREADER32BIT_H
5#define ALIHLTTPCDIGITREADER32BIT_H
6
7//* This file is property of and copyright by the ALICE HLT Project *
8//* ALICE Experiment at CERN, All rights reserved. *
9//* See cxx source for full Copyright notice */
10
17373fbf 11/// @file AliHLTTPCDigitReader32Bit.h
12/// @author Kenneth Aamodt, Matthias Richter
13/// @date
14/// @brief DigitReader for the 32 bit offline decoder
15///
d9a0c52c 16
17#include "AliHLTTPCDigitReader.h"
d9a0c52c 18
19class AliTPCRawStream;
20class AliRawReaderMemory;
21class AliRawReader;
22class AliAltroRawStreamV3;
23class AliHLTTPCMapping;
24
25/**
26 * @class AliHLTTPCDigitReader32Bit
27 * Digit reader implementation for 32 bit altro format using the offline AliAltroRawStreamV3 class.
28 *
29 * @ingroup alihlt_tpc
30 */
31class AliHLTTPCDigitReader32Bit : public AliHLTTPCDigitReader {
32public:
33 /** standard constructor
34 */
35 AliHLTTPCDigitReader32Bit();
36 /** destructor */
37 virtual ~AliHLTTPCDigitReader32Bit();
38
39 // interface functions
40 int InitBlock(void* ptr,unsigned long size, Int_t patch, Int_t slice);
41 int Reset();
42 void SetUnsorted(bool unsorted);
43 bool NextChannel();
44 int NextBunch();
45 int GetRow();
46 int GetPad();
47 int GetSignal();
48 const UInt_t* GetSignals();
49 const UShort_t* GetSignalsShort();
50 int GetTime();
51 int GetBunchSize();
52 int GetRowOffset() const;
53 AliHLTUInt32_t GetAltroBlockHWaddr() const;
54 AliHLTUInt32_t GetAltroBlockHWaddr(Int_t row, Int_t pad) const;
55 int GetRCUTrailerSize();
56 bool GetRCUTrailerData(UChar_t*& trData);
57
58protected:
59 bool NextSignal();
60
61private:
62 /** copy constructor prohibited */
63 AliHLTTPCDigitReader32Bit(const AliHLTTPCDigitReader32Bit&);
64 /** assignment operator prohibited */
65 AliHLTTPCDigitReader32Bit& operator=(const AliHLTTPCDigitReader32Bit&);
66
d9a0c52c 67 AliRawReaderMemory* fRawReaderMemory; //! transient
68
69 AliAltroRawStreamV3 * fAltroRawStreamV3; //! transient
70
71 AliHLTTPCMapping *fMapping; //! transient
4f43db26 72
73 Bool_t fSkipDataReadingFlag; //! transient
d9a0c52c 74
22240104 75 ClassDef(AliHLTTPCDigitReader32Bit, 0)
d9a0c52c 76
77};
78#endif
79