esd variables modified
[u/mrichter/AliRoot.git] / PMD / AliPMDRawStream.h
CommitLineData
a09a2da4 1#ifndef ALIPMDRAWSTREAM_H
2#define ALIPMDRAWSTREAM_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 class provides access to PMD digits in raw data.
11///
12///////////////////////////////////////////////////////////////////////////////
13
14#include <TObject.h>
15
16class AliRawReader;
17
18
19class AliPMDRawStream: public TObject {
20 public :
21 AliPMDRawStream(AliRawReader* rawReader);
22 virtual ~AliPMDRawStream();
23
24 virtual Bool_t Next();
25
26 Int_t GetModule() const {return fModule;};
27 Int_t GetPrevModule() const {return fPrevModule;};
28 Bool_t IsNewModule() const {return fModule != fPrevModule;};
29 Int_t GetMCM() const {return fMCM;};
30 Int_t GetChannel() const {return fChannel;};
31 Int_t GetRow() const {return fRow;};
32 Int_t GetColumn() const {return fColumn;};
33 Int_t GetSignal() const {return fSignal;};
34 Int_t GetDetector() const {return fDetector;};
35 Int_t GetSMN() const {return fSMN;};
36
37
38 enum {kDDLOffset = 0xC00}; // offset for DDL numbers
39
40 private :
41 AliPMDRawStream(const AliPMDRawStream& stream);
42 AliPMDRawStream& operator = (const AliPMDRawStream& stream);
43
44 void GetRowCol(Int_t ddlno, UInt_t mcmno, UInt_t chno,
45 Int_t &um, Int_t &row, Int_t &col) const;
e54787da 46 void ConvertDDL2SMN(Int_t iddl, Int_t ium, Int_t &smn,
47 Int_t &module, Int_t &detector) const;
48 void TransformH2S(Int_t smn, Int_t &row, Int_t &col) const;
a09a2da4 49
50 AliRawReader* fRawReader; // object for reading the raw data
51
52 Int_t fModule; // index of current module
53 Int_t fPrevModule; // index of previous module
54 Int_t fMCM; // index of current MCM
55 Int_t fChannel; // index of current channel
56 Int_t fRow; // index of current row
57 Int_t fColumn; // index of current column
58 Int_t fSignal; // signal in ADC counts
59 Int_t fDetector; // PRE = 0, CPV = 1
60 Int_t fSMN; // serial module number (0-23)
61
e54787da 62 ClassDef(AliPMDRawStream, 1) // class for reading PMD raw digits
a09a2da4 63};
64
65#endif