/* $Id$ */
/////////////////////////////////////////////////////
-// Segmentation and Response classes version 01 //
+// Segmentation and Response classes version 02 //
/////////////////////////////////////////////////////
class AliMUONSegmentationV02 :
public AliMUONSegmentationV01 {
public:
- AliMUONSegmentationV02(){};
+ AliMUONSegmentationV02(){}
+ AliMUONSegmentationV02(Int_t nsec);
+
virtual ~AliMUONSegmentationV02(){}
//
// Pad size Dx*Dy
//
// Get member data
// Pad size in x
- virtual Float_t Dpx() {return fDpy;}
+ virtual Float_t Dpx() const {return fDpy;}
// Pad size in y
- virtual Float_t Dpy() {return fDpx;}
+ virtual Float_t Dpy() const {return fDpx;}
// Pad size in x by Sector
- virtual Float_t Dpx(Int_t isec);
+ virtual Float_t Dpx(Int_t isec) const;
// Pad size in y by Sector
- virtual Float_t Dpy(Int_t isec);
+ virtual Float_t Dpy(Int_t isec) const;
// Max number of Pads in x
- virtual Int_t Npx();
+ virtual Int_t Npx() const;
// max number of Pads in y
- virtual Int_t Npy();
+ virtual Int_t Npy() const;
// calculate sector from pad coordinates
virtual Int_t Sector(Int_t ix, Int_t iy);
+ virtual void Draw(const char *opt="") const;
//
// Transform from pad (wire) to real coordinates and vice versa
// Transform from pad to real coordinates
- virtual void GetPadCxy(Int_t ix,Int_t iy,Float_t &x ,Float_t &y );
+ virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x ,Float_t &y );
+ virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z)
+ {z=fZ; GetPadC(ix, iy, x , y);}
// Transform from pad to real coordinates
- virtual void GetPadIxy(Float_t x ,Float_t y ,Int_t &ix,Int_t &iy);
+ virtual void GetPadI(Float_t x ,Float_t y , Int_t &ix, Int_t &iy);
+ virtual void GetPad(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy);
// Set pad position
virtual void SetPad(Int_t ix,Int_t iy);
// Stepper