#include <TF1.h>
#include <TVector3.h>
#include <TObjArray.h>
-#include <Riostream.h>
#include "AliMUONSegmentationV01.h"
#include "AliMUON.h"
#include "AliMUONChamber.h"
#include "AliRun.h"
+#include "AliLog.h"
//___________________________________________
ClassImp(AliMUONSegmentationV01)
- AliMUONSegmentationV01::AliMUONSegmentationV01(const AliMUONSegmentationV01& segmentation):AliMUONSegmentationV0(segmentation)
+AliMUONSegmentationV01::AliMUONSegmentationV01(const AliMUONSegmentationV01& segmentation)
+ : AliMUONSegmentationV0(segmentation)
{
-// Dummy copy constructor
+// Protected copy constructor
+
+ AliFatal("Not implemented.");
}
AliMUONSegmentationV01::AliMUONSegmentationV01()
+ : AliMUONSegmentationV0()
{
// Default constructor
fRSec = 0;
fNDiv = 0;
fDpxD = 0;
fCorrA = 0;
+ fSector = -1;
}
AliMUONSegmentationV01::AliMUONSegmentationV01(Int_t nsec)
+ : AliMUONSegmentationV0()
{
// Non default constructor
fCorrA->AddAt(0,1);
fCorrA->AddAt(0,2);
fOffsetY=0;
+ fSector = -1;
}
AliMUONSegmentationV01::~AliMUONSegmentationV01()
// vice versa.
// This version approximates concentric segmentation zones
//
+
Int_t isec;
//printf("\n Initialise Segmentation V01\n");
}
} // y-pad loop
} // sector loop
+
// reference to chamber
AliMUON *pMUON = (AliMUON *) gAlice->GetModule("MUON");
fChamber=&(pMUON->Chamber(chamber));
+ fRmin=fChamber->RInner();
+ fRmax=fChamber->ROuter();
+ fCorr=0;
fZ = fChamber->Z();
fId=chamber;
}
+//______________________________________________________________________
Int_t AliMUONSegmentationV01::Sector(Int_t ix, Int_t iy)
{
// Returns sector number for given pad position
}
return isec;
}
+
//______________________________________________________________________
void AliMUONSegmentationV01::GetPadI(Float_t x, Float_t y, Int_t &ix, Int_t &iy)
{
fIx=fIxmin;
fIy=fIymin;
GetPadC(fIx,fIy,fX,fY);
+
+ // added
+ if (fSector == -1) {
+ fSector=Sector(fIx,fIy);
+ }
}
y[2]=x[2];
}
-void AliMUONSegmentationV01::Draw(const char* opt) const
+void AliMUONSegmentationV01::Draw(const char* opt)
{
// Draws the segmentation zones
return (TF1*) fCorrA->At(isec);
}
-AliMUONSegmentationV01& AliMUONSegmentationV01::operator
-=(const AliMUONSegmentationV01 & /*rhs*/)
+AliMUONSegmentationV01&
+AliMUONSegmentationV01::operator =(const AliMUONSegmentationV01 & rhs)
{
-// Dummy assignment operator
- return *this;
+// Protected assignement operator
+
+ if (this == &rhs) return *this;
+
+ AliFatal("Not implemented.");
+
+ return *this;
}