]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONSegmentationV04.cxx
Stored additional energy information
[u/mrichter/AliRoot.git] / MUON / AliMUONSegmentationV04.cxx
index 048357bc892a76357811b97a2dde8d37062ad615..1a08ccb55600d1a4f54b6a854979f4cea2373dc6 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-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.1  2000/06/09 21:38:15  morsch
-AliMUONSegmentationV04 code  from  AliMUONSegResV04.cxx
-
-*/
+/* $Id$ */
 
 /////////////////////////////////////////////////////
 //  Segmentation and Response classes version 04   //
@@ -35,6 +21,10 @@ AliMUONSegmentationV04 code  from  AliMUONSegResV04.cxx
 
 
 #include "AliMUONSegmentationV04.h"
+#include "AliMUONChamber.h"
+#include "AliMUON.h"
+#include "AliRun.h"
+
 #include <TMath.h>
 
 //___________________________________________
@@ -43,7 +33,7 @@ ClassImp(AliMUONSegmentationV04)
 
 void AliMUONSegmentationV04::Init(Int_t chamber)
 {
-    printf("\n Initialise segmentation v04 \n");
+
 //
 //  Fill the arrays fCx (x-contour) and fNpxS (ix-contour) for each sector
 //  These arrays help in converting from real to pad co-ordinates and
@@ -53,6 +43,8 @@ void AliMUONSegmentationV04::Init(Int_t chamber)
 //  concentric circles as shown below
 //
 //  PCB module size in cm
+  //printf("\n Initialise Segmentation V04 \n");
+
     const Float_t kDxPCB=40, kDyPCB=40;
 //  PCB distribution (7 rows with 1+3 segmentation regions)
     const Int_t kpcb[7][4] = {{1, 2, 2, 2}, 
@@ -89,11 +81,10 @@ void AliMUONSegmentationV04::Init(Int_t chamber)
     fNpy=7*nPyPCB;
 //
 //  Calculate padsize along x
-    fDpxD[fNsec-1]=fDpx;
+    (*fDpxD)[fNsec-1]=fDpx;
     if (fNsec > 1) {
        for (Int_t i=fNsec-2; i>=0; i--){
            (*fDpxD)[i]=(*fDpxD)[fNsec-1]/(*fNDiv)[i];
-           printf("\n test ---dx %d %f \n",i,(*fDpxD)[i]);
        }
     }
 //
@@ -122,6 +113,10 @@ void AliMUONSegmentationV04::Init(Int_t chamber)
            } // sectors
        } // pad raws in module
     } // PCB rows
+
+    AliMUON *pMUON  = (AliMUON *) gAlice->GetModule("MUON");
+    fChamber=&(pMUON->Chamber(chamber));
+    fZ = fChamber->Z();
 }
 
 void AliMUONSegmentationV04::GiveTestPoints(Int_t &n, Float_t *x, Float_t *y) const