]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONSegmentationV1.cxx
Update for station2:
[u/mrichter/AliRoot.git] / MUON / AliMUONSegmentationV1.cxx
index 83d5e451f6e0a90fa4f7d9e3ac7b67d0a5461be1..9f7e36007a70fc58a2d42181fabb922dc0e86464 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.4  2000/07/03 11:54:57  morsch
-AliMUONSegmentation and AliMUONHitMap have been replaced by AliSegmentation and AliHitMap in STEER
-The methods GetPadIxy and GetPadXxy of AliMUONSegmentation have changed name to GetPadI and GetPadC.
-
-Revision 1.3  2000/06/29 12:34:09  morsch
-AliMUONSegmentation class has been made independent of AliMUONChamber. This makes
-it usable with any other geometry class. The link to the object to which it belongs is
-established via an index. This assumes that there exists a global geometry manager
-from which the pointer to the parent object can be obtained (in our case gAlice).
-
-Revision 1.2  2000/06/15 07:58:48  morsch
-Code from MUON-dev joined
-
-Revision 1.1.2.2  2000/06/12 07:57:43  morsch
-include TMath.cxx
-
-Revision 1.1.2.1  2000/06/09 21:41:29  morsch
-AliMUONSegmentationV1 code  from  AliMUONSegResV1.cxx
-
-*/
-
+/* $Id$ */
 
 /////////////////////////////////////////////////////////
 //  Manager and hits classes for set:MUON version LYON //
@@ -46,11 +24,12 @@ AliMUONSegmentationV1 code  from  AliMUONSegResV1.cxx
 #include "AliMUONSegmentationV1.h"
 #include "AliRun.h"
 #include "AliMUON.h"
+#include "AliMUONChamber.h"
 
 //___________________________________________
 ClassImp(AliMUONSegmentationV1)
 
-AliMUONSegmentationV1::AliMUONSegmentationV1(const AliMUONSegmentationV1& segmentation)
+  AliMUONSegmentationV1::AliMUONSegmentationV1(const AliMUONSegmentationV1& segmentation):AliSegmentation(segmentation)
 {
 // Dummy copy constructor
 }
@@ -66,6 +45,7 @@ AliMUONSegmentationV1::AliMUONSegmentationV1()
     fDpx=0.0; // forces crash if not initialized by user
     fNZoneCut[0]=0;
     fSensOffset=0;
+    fCorr = 0;
 }
 
 
@@ -83,6 +63,9 @@ void AliMUONSegmentationV1::Init(Int_t chamber)
     //    fNwire=3;
     DefaultCut();
     fCorr=0;
+
+    fZ = iChamber->Z();
+
 }
 
 void AliMUONSegmentationV1::DefaultCut(void)
@@ -110,7 +93,7 @@ Int_t AliMUONSegmentationV1::GetiAnod(Float_t xhit)
     return (xhit>0) ? kwire : -kwire ;
 }
 
-Float_t AliMUONSegmentationV1::GetAnod(Float_t xhit)
+Float_t AliMUONSegmentationV1::GetAnod(Float_t xhit) const
 {
 // Get anode position
     Int_t kwire=Int_t((TMath::Abs(xhit)-fSensOffset)/fDAnod)+1; // to be compatible ...
@@ -300,7 +283,7 @@ Int_t AliMUONSegmentationV1::IsParallel3(Int_t iX, Int_t iY)
     return (iX%9)/3+1 - (iY%3==2 && iX%3==0);
 }
 
-Int_t AliMUONSegmentationV1::NParallel2(Int_t iX, Int_t iY)
+Int_t AliMUONSegmentationV1::NParallel2(Int_t /*iX*/, Int_t iY)
 {
 // returns the number of pads connected in parallel for zone 2
 // iX and iY are assumed to be positive and starting at 0 numbering (cF. iX)
@@ -359,20 +342,20 @@ Int_t AliMUONSegmentationV1::Ix(Int_t trueX, Int_t trueY)
     return -1;
 }
 
-Int_t AliMUONSegmentationV1::Ix()
+Int_t AliMUONSegmentationV1::Ix() 
 {
 // returns the X number of pad which has to increment charge
 // due to parallel read-out
-return Ix(fIx,fIy);
+    return Ix(fIx,fIy);
 }
 
-Int_t AliMUONSegmentationV1::ISector()
+Int_t AliMUONSegmentationV1::ISector() 
 {
 // This function is of no use for this kind of segmentation.
     return GetZone(fIx,fIy);
 }
 
-void AliMUONSegmentationV1::SigGenInit(Float_t x,Float_t y,Float_t z)
+void AliMUONSegmentationV1::SigGenInit(Float_t x,Float_t y,Float_t /*z*/)
 {
 //
 //  Initialises pad and wire position during stepping
@@ -383,7 +366,7 @@ void AliMUONSegmentationV1::SigGenInit(Float_t x,Float_t y,Float_t z)
 
 }
 
-Int_t AliMUONSegmentationV1::SigGenCond(Float_t x,Float_t y,Float_t z)
+Int_t AliMUONSegmentationV1::SigGenCond(Float_t x,Float_t y,Float_t /*z*/)
 {
 //
 //  Signal will be generated if particle crosses pad boundary or
@@ -548,7 +531,7 @@ NeighboursDiag(iX,iY,Nlist,Xlist,Ylist);
 }
 
 
-void AliMUONSegmentationV1::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y)
+void AliMUONSegmentationV1::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y) const
 {
 // Return a test point
     n=1;
@@ -556,7 +539,7 @@ void AliMUONSegmentationV1::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y)
     y[0]=x[0];
 }
 
-AliMUONSegmentationV1& AliMUONSegmentationV1::operator =(const AliMUONSegmentationV1 & rhs)
+AliMUONSegmentationV1& AliMUONSegmentationV1::operator =(const AliMUONSegmentationV1 & /*rhs*/)
 {
 // Dummy assignment operator
     return *this;