* about the suitability of this software for any purpose. It is *
* provided "as is" without express or implied warranty. *
**************************************************************************/
-/*
-$Log$
-Revision 1.9 2000/11/06 09:20:43 morsch
-AliMUON delegates part of BuildGeometry() to AliMUONSegmentation using the
-Draw() method. This avoids code and parameter replication.
-Revision 1.8 2000/10/18 11:42:06 morsch
-- AliMUONRawCluster contains z-position.
-- Some clean-up of useless print statements during initialisations.
-
-Revision 1.7 2000/10/03 21:48:07 morsch
-Adopt to const declaration of some of the methods in AliSegmentation.
-
-Revision 1.6 2000/10/02 16:58:29 egangler
-Cleaning of the code :
--> coding conventions
--> void Streamers
--> some useless includes removed or replaced by "class" statement
-
-Revision 1.5 2000/07/13 16:19:44 fca
-Mainly coding conventions + some small bug fixes
-
-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:23 morsch
-include TMath.h
-
-Revision 1.1.2.1 2000/06/09 21:30:33 morsch
-AliMUONSegmentationV0 code from AliMUONSegResV0.cxx
-
-*/
+/* $Id$ */
#include "AliMUONSegmentationV0.h"
#include "TArc.h"
#include "AliMUON.h"
ClassImp(AliMUONSegmentationV0)
- AliMUONSegmentationV0::AliMUONSegmentationV0(const AliMUONSegmentationV0& segmentation)
+ AliMUONSegmentationV0::AliMUONSegmentationV0(const AliMUONSegmentationV0& segmentation):AliSegmentation(segmentation)
{
-// Dummy copy constructor
+ // Dummy copy constructor
}
void AliMUONSegmentationV0::Init(Int_t chamber)
Float_t wire= (xhit>0)? Int_t(xhit/fWireD)+0.5:Int_t(xhit/fWireD)-0.5;
return fWireD*wire;
}
+//____________________________________________________________________________
+void AliMUONSegmentationV0::GetNParallelAndOffset(Int_t /*iX*/, Int_t /*iY*/, Int_t *Nparallel, Int_t *Offset)
+{
+ *Nparallel=1;
+ *Offset=0;
+}
+
+//____________________________________________________________________________
+void AliMUONSegmentationV0::GetPadI(Float_t x, Float_t y , Float_t /*z*/, Int_t &ix, Int_t &iy)
+{
+ GetPadI(x, y, ix, iy);
+}
+//____________________________________________________________________________
+void AliMUONSegmentationV0::SetCorrFunc(Int_t /*dum*/, TF1* func)
+{
+ fCorr=func;
+}
+//____________________________________________________________________________
+Int_t AliMUONSegmentationV0::Sector(Int_t /*ix*/, Int_t /*iy*/)
+{
+ return 1;
+}
+//____________________________________________________________________________
+Int_t AliMUONSegmentationV0::Sector(Float_t /*x*/, Float_t /*y*/)
+{
+ return 1;
+}
+//____________________________________________________________________________
void AliMUONSegmentationV0::SetPadSize(Float_t p1, Float_t p2)
{
// Sets the padsize
x = (ix>0) ? Float_t(ix*fDpx)-fDpx/2. : Float_t(ix*fDpx)+fDpx/2.;
y = (iy>0) ? Float_t(iy*fDpy)-fDpy/2. : Float_t(iy*fDpy)+fDpy/2.;
}
-
-void AliMUONSegmentationV0::
-SetHit(Float_t xhit, Float_t yhit)
+//______________________________________________________________________
+void AliMUONSegmentationV0::SetHit(Float_t xhit, Float_t yhit)
{
//
// Sets virtual hit position, needed for evaluating pad response
fXhit=xhit;
fYhit=yhit;
}
+//_______________________________________________________________________
+void AliMUONSegmentationV0::SetHit(Float_t xhit, Float_t yhit, Float_t /*zhit*/)
+{
+ SetHit(xhit, yhit);
+}
+//_______________________________________________________________________
+
void AliMUONSegmentationV0::
SetPad(Int_t ix, Int_t iy)
// outside the tracking program
GetPadC(ix,iy,fX,fY);
}
-
-void AliMUONSegmentationV0::
-FirstPad(Float_t xhit, Float_t yhit, Float_t dx, Float_t dy)
+//____________________________________________________________________________________
+void AliMUONSegmentationV0::FirstPad(Float_t xhit, Float_t yhit, Float_t dx, Float_t dy)
{
// Initialises iteration over pads for charge distribution algorithm
//
fIy=fIymin;
GetPadC(fIx,fIy,fX,fY);
}
+//________________________________________________________________________
+void AliMUONSegmentationV0::FirstPad(Float_t xhit, Float_t yhit, Float_t /*zhit*/, Float_t dx, Float_t dy)
+ {FirstPad(xhit, yhit, dx, dy);}
+
void AliMUONSegmentationV0::NextPad()
{
}
}
-void AliMUONSegmentationV0::SigGenInit(Float_t x,Float_t y,Float_t z)
+void AliMUONSegmentationV0::SigGenInit(Float_t x,Float_t y,Float_t /*z*/)
{
//
// Initialises pad and wire position during stepping
fIwt= (x>0) ? Int_t(x/fWireD)+1 : Int_t(x/fWireD)-1 ;
}
-Int_t AliMUONSegmentationV0::SigGenCond(Float_t x,Float_t y,Float_t z)
+Int_t AliMUONSegmentationV0::SigGenCond(Float_t x,Float_t y,Float_t /*z*/)
{
// Signal generation condition during stepping
// 0: don't generate signal
}
Float_t AliMUONSegmentationV0::Distance2AndOffset(Int_t iX, Int_t iY, Float_t X, Float_t Y
-, Int_t *dummy)
+ , Int_t * /*dummy*/)
{
// Returns the square of the distance between 1 pad
// labelled by its Channel numbers and a coordinate
circle->Draw();
}
-AliMUONSegmentationV0& AliMUONSegmentationV0::operator =(const AliMUONSegmentationV0 & rhs)
+AliMUONSegmentationV0& AliMUONSegmentationV0::operator =(const AliMUONSegmentationV0 & /*rhs*/)
{
// Dummy assignment operator
return *this;