]>
Commit | Line | Data |
---|---|---|
2906f4c2 | 1 | #ifndef ALIITSRAWSTREAM_H |
2 | #define ALIITSRAWSTREAM_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | /////////////////////////////////////////////////////////////////////////////// | |
9 | /// | |
10 | /// This is a base class for providing access to ITS digits in raw data. | |
11 | /// | |
12 | /////////////////////////////////////////////////////////////////////////////// | |
13 | ||
14 | #include <TObject.h> | |
2f8ed7ab | 15 | #include "AliITSDDLModuleMapSDD.h" |
16 | #include "AliLog.h" | |
2906f4c2 | 17 | |
18 | class AliRawReader; | |
19 | ||
20 | ||
21 | class AliITSRawStream: public TObject { | |
22 | public : | |
23 | AliITSRawStream(AliRawReader* rawReader); | |
24 | AliITSRawStream(const AliITSRawStream& stream); | |
25 | AliITSRawStream& operator = (const AliITSRawStream& stream); | |
26 | virtual ~AliITSRawStream() {}; | |
27 | ||
28 | virtual Bool_t Next() = 0; | |
29 | ||
30 | Int_t GetModuleID() const {return fModuleID;}; | |
31 | Int_t GetPrevModuleID() const {return fPrevModuleID;}; | |
32 | Bool_t IsNewModule() const {return fModuleID != fPrevModuleID;}; | |
33 | Int_t GetCoord1() const {return fCoord1;}; | |
34 | Int_t GetCoord2() const {return fCoord2;}; | |
35 | Int_t GetSignal() const {return fSignal;}; | |
de075dae | 36 | virtual Bool_t IsCompletedModule() const {return fCompletedModule;}; |
37 | virtual Bool_t IsCompletedDDL() const {return fCompletedDDL;}; | |
2f8ed7ab | 38 | virtual void SetDDLModuleMap(AliITSDDLModuleMapSDD* /*ddlsdd*/){ |
39 | AliError("This method must be implemented in a derived class"); | |
40 | }; | |
41 | virtual void SetZeroSuppLowThreshold(Int_t /*iMod*/, Int_t /*iSid*/, Int_t /*th*/) { | |
42 | AliError("This method must be implemented in a derived class"); | |
43 | }; | |
a8cd2ab2 | 44 | virtual void SetADCEncoded(Bool_t /*fl*/) { |
45 | AliError("This method must be implemented in a derived class"); | |
46 | }; | |
47 | ||
48 | ||
6297cc01 | 49 | virtual Int_t GetCarlosId() const { |
50 | AliError("This method must be implemented in a derived class"); | |
51 | return -1; | |
52 | }; | |
53 | virtual Int_t GetChannel() const { | |
54 | AliError("This method must be implemented in a derived class"); | |
55 | return -1; | |
56 | }; | |
e2662f55 | 57 | virtual Int_t GetJitter() const { |
de075dae | 58 | AliError("This method must be implemented in a derived class"); |
59 | return -1; | |
e2662f55 | 60 | }; |
2f8ed7ab | 61 | |
62 | ||
2906f4c2 | 63 | protected : |
64 | AliRawReader* fRawReader; // object for reading the raw data | |
65 | ||
66 | Int_t fModuleID; // index of current module | |
67 | Int_t fPrevModuleID; // index of previous module | |
68 | Int_t fCoord1; // current 1st coordinate | |
69 | // SPD: column cell number (z) | |
70 | // SDD: anode cell number (z) | |
71 | // SSD: N/P, flag for side | |
72 | Int_t fCoord2; // current 2nd coordinate | |
73 | // SPD: row cell number (y) | |
74 | // SDD: time bin number (y) | |
75 | // SSD: strip number | |
76 | Int_t fSignal; // signal in ADC counts | |
5dfa68c5 | 77 | Bool_t fCompletedModule; // set to kTRUE when all data from a module (SDD) are read |
de075dae | 78 | Bool_t fCompletedDDL; // set to kTRUE when all data from a DDL (SDD) are read |
2906f4c2 | 79 | |
de075dae | 80 | ClassDef(AliITSRawStream, 2) // base class for reading ITS raw digits |
2906f4c2 | 81 | }; |
82 | ||
83 | #endif |