/* $Id$ */
-#include "AliMUONSegmentation.h"
+#include "AliSegmentation.h"
+
+#include "TF1.h"
-class AliMUONChamber;
//----------------------------------------------
//
// Chamber segmentation for homogeneously segmented circular chamber
//
class AliMUONSegmentationV0 :
-public AliMUONSegmentation {
+public AliSegmentation {
public:
AliMUONSegmentationV0(){}
AliMUONSegmentationV0(const AliMUONSegmentationV0 & segmentation);
// Anod wire coordinate closest to xhit
virtual Float_t GetAnod(Float_t xhit);
// Transform from pad to real coordinates
- virtual void GetPadIxy(Float_t x, Float_t y , Int_t &ix, Int_t &iy);
- virtual void GetPadIxy(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy)
- {GetPadIxy(x, y, ix, iy);}
+ 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)
+ {GetPadI(x, y, ix, iy);}
// Transform from real to pad coordinates
- virtual void GetPadCxy(Int_t ix, Int_t iy, Float_t &x, Float_t &y);
- virtual void GetPadCxy(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z)
- {z=0; GetPadCxy(ix, iy, x , 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=0; GetPadC(ix, iy, x , y);}
//
// Initialisation
- virtual void Init(AliMUONChamber* chamber);
+ virtual void Init(Int_t chamber);
//
// Get member data
//
//
// Current Pad during Integration
// x-coordinaten
- virtual Int_t Ix(){return fix;}
+ virtual Int_t Ix(){return fIx;}
// y-coordinate
- virtual Int_t Iy(){return fiy;}
+ virtual Int_t Iy(){return fIy;}
// current sector
virtual Int_t ISector(){return 1;}
// calculate sector from pad coordinates
// Test points for auto calibration
virtual void GiveTestPoints(Int_t &n, Float_t *x, Float_t *y);
// Draw segmentation zones
- virtual void Draw();
+ virtual void Draw(const char *opt="");
// Function for systematic corrections
// Set the correction function
virtual void SetCorrFunc(Int_t dum, TF1* func) {fCorr=func;}
// Chamber region consideres during disintegration
- Int_t fixmin; // lower left x
- Int_t fixmax; // lower left y
- Int_t fiymin; // upper right x
- Int_t fiymax; // upper right y
+ Int_t fIxmin; // lower left x
+ Int_t fIxmax; // lower left y
+ Int_t fIymin; // upper right x
+ Int_t fIymax; // upper right y
//
// Current pad during integration (cursor for disintegration)
- Int_t fix; // pad coord. x
- Int_t fiy; // pad coord. y
- Float_t fx; // real coord. x
- Float_t fy; // real ccord. y
+ Int_t fIx; // pad coord. x
+ Int_t fIy; // pad coord. y
+ Float_t fX; // real coord. x
+ Float_t fY; // real ccord. y
//
// Current pad and wire during tracking (cursor at hit centre)
//
//
- Float_t fxhit; // x-position of hit
- Float_t fyhit; // y-position of hit
+ Float_t fXhit; // x-position of hit
+ Float_t fYhit; // y-position of hit
// Reference point to define signal generation condition
- Int_t fixt; // pad coord. x
- Int_t fiyt; // pad coord. y
- Int_t fiwt; // wire number
- Float_t fxt; // x
- Float_t fyt; // y
+ Int_t fIxt; // pad coord. x
+ Int_t fIyt; // pad coord. y
+ Int_t fIwt; // wire number
+ Float_t fXt; // x
+ Float_t fYt; // y
TF1* fCorr; // correction function
};
#endif