Added get functions to access mapping.
authormartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 14 Jun 2005 10:28:28 +0000 (10:28 +0000)
committermartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 14 Jun 2005 10:28:28 +0000 (10:28 +0000)
(Ivana)

MUON/AliMUONGeometrySegmentation.cxx
MUON/AliMUONGeometrySegmentation.h
MUON/AliMUONSt12QuadrantSegmentation.cxx
MUON/AliMUONSt12QuadrantSegmentation.h
MUON/mapping/AliMpSectorSegmentation.h

index 47532dc..2009258 100644 (file)
@@ -152,6 +152,18 @@ void AliMUONGeometrySegmentation::Add(Int_t detElemId,
   fDESegmentations->Add(detElemId, segmentation); 
 }  
 
+
+//______________________________________________________________________________
+const AliMUONVGeometryDESegmentation* 
+AliMUONGeometrySegmentation::GetDESegmentation(Int_t detElemId) const
+{
+// Return the DE segmentation 
+
+  if (!OwnNotify(detElemId)) return 0;
+
+  return fCurrentSegmentation;
+}
+
 //______________________________________________________________________________
 AliMUONGeometryDirection 
 AliMUONGeometrySegmentation::GetDirection(Int_t detElemId) const
index 0082f63..c5d40aa 100644 (file)
@@ -41,6 +41,8 @@ class AliMUONGeometrySegmentation : public TObject
  
     // get methods
     AliMUONGeometryModule* GetGeometry() const;              
+    virtual const AliMUONVGeometryDESegmentation* GetDESegmentation(Int_t detElemId) const;
+                       // DE segmentation
     virtual AliMUONGeometryDirection GetDirection(Int_t detElemId) const;
                        // Direction with a constant pad size  
                       // (Direction or coordinate where the resolution is the best)
index 22938e2..1258f37 100644 (file)
@@ -253,6 +253,16 @@ AliMUONGeometryDirection  AliMUONSt12QuadrantSegmentation::GetDirection()
 }  
 
 //______________________________________________________________________________
+const AliMpSectorSegmentation*  
+AliMUONSt12QuadrantSegmentation::GetMpSegmentation() const
+{
+// Returns the mapping segmentation
+// (provides access to electronics info)
+
+  return fSectorSegmentation;
+}  
+
+//______________________________________________________________________________
 Float_t AliMUONSt12QuadrantSegmentation::GetAnod(Float_t xhit) const
 {
 // Anod wire coordinate closest to xhit
index c6c5010..cf5bccd 100644 (file)
@@ -60,6 +60,8 @@ class AliMUONSt12QuadrantSegmentation : public AliMUONVGeometryDESegmentation
     //
     virtual AliMUONGeometryDirection  GetDirection();
                        // Returns the direction with a constant pad size
+    // Access to mapping
+    virtual const AliMpSectorSegmentation* GetMpSegmentation() const;                 
 
     // Transform from pad (wire) to real coordinates and vice versa
     //
index ebd3de0..3f5106e 100755 (executable)
@@ -58,6 +58,8 @@ class AliMpSectorSegmentation : public AliMpVSegmentation
     TVector2 GetMinPadDimensions() const;
     Bool_t CircleTest(const AliMpIntPair& indices) const;
     void   PrintZones() const;
+   
+    const AliMpSector* GetSector() const;
 
   protected:
     AliMpSectorSegmentation(const AliMpSectorSegmentation& right);
@@ -99,5 +101,11 @@ class AliMpSectorSegmentation : public AliMpVSegmentation
   ClassDef(AliMpSectorSegmentation,1)  // Segmentation
 };
 
+
+// inline functions
+
+inline const AliMpSector* AliMpSectorSegmentation::GetSector() const
+{ return fkSector; }
+
 #endif //ALI_MP_SECTOR_SEGMENTATION_H