]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDpadPlane.cxx
never really used and removed before restructuring
[u/mrichter/AliRoot.git] / TRD / AliTRDpadPlane.cxx
index 2851dd3a817fc6d28c53f6261aa1b517fc55fcf9..636bac1f9bf522d6a786f40985dde632e5317ed3 100644 (file)
 #include <TMath.h>
 
 #include "AliTRDpadPlane.h"
-#include "AliTRDgeometry.h"
 
 ClassImp(AliTRDpadPlane)
 
 //_____________________________________________________________________________
 AliTRDpadPlane::AliTRDpadPlane()
   :TObject()
-  ,fPla(0)
-  ,fCha(0)
+  ,fLayer(0)
+  ,fStack(0)
   ,fLength(0)
   ,fWidth(0)
   ,fLengthRim(0)
@@ -57,6 +56,7 @@ AliTRDpadPlane::AliTRDpadPlane()
   ,fPadRow(0)
   ,fPadCol(0)
   ,fPadRowSMOffset(0)
+  ,fAnodeWireOffset(0)
 {
   //
   // Default constructor
@@ -65,10 +65,10 @@ AliTRDpadPlane::AliTRDpadPlane()
 }
 
 //_____________________________________________________________________________
-AliTRDpadPlane::AliTRDpadPlane(Int_t plane, Int_t chamber)
+AliTRDpadPlane::AliTRDpadPlane(Int_t layer, Int_t stack)
   :TObject()
-  ,fPla(plane)
-  ,fCha(chamber)
+  ,fLayer(layer)
+  ,fStack(stack)
   ,fLength(0)
   ,fWidth(0)
   ,fLengthRim(0)
@@ -86,6 +86,7 @@ AliTRDpadPlane::AliTRDpadPlane(Int_t plane, Int_t chamber)
   ,fPadRow(0)
   ,fPadCol(0)
   ,fPadRowSMOffset(0)
