// XEmacs -*-C++-*-
-// @(#) $Id: AliHLTTPCDigitReaderDecoder.h,v 1.9 2007/11/28 21:29:24 richterm Exp $
+// $Id$
#ifndef ALIHLTTPCDIGITREADERDECODER_H
#define ALIHLTTPCDIGITREADERDECODER_H
@brief DigitReader for the fast ALTRO Decoder
*/
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
#include "AliHLTTPCDigitReader.h"
+#include "AliAltroData.h"
+class AliHLTTPCMapping;
+class AliAltroDecoder;
+class AliAltroBunch;
/**
* @class AliHLTTPCDigitReaderDecoder
+ * Digit reader implementation for real ALTRO/RCU data using the fast
+ * AliAltroDecoder class.
+ *
* @ingroup alihlt_tpc
*/
class AliHLTTPCDigitReaderDecoder : public AliHLTTPCDigitReader {
int GetRow();
int GetPad();
int GetSignal();
- AliHLTUInt32_t* GetSignals();
+ const UInt_t* GetSignals();
int GetTime();
-
+ int GetBunchSize();
+ int GetRowOffset() const;
+ AliHLTUInt32_t GetAltroBlockHWaddr() const;
+ AliHLTUInt32_t GetAltroBlockHWaddr(Int_t row, Int_t pad) const;
+
protected:
bool NextSignal();
private:
+ /** copy constructor prohibited */
+ AliHLTTPCDigitReaderDecoder(const AliHLTTPCDigitReaderDecoder&);
+ /** assignment operator prohibited */
+ AliHLTTPCDigitReaderDecoder& operator=(const AliHLTTPCDigitReaderDecoder&);
+
+ AliAltroDecoder *fAltroDecoder; //! transient
+ AliAltroData fAltroData; //! transient
+ AliAltroBunch *fAltroBunch; //! transient
+ AliHLTTPCMapping *fMapping; //! transient
+
+ int fNextCounter; //! transient
+ bool fNextSignalMethodUsed; //! transient
- ClassDef(AliHLTTPCDigitReaderDecoder, 0)
+ ClassDef(AliHLTTPCDigitReaderDecoder, 2)
};
#endif