DA for calibrating energy by pi0 and MIP and related classes (Hisayuki Torii).
[u/mrichter/AliRoot.git] / PHOS / AliPHOSDATreeDigit.h
CommitLineData
12f6dd57 1// --
2// --
3// Implementation for TTree output in PHOS DA
4// for calibrating energy by pi0 and MIP.
5// --
6// -- Author: Hisayuki Torii (Hiroshima Univ.)
7// --
8
9#ifndef AliPHOSDATreeDigit_H
10#define AliPHOSDATreeDigit_H
11class AliPHOSDATreeDigit {
12
13 friend std::ostream& operator<<(std::ostream& out,const AliPHOSDATreeDigit& digit);
14
15 public:
16
17 AliPHOSDATreeDigit():fEnergy(0),fAbsId(-1){/**/};
18 AliPHOSDATreeDigit(float energy,int row,int col):fEnergy(energy),fAbsId(row*56+col){/**/};
19 AliPHOSDATreeDigit(float energy,short absid):fEnergy(energy),fAbsId(absid){/**/};
20 virtual ~AliPHOSDATreeDigit(){/**/};
21 void Set(float energy,int row,int col){fEnergy=energy; fAbsId = row*56 + col;};
22 void Set(float energy,short absid){fEnergy=energy; fAbsId = absid;};
23 void SetEnergy(float energy){ fEnergy=energy; };
24 float GetEnergy() const{return fEnergy;};
25 int GetCol() const{return fAbsId % 56; }; // 0 - 55 : col( z ) number
26 int GetRow() const{return (int) fAbsId/56; }; // 0 - 63 : row( x ) number
27 short GetAbsId() const{return fAbsId; };
28 short GetDigitId() const{return fAbsId; };
29 bool IsValid() const { if( fAbsId>=0 && fAbsId < 3584 ) return true; return false; };
30 bool IsNeighbor(const AliPHOSDATreeDigit &digit) const;
31 void Print(char* opt="");
32
33 //AliPHOSDATreeDigit(float energy,int mod,int row,int col):fEnergy(energy),fAbsId(mod*3584+row*56+col){/**/};
34 //void Set(float energy,int mod,int row,int col){
35 //fEnergy=energy; fAbsId = mod * 3584 + row*56 + col;};
36 //int GetMod(){return (int)(fAbsId/3584); }; // 0 - 4 : module number
37 //int GetCol(){return (fAbsId%3584) % 56; }; // 0 - 55 : col( z ) number
38 //int GetRow(){return (int)(fAbsId%3584) / 56; }; // 0 - 63 : row( x ) number
39 //bool IsValid(){ if( fAbsId>=0 && fAbsId < 17920 ) return true; return false; };
40
41 private:
42
43 float fEnergy; // Energy in GeV
44 short fAbsId; // col + row * 56 [+mod*3584 in some cases]
45
46 ClassDef(AliPHOSDATreeDigit,1) // Simple Digit Structure for PHOS DA
47};
48
49#endif