- inline Int_t Raw ( UInt_t &raw32 )const; //digit->(ddl,raw32)
- inline void Raw (Int_t l,UInt_t raw32 ); //(ddl,raw32)->digit
- static Int_t Raw2Ch (UInt_t l ) {return l/2;} //ch=f(ddl)
- static Int_t Raw2Pc (UInt_t l,UInt_t r ) {r=(r-1)/8;return (l%2)?5-2*r:2*r;} //pc=f(ddl,r)
- static Int_t Raw2X ( UInt_t d,UInt_t a ) { return (d-1)*8+a/6;} //padx=f(d,a)
- static Int_t Raw2Y (UInt_t l,UInt_t r,UInt_t a ) {Int_t a2y[6]={3,2,4,1,5,0};r=(l%2)?(24-r):r-1;return 6*(r%8)+a2y[a%6];}//pady=f(ddl,r,a)
- Int_t Row ( )const{Int_t r=1+Pc()/2*8+PadPcY()/6; return (Pc()%2)? 25-r:r;} //row r=1..24
- void Set (Int_t c,Int_t s,Int_t x,Int_t y) {fPad=Abs(c,s,x,y);fQ=0xa3;} //set new digit
-
- static Float_t SizeAllX ( ) {return SizePadX()*kPadAllX+SizeDead();} //all PCs size x, [cm]
- static Float_t SizeAllY ( ) {return SizePadY()*kPadAllY+2*SizeDead();} //all PCs size y, [cm]
- static Float_t SizeArea ( ) {return SizePcX()*SizePcY()*kPcAll;} //sence area, [cm^2]
- static Float_t SizeDead ( ) {return 2.6;} //dead zone size x, [cm]
- static Float_t SizeGap ( ) {return 8; }
- static Float_t SizePadX ( ) {return 0.8;} //pad size x, [cm]
- static Float_t SizePadY ( ) {return 0.84;} //pad size y, [cm]
- static Float_t SizePcX ( ) {return SizePadX()*kPadPcX;} //PC size x, [cm]
- static Float_t SizePcY ( ) {return SizePadY()*kPadPcY;} //PC size y, [cm]
- static Float_t SizeWin ( ) {return 0.5;} //Quartz window width
- static Float_t SizeRad ( ) {return 1.5;} //Rad width
- static void Test ( ); //Test conversions
-protected: //AliDigit has fTracks[3]
- Int_t fPad; //absolute pad number is chamber*kCham
- Float_t fQ; //QDC value, fractions are permitted for summable procedure
- ClassDef(AliHMPIDDigit,4) //HMPID digit class
-};//class AliHMPIDDigitN
-
-typedef AliHMPIDDigit AliRICHDigit; // for backward compatibility
+ inline void Raw(UInt_t &w32,Int_t &ddl,Int_t &r,Int_t &d,Int_t &a)const;
+ inline Bool_t Set (Int_t c,Int_t p,Int_t x,Int_t y,Int_t tid=0); //manual creation
+ void SetQ (Float_t q ) {fQ=q;if(fQ>4095)fQ=4095;} //setter for charge
+ void SetPad (Int_t pad ) {fPad=pad;} //setter for pad
+
+protected: //AliDigit has fTracks[3]
+
+
+ Int_t fPad; //absolute pad number
+ Float_t fQ; //QDC value, fractions are permitted for summable procedure
+ ClassDef(AliHMPIDDigit,4) //HMPID digit class
+};//class AliHMPIDDigit