]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/mapping/AliMpVSegmentation.h
Option for customized binning (as in AliUEHist), EventMixing binning now derived...
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpVSegmentation.h
index 52f7cb1699aa2012158913158ef3823f1e24dc15..3cca8b62a0eb859c55c0eeeab253e147a58145ed 100644 (file)
@@ -1,3 +1,5 @@
+
+
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
 
 #include <TObject.h>
 
-#include "AliMpPadPair.h"
 #include "AliMpPad.h"
 #include "AliMpPlaneType.h"
 #include "AliMpStationType.h"
 
 class AliMpVPadIterator;
-class AliMpIntPair;
 class AliMpArea;
 class AliMpMotifPosition;
 
 class TArrayI;
-class TVector2;
 class TObjArray;
 
 class AliMpVSegmentation : public TObject
@@ -58,30 +57,21 @@ class AliMpVSegmentation : public TObject
                                 Bool_t includeVoid=kFALSE) const = 0;
 
             /// Find pad by location
-    virtual AliMpPad PadByLocation(const AliMpIntPair& location
-                               Bool_t warning = true) const = 0;
+    virtual AliMpPad PadByLocation(Int_t manuId, Int_t manuChannel
+                                Bool_t warning = true) const = 0;
             /// Find pad by indices
-    virtual AliMpPad PadByIndices (const AliMpIntPair& indices,  
+    virtual AliMpPad PadByIndices (Int_t ix, Int_t iy,  
                                Bool_t warning = true) const = 0;
             /// Find pad by position
-    virtual AliMpPad PadByPosition(const TVector2& position,
+    virtual AliMpPad PadByPosition(Double_t x, Double_t y,
                                Bool_t warning = true) const = 0;
-
-    virtual AliMpPadPair PadsUp(const AliMpPad& pad) const;
-    virtual AliMpPadPair PadsDown(const AliMpPad& pad) const;
-    virtual AliMpPadPair PadsLeft(const AliMpPad& pad) const;
-    virtual AliMpPadPair PadsRight(const AliMpPad& pad) const;
-
             /// Return true if the pad with given indices exists.
             /// Compared with the PadByIndices method, this one can generally be implemented
             /// faster, as one does not have to create an AliMpPad object... 
-    virtual Bool_t HasPadByIndices(const AliMpIntPair& indices) const;
+    virtual Bool_t HasPadByIndices(Int_t ix, Int_t iy) const;
   
             /// Return true if the pad with given location exists
-    virtual Bool_t HasPadByLocation(const AliMpIntPair& location) const;
-  
-            /// For backward compatibility
-    virtual Bool_t HasPad(const AliMpIntPair& indices) const { return HasPadByIndices(indices); }
+    virtual Bool_t HasPadByLocation(Int_t manuId, Int_t manuChannel) const;
   
             /// Return maximum pad index in X direction
     virtual Int_t  MaxPadIndexX() const = 0;
@@ -108,18 +98,17 @@ class AliMpVSegmentation : public TObject
             /// Return the station type
     virtual AliMp::StationType StationType() const = 0;
 
-            /// Return the half-sizes of the detection element
-    virtual TVector2 Dimensions() const = 0;
+            /// Return the x half-sizes of the detection element
+    virtual Double_t  GetDimensionX() const = 0;
+            /// Return the y half-sizes of the detection element
+    virtual Double_t  GetDimensionY() const = 0;
     
-            /// Return the position of the origine of the detection element
-    virtual TVector2 Position() const = 0;
-  
-  
-  private:  
-    // methods
-    AliMpPadPair FindPads(const TVector2& position1, 
-                          const TVector2& position2) const;
+            /// Return the x position of the origin of the detection element
+    virtual Double_t  GetPositionX() const = 0;
+            /// Return the y position of the origin of the detection element
+    virtual Double_t  GetPositionY() const = 0;
 
+  
   ClassDef(AliMpVSegmentation,1)  // Segmentation
 };