+  ,fAnodeWireOffset(0)
 {
   //
   // Constructor
@@ -96,8 +97,8 @@ AliTRDpadPlane::AliTRDpadPlane(Int_t plane, Int_t chamber)
 //_____________________________________________________________________________
 AliTRDpadPlane::AliTRDpadPlane(const AliTRDpadPlane &p)
   :TObject(p)
-  ,fPla(p.fPla)
-  ,fCha(p.fCha)
+  ,fLayer(p.fLayer)
+  ,fStack(p.fStack)
   ,fLength(p.fLength)
   ,fWidth(p.fWidth)
   ,fLengthRim(p.fLengthRim)
@@ -115,6 +116,7 @@ AliTRDpadPlane::AliTRDpadPlane(const AliTRDpadPlane &p)
   ,fPadRow(0)
   ,fPadCol(0)
   ,fPadRowSMOffset(p.fPadRowSMOffset)
+  ,fAnodeWireOffset(p.fAnodeWireOffset)
 {
   //
   // AliTRDpadPlane copy constructor
@@ -122,20 +124,14 @@ AliTRDpadPlane::AliTRDpadPlane(const AliTRDpadPlane &p)
 
   Int_t iBin = 0;
 
-  if (((AliTRDpadPlane &) p).fPadRow) {
-    delete [] ((AliTRDpadPlane &) p).fPadRow;
-  }
-  ((AliTRDpadPlane &) p).fPadRow = new Double_t[fNrows];
+  fPadRow = new Double_t[fNrows];
   for (iBin = 0; iBin < fNrows; iBin++) {
-    ((AliTRDpadPlane &) p).fPadRow[iBin] = fPadRow[iBin];
+    fPadRow[iBin] = ((AliTRDpadPlane &) p).fPadRow[iBin];
   }                                                                             
 
-  if (((AliTRDpadPlane &) p).fPadCol) {
-    delete [] ((AliTRDpadPlane &) p).fPadCol;
-  }
-  ((AliTRDpadPlane &) p).fPadCol = new Double_t[fNrows];
+  fPadCol = new Double_t[fNrows];
   for (iBin = 0; iBin < fNrows; iBin++) {
-    ((AliTRDpadPlane &) p).fPadCol[iBin] = fPadCol[iBin];
+    fPadCol[iBin] = ((AliTRDpadPlane &) p).fPadCol[iBin];
   }                                                                             
 
 }
@@ -166,10 +162,49 @@ AliTRDpadPlane &AliTRDpadPlane::operator=(const AliTRDpadPlane &p)
   // Assignment operator
   //
 
-  if (this != &p) {
-    ((AliTRDpadPlane &) p).Copy(*this);
+  if (this == &p) {
+    return *this;
   }
 
+  fLayer           = p.fLayer;
+  fStack           = p.fStack;
+  fLength          = p.fLength;
+  fWidth           = p.fWidth;
+  fLengthRim       = p.fLengthRim;
+  fWidthRim        = p.fLengthRim;
+  fLengthOPad      = p.fLengthOPad;
+  fWidthOPad       = p.fWidthOPad;
+  fLengthIPad      = p.fLengthIPad;
+  fWidthIPad       = p.fWidthIPad;
+  fRowSpacing      = p.fRowSpacing;
+  fColSpacing      = p.fColSpacing;
+  fNrows           = p.fNrows;
+  fNcols           = p.fNcols;
+  fTiltingAngle    = p.fTiltingAngle;
+  fTiltingTan      = p.fTiltingTan;
+  fPadRow          = 0;
+  fPadCol          = 0;
+  fPadRowSMOffset  = p.fPadRowSMOffset;
+  fAnodeWireOffset = p.fAnodeWireOffset;
+
+  Int_t iBin = 0;
+
+  if (fPadRow) {
+    delete [] fPadRow;
+  }
+  fPadRow = new Double_t[fNrows];
+  for (iBin = 0; iBin < fNrows; iBin++) {
+    fPadRow[iBin] = ((AliTRDpadPlane &) p).fPadRow[iBin];
+  }                                                                             
+
+  if (fPadCol) {
+    delete [] fPadCol;
+  }
+  fPadCol = new Double_t[fNrows];
+  for (iBin = 0; iBin < fNrows; iBin++) {
+    fPadCol[iBin] = ((AliTRDpadPlane &) p).fPadCol[iBin];
+  }                                                                             
+
   return *this;
 
 }
@@ -183,28 +218,29 @@ void AliTRDpadPlane::Copy(TObject &p) const
 
   Int_t iBin = 0;
 
-  ((AliTRDpadPlane &) p).fPla            = fPla;
-  ((AliTRDpadPlane &) p).fCha            = fCha;
+  ((AliTRDpadPlane &) p).fLayer           = fLayer;
+  ((AliTRDpadPlane &) p).fStack           = fStack;
 
-  ((AliTRDpadPlane &) p).fLength         = fLength;
-  ((AliTRDpadPlane &) p).fWidth          = fWidth;
-  ((AliTRDpadPlane &) p).fLengthRim      = fLengthRim;
-  ((AliTRDpadPlane &) p).fWidthRim       = fWidthRim;
-  ((AliTRDpadPlane &) p).fLengthOPad     = fLengthOPad;
-  ((AliTRDpadPlane &) p).fWidthOPad      = fWidthOPad;
-  ((AliTRDpadPlane &) p).fLengthIPad     = fLengthIPad;
-  ((AliTRDpadPlane &) p).fWidthIPad      = fWidthIPad;
+  ((AliTRDpadPlane &) p).fLength          = fLength;
+  ((AliTRDpadPlane &) p).fWidth           = fWidth;
+  ((AliTRDpadPlane &) p).fLengthRim       = fLengthRim;
+  ((AliTRDpadPlane &) p).fWidthRim        = fWidthRim;
+  ((AliTRDpadPlane &) p).fLengthOPad      = fLengthOPad;
+  ((AliTRDpadPlane &) p).fWidthOPad       = fWidthOPad;
+  ((AliTRDpadPlane &) p).fLengthIPad      = fLengthIPad;
+  ((AliTRDpadPlane &) p).fWidthIPad       = fWidthIPad;
 
-  ((AliTRDpadPlane &) p).fRowSpacing     = fRowSpacing;
-  ((AliTRDpadPlane &) p).fColSpacing     = fColSpacing;
+  ((AliTRDpadPlane &) p).fRowSpacing      = fRowSpacing;
+  ((AliTRDpadPlane &) p).fColSpacing      = fColSpacing;
 
-  ((AliTRDpadPlane &) p).fNrows          = fNrows;
-  ((AliTRDpadPlane &) p).fNcols          = fNcols;
+  ((AliTRDpadPlane &) p).fNrows           = fNrows;
+  ((AliTRDpadPlane &) p).fNcols           = fNcols;
 
-  ((AliTRDpadPlane &) p).fTiltingAngle   = fTiltingAngle;
-  ((AliTRDpadPlane &) p).fTiltingTan     = fTiltingTan;
+  ((AliTRDpadPlane &) p).fTiltingAngle    = fTiltingAngle;
+  ((AliTRDpadPlane &) p).fTiltingTan      = fTiltingTan;
 
-  ((AliTRDpadPlane &) p).fPadRowSMOffset = fPadRowSMOffset;
+  ((AliTRDpadPlane &) p).fPadRowSMOffset  = fPadRowSMOffset;
+  ((AliTRDpadPlane &) p).fAnodeWireOffset = fAnodeWireOffset;
 
   if (((AliTRDpadPlane &) p).fPadRow) {
     delete [] ((AliTRDpadPlane &) p).fPadRow;
@@ -326,7 +362,7 @@ Int_t AliTRDpadPlane::GetPadRowNumberROC(Double_t z) const
 Int_t AliTRDpadPlane::GetPadColNumber(Double_t rphi) const
 {
   //
-  // Finds the pad column number for a given global rphi-position
+  // Finds the pad column number for a given rphi-position
   //
 
   Int_t col    = 0;
@@ -334,29 +370,29 @@ Int_t AliTRDpadPlane::GetPadColNumber(Double_t rphi) const
   Int_t nbelow = 0;
   Int_t middle = 0;
 
-  if ((rphi > GetCol0()  ) || 
-      (rphi < GetColEnd())) {
+  if ((rphi < GetCol0()  ) || 
+      (rphi > GetColEnd())) {
 
     col = -1;
 
   }
   else {
 
-    nabove = fNcols + 1;
+    nabove = fNcols;
     nbelow = 0;
     while (nabove - nbelow > 1) {
       middle = (nabove + nbelow) / 2;
-      if (rphi == fPadCol[middle-1]) {
+      if (rphi == fPadCol[middle]) {
         col    = middle;
       }
-      if (rphi  > fPadCol[middle-1]) {
-        nabove = middle;
+      if (rphi  > fPadCol[middle]) {
+        nbelow = middle;
       }
       else {
-        nbelow = middle;
+        nabove = middle;
       }
     }
-    col = nbelow - 1;
+    col = nbelow;
 
   }