]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTTPCDigitReaderDecoder.h
propagate properly AliTPCseed object from tracker to calibration component (Jacek)
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDigitReaderDecoder.h
CommitLineData
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"
19class AliHLTTPCMapping;
20class AliAltroDecoder;
21class 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 */
30class AliHLTTPCDigitReaderDecoder : public AliHLTTPCDigitReader {
31public:
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);
900fdfb2 40 void SetUnsorted(bool unsorted);
f8121cb1 41 bool NextChannel();
42 int NextBunch();
43 int GetRow();
44 int GetPad();
45 int GetSignal();
7dceaa9b 46 const UInt_t* GetSignals();
f8121cb1 47 int GetTime();
7dceaa9b 48 int GetBunchSize();
d2f725e4 49 int GetRowOffset() const;
7c9a4e09 50 AliHLTUInt32_t GetAltroBlockHWaddr() const;
092a1374 51 AliHLTUInt32_t GetAltroBlockHWaddr(Int_t row, Int_t pad) const;
52
f8121cb1 53protected:
54 bool NextSignal();
55
56private:
7dceaa9b 57 /** copy constructor prohibited */
58 AliHLTTPCDigitReaderDecoder(const AliHLTTPCDigitReaderDecoder&);
59 /** assignment operator prohibited */
60 AliHLTTPCDigitReaderDecoder& operator=(const AliHLTTPCDigitReaderDecoder&);
61
62 AliAltroDecoder *fAltroDecoder; //! transient
63 AliAltroData fAltroData; //! transient
64 AliAltroBunch *fAltroBunch; //! transient
65 AliHLTTPCMapping *fMapping; //! transient
66
7c9a4e09 67 int fNextCounter; //! transient
68 bool fNextSignalMethodUsed; //! transient
f8121cb1 69
7c9a4e09 70 ClassDef(AliHLTTPCDigitReaderDecoder, 2)
f8121cb1 71
72};
73#endif
74