]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALITPCRAWSTREAMFAST_H | |
2 | #define ALITPCRAWSTREAMFAST_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /////////////////////////////////////////////////////////////////////////////// | |
7 | /// | |
8 | /// This class provides access to TPC digits in raw data. | |
9 | /// | |
10 | /////////////////////////////////////////////////////////////////////////////// | |
11 | ||
12 | #include "AliAltroRawStreamFast.h" | |
13 | ||
14 | class AliRawReader; | |
15 | class AliAltroMapping; | |
16 | ||
17 | class AliTPCRawStreamFast: public AliAltroRawStreamFast { | |
18 | public : | |
19 | AliTPCRawStreamFast(AliRawReader* rawReader, AliAltroMapping **mapping = NULL); | |
20 | virtual ~AliTPCRawStreamFast(); | |
21 | ||
22 | virtual void Reset(); | |
23 | virtual Bool_t NextChannel(); | |
24 | ||
25 | inline Int_t GetSector() const { return fSector; } // Provide index of current sector | |
26 | inline Int_t GetPrevSector() const { return fPrevSector; } // Provide index of previous sector | |
27 | inline Bool_t IsNewSector() const {return fSector != fPrevSector;}; | |
28 | inline Int_t GetRow() const { return fRow; } // Provide index of current row | |
29 | inline Int_t GetPrevRow() const { return fPrevRow; } // Provide index of previous row | |
30 | inline Bool_t IsNewRow() const {return (fRow != fPrevRow) || IsNewSector();}; | |
31 | inline Int_t GetPad() const { return fPad; } // Provide index of current pad | |
32 | inline Int_t GetPrevPad() const { return fPrevPad; } // Provide index of previous pad | |
33 | inline Bool_t IsNewPad() const {return (fPad != fPrevPad) || IsNewRow();}; | |
34 | ||
35 | ||
36 | protected : | |
37 | AliTPCRawStreamFast& operator = (const AliTPCRawStreamFast& stream); | |
38 | AliTPCRawStreamFast(const AliTPCRawStreamFast& stream); | |
39 | ||
40 | virtual void ApplyAltroMapping(); | |
41 | ||
42 | Int_t fSector; // index of current sector | |
43 | Int_t fPrevSector; // index of previous sector | |
44 | Int_t fRow; // index of current row | |
45 | Int_t fPrevRow; // index of previous row | |
46 | Int_t fPad; // index of current pad | |
47 | Int_t fPrevPad; // index of previous pad | |
48 | ||
49 | AliAltroMapping *fMapping[6]; // Pointers to ALTRO mapping | |
50 | Bool_t fIsMapOwner; // does object own its mappings? | |
51 | ||
52 | ClassDef(AliTPCRawStreamFast, 0) // base class for reading TPC raw digits using the fast algorithm | |
53 | }; | |
54 | ||
55 | #endif |