]>
Commit | Line | Data |
---|---|---|
f8121cb1 | 1 | // XEmacs -*-C++-*- |
7e914051 | 2 | // $Id$ |
f8121cb1 | 3 | |
4 | #ifndef ALIHLTTPCDIGITREADERDECODER_H | |
5 | #define ALIHLTTPCDIGITREADERDECODER_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 | ||
11 | /** @file AliHLTTPCDigitReaderDecoder.h | |
12 | @author Kenneth Aamodt, Matthias Richter | |
13 | @date | |
14 | @brief DigitReader for the fast ALTRO Decoder | |
15 | */ | |
16 | ||
f8121cb1 | 17 | #include "AliHLTTPCDigitReader.h" |
7dceaa9b | 18 | #include "AliAltroData.h" |
19 | class AliHLTTPCMapping; | |
20 | class AliAltroDecoder; | |
21 | class AliAltroBunch; | |
f8121cb1 | 22 | |
23 | /** | |
24 | * @class AliHLTTPCDigitReaderDecoder | |
2efb85be | 25 | * Digit reader implementation for real ALTRO/RCU data using the fast |
26 | * AliAltroDecoder class. | |
297174de | 27 | * |
f8121cb1 | 28 | * @ingroup alihlt_tpc |
29 | */ | |
30 | class AliHLTTPCDigitReaderDecoder : public AliHLTTPCDigitReader { | |
31 | public: | |
32 | /** standard constructor | |
33 | */ | |
34 | AliHLTTPCDigitReaderDecoder(); | |
35 | /** destructor */ | |
36 | virtual ~AliHLTTPCDigitReaderDecoder(); | |
37 | ||
38 | // interface functions | |
39 | int InitBlock(void* ptr,unsigned long size, Int_t patch, Int_t slice); | |
40 | bool NextChannel(); | |
41 | int NextBunch(); | |
42 | int GetRow(); | |
43 | int GetPad(); | |
44 | int GetSignal(); | |
7dceaa9b | 45 | const UInt_t* GetSignals(); |
f8121cb1 | 46 | int GetTime(); |
7dceaa9b | 47 | int GetBunchSize(); |
d2f725e4 | 48 | int GetRowOffset() const; |
7c9a4e09 | 49 | AliHLTUInt32_t GetAltroBlockHWaddr() const; |
50 | ||
f8121cb1 | 51 | protected: |
52 | bool NextSignal(); | |
53 | ||
54 | private: | |
7dceaa9b | 55 | /** copy constructor prohibited */ |
56 | AliHLTTPCDigitReaderDecoder(const AliHLTTPCDigitReaderDecoder&); | |
57 | /** assignment operator prohibited */ | |
58 | AliHLTTPCDigitReaderDecoder& operator=(const AliHLTTPCDigitReaderDecoder&); | |
59 | ||
60 | AliAltroDecoder *fAltroDecoder; //! transient | |
61 | AliAltroData fAltroData; //! transient | |
62 | AliAltroBunch *fAltroBunch; //! transient | |
63 | AliHLTTPCMapping *fMapping; //! transient | |
64 | ||
7c9a4e09 | 65 | int fNextCounter; //! transient |
66 | bool fNextSignalMethodUsed; //! transient | |
f8121cb1 | 67 | |
7c9a4e09 | 68 | ClassDef(AliHLTTPCDigitReaderDecoder, 2) |
f8121cb1 | 69 | |
70 | }; | |
71 | #endif | |
72 |