* 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 //
#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
}
fDpx=0.0; // forces crash if not initialized by user
fNZoneCut[0]=0;
fSensOffset=0;
+ fCorr = 0;
}
// fNwire=3;
DefaultCut();
fCorr=0;
+
+ fZ = iChamber->Z();
+
}
void AliMUONSegmentationV1::DefaultCut(void)
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 ...
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)
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
}
-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
}
-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;
y[0]=x[0];
}
-AliMUONSegmentationV1& AliMUONSegmentationV1::operator =(const AliMUONSegmentationV1 & rhs)
+AliMUONSegmentationV1& AliMUONSegmentationV1::operator =(const AliMUONSegmentationV1 & /*rhs*/)
{
// Dummy assignment operator
return *this;