* See cxx source for full Copyright notice */
/* $Id$ */
+// Revision of includes 07/05/2004
#include "AliSegmentation.h"
-const Int_t kNzone = 3; // Specific for chamber with equal pads
-const Int_t kNzonem1 = 2; // kNzone - 1
-const Int_t kNzoneCUT = 30;
-
-class AliMUONSegmentationV1 :
-public AliSegmentation {
+class AliMUONSegmentationV1 : public AliSegmentation
+{
public:
AliMUONSegmentationV1();
- AliMUONSegmentationV1(const AliMUONSegmentationV1 & segmentation);
virtual ~AliMUONSegmentationV1(){}
//
// Set Chamber Segmentation Parameters
// Pad size in y
virtual Float_t Dpy() const {return fDpy;}
// Pad size in x by Sector
- virtual Float_t Dpx(Int_t i) const {return fDpx;}
+ virtual Float_t Dpx(Int_t /*i*/) const {return fDpx;}
// Pad size in y by Sector
- virtual Float_t Dpy(Int_t i)const {return fDpy;}
+ virtual Float_t Dpy(Int_t /*i*/)const {return fDpy;}
// Maximum number of Pads in x
virtual Int_t Npx() const {return fNpx;}
// Maximum number of Pads in y
virtual Float_t GetAnod(Float_t xhit) const;
// Transform from pad to real coordinates
virtual void GetPadI(Float_t x ,Float_t y , Int_t &ix, Int_t &iy);
- virtual void GetPadI(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy)
+ virtual void GetPadI(Float_t x, Float_t y , Float_t /*z*/, Int_t &ix, Int_t &iy)
{GetPadI(x, y, ix, iy);}
// Transform from real to pad coordinates
virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y);
virtual void SetPad(Int_t ix, Int_t iy);
// Set hit position
virtual void SetHit(Float_t xhit, Float_t yhit);
- virtual void SetHit(Float_t xhit, Float_t yhit, Float_t zhit)
+ virtual void SetHit(Float_t xhit, Float_t yhit, Float_t /*zhit*/)
{SetHit(xhit, yhit);}
//
// Iterate over pads
virtual void SetPadCoord(Int_t iX, Int_t iY);
// Initialiser
virtual void FirstPad(Float_t xhit, Float_t yhit, Float_t dx, Float_t dy);
- virtual void FirstPad(Float_t xhit, Float_t yhit, Float_t zhit, Float_t dx, Float_t dy)
+ virtual void FirstPad(Float_t xhit, Float_t yhit, Float_t /*zhit*/, Float_t dx, Float_t dy)
{FirstPad(xhit, yhit, dx, dy);}
// Stepper
virtual void NextPad();
// current sector
virtual Int_t ISector();
// calculate sector from pad coordinates
- virtual Int_t Sector(Int_t ix, Int_t iy) {return 1;}
+ virtual Int_t Sector(Int_t /*ix*/, Int_t /*iy*/) {return 1;}
+ virtual Int_t Sector(Float_t /*x*/, Float_t /*y*/) {return 1;}
// Position of pad in perellel read-out
- virtual Int_t IsParallel2(Int_t iX, Int_t iY);
- virtual Int_t IsParallel3(Int_t iX, Int_t iY);
+ virtual Int_t IsParallel2(Int_t iX, Int_t iY) const;
+ virtual Int_t IsParallel3(Int_t iX, Int_t iY) const;
// Number of pads read in parallel
- virtual Int_t NParallel2(Int_t iX, Int_t iY);
- virtual Int_t NParallel3(Int_t iX, Int_t iY);
+ virtual Int_t NParallel2(Int_t iX, Int_t iY) const;
+ virtual Int_t NParallel3(Int_t iX, Int_t iY) const;
//
// Number of pads read in parallel and offset to add to x
virtual void GetNParallelAndOffset(Int_t iX, Int_t iY,
virtual void Draw(const char * = "") const {}
// Function for systematic corrections
// Set the correction function
- virtual void SetCorrFunc(Int_t dum, TF1* func) {fCorr=func;}
+ virtual void SetCorrFunc(Int_t /*dum*/, TF1* func) {fCorr=func;}
// Get the correction function
virtual TF1* CorrFunc(Int_t) const {return fCorr;}
//
- AliMUONSegmentationV1& operator=(const AliMUONSegmentationV1& rhs);
ClassDef(AliMUONSegmentationV1,1) // Implementation of the Lyon type chamber segmentation with parallel read-out
- protected:
+
+ protected:
+ AliMUONSegmentationV1(const AliMUONSegmentationV1 & segmentation);
+ AliMUONSegmentationV1& operator=(const AliMUONSegmentationV1& rhs);
+
//
// Implementation of the segmentation data
// Version This models rectangular pads with the same dimensions all
// over the cathode plane but let the possibilit for different design.
//
+ static const Int_t fgkNzone = 3; // Specific for chamber with equal pads
+ static const Int_t fgkNzonem1 = 2; // fgkNzone - 1
+ static const Int_t fgkNzoneCUT = 30; // NzoneCUT
+
// geometry
Int_t fNzone; // Number of differents sensitive zones
Float_t fDpx; // X pad width
Float_t fDpy; // Y pad width
- Int_t fNZoneCut[kNzonem1]; // Number of cuts for given zone
- Int_t fZoneX[kNzonem1][kNzoneCUT]; // X descriptor of zone segmentations
- Int_t fZoneY[kNzonem1][kNzoneCUT]; // Y descriptor of zone segmentations
+ Int_t fNZoneCut[fgkNzonem1]; // Number of cuts for given zone
+ Int_t fZoneX[fgkNzonem1][fgkNzoneCUT]; // X descriptor of zone segmentations
+ Int_t fZoneY[fgkNzonem1][fgkNzoneCUT]; // Y descriptor of zone segmentations
Float_t frSensMax2; // square of maximum sensitive radius
Float_t frSensMin2; // square of minimum sensitive radius
Int_t fNpx; // Maximum number of pads along x