]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/AliHLTTPCDigitReader32Bit.h
minor update of documentation
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDigitReader32Bit.h
1 // XEmacs -*-C++-*-
2
3 #ifndef ALIHLTTPCDIGITREADER32BIT_H
4 #define ALIHLTTPCDIGITREADER32BIT_H
5
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 /** @file   AliHLTTPCDigitReader32Bit.h
11     @author Kenneth Aamodt, Matthias Richter
12     @date   
13     @brief  DigitReader for the 32 bit offline decoder
14 */
15
16 #include "AliHLTTPCDigitReader.h"
17
18 class AliTPCRawStream;
19 class AliRawReaderMemory;
20 class AliRawReader;
21 class AliAltroRawStreamV3;
22 class AliHLTTPCMapping;
23
24 /**
25  * @class AliHLTTPCDigitReader32Bit
26  * Digit reader implementation for 32 bit altro format using the offline AliAltroRawStreamV3 class.
27  *
28  * @ingroup alihlt_tpc
29  */
30 class AliHLTTPCDigitReader32Bit : public AliHLTTPCDigitReader {
31 public:
32   /** standard constructor 
33    */
34   AliHLTTPCDigitReader32Bit();
35   /** destructor */
36   virtual ~AliHLTTPCDigitReader32Bit();
37
38   // interface functions  
39   int InitBlock(void* ptr,unsigned long size, Int_t patch, Int_t slice);
40   int Reset();
41   void SetUnsorted(bool unsorted);
42   bool NextChannel();
43   int NextBunch();
44   int GetRow();
45   int GetPad();
46   int GetSignal();
47   const UInt_t* GetSignals();
48   const UShort_t* GetSignalsShort();
49   int GetTime();
50   int GetBunchSize();
51   int GetRowOffset() const;
52   AliHLTUInt32_t GetAltroBlockHWaddr() const;
53   AliHLTUInt32_t GetAltroBlockHWaddr(Int_t row, Int_t pad) const;
54   int GetRCUTrailerSize();
55   bool GetRCUTrailerData(UChar_t*& trData);
56
57 protected:
58   bool NextSignal();
59
60 private:
61   /** copy constructor prohibited */
62   AliHLTTPCDigitReader32Bit(const AliHLTTPCDigitReader32Bit&);
63   /** assignment operator prohibited */
64   AliHLTTPCDigitReader32Bit& operator=(const AliHLTTPCDigitReader32Bit&);
65
66   AliRawReaderMemory* fRawReaderMemory;                      //! transient
67
68   AliAltroRawStreamV3 * fAltroRawStreamV3;                   //! transient
69   
70   AliHLTTPCMapping *fMapping;                                //! transient
71
72   Bool_t fSkipDataReadingFlag;                                       //! transient
73   
74   ClassDef(AliHLTTPCDigitReader32Bit, 0)
75     
76 };
77 #endif
78