]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTriggerSegmentationV2.h
Minor fixes in the event tag to take into account the new way of storing the trigger...
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerSegmentationV2.h
index e5d6780f2057d98cae5f1508862f390a170b8ae7..d82390d4f35d8550c628d1a4ee7c1da52374b5e7 100644 (file)
@@ -32,7 +32,8 @@ class AliMUONTriggerSegmentationV2 : public AliMUONVGeometryDESegmentation
  public:
 
   AliMUONTriggerSegmentationV2();
-  AliMUONTriggerSegmentationV2(Int_t detElemId, AliMpPlaneType bendingOrNonBending);
+  AliMUONTriggerSegmentationV2(AliMpVSegmentation* segmentation,
+                               Int_t detElemId, AliMpPlaneType bendingOrNonBending);
   virtual ~AliMUONTriggerSegmentationV2();
       
   /// Distance between 1 pad and a position
@@ -54,6 +55,7 @@ class AliMUONTriggerSegmentationV2 : public AliMUONVGeometryDESegmentation
   virtual Bool_t HasPad(Int_t ix, Int_t iy);
   
   virtual AliMUONGeometryDirection GetDirection();
+  virtual const AliMpVSegmentation* GetMpSegmentation() const;
 
   virtual Float_t GetAnod(Float_t /*xhit*/) const;
 
@@ -62,7 +64,7 @@ class AliMUONTriggerSegmentationV2 : public AliMUONVGeometryDESegmentation
   virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y);
   virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z);
                   
-  virtual void Init(Int_t);
+  virtual void Init(Int_t) {}
   
   virtual void IntegrationLimits(Float_t& x1, Float_t& x2, Float_t& y1, Float_t& y2);
   
@@ -101,37 +103,34 @@ class AliMUONTriggerSegmentationV2 : public AliMUONVGeometryDESegmentation
   virtual TF1* CorrFunc(Int_t) const;
   virtual Int_t Sector(Float_t /*x*/, Float_t /*y*/);
 
- protected:
-
-    AliMUONTriggerSegmentationV2(const AliMUONTriggerSegmentationV2& rhs);
-    AliMUONTriggerSegmentationV2& operator=(const AliMUONTriggerSegmentationV2& rhs);
-
 public:
-    
+
     void GetPadLoc2Glo(Int_t ixLoc, Int_t iyLoc, Int_t& ixGlo, Int_t& iyGlo) const;
     void GetPadGlo2Loc(Int_t ixLoc, Int_t iyLoc, Int_t& ixGlo, Int_t& iyGlo) const;
     
-    void PC2LA(Int_t ixPC, Int_t iyPC, Int_t& ixLA, Int_t& iyLA);
-    void LA2PC(Int_t ixLA, Int_t iyLA, Int_t& ixPC, Int_t& iyPC);
+    void PC2LA(Int_t ixPC, Int_t iyPC, Int_t& ixLA, Int_t& iyLA) const;
+    void LA2PC(Int_t ixLA, Int_t iyLA, Int_t& ixPC, Int_t& iyPC) const;
     
-    void IGlo2ILoc(Int_t ixGlo, Int_t iyGlo, Int_t& ixLA, Int_t& iyLA);
-    void ILoc2IGlo(Int_t ixLA, Int_t iyLA, Int_t& ixGlo, Int_t& iyGlo);
+    void IGlo2ILoc(Int_t ixGlo, Int_t iyGlo, Int_t& ixLA, Int_t& iyLA) const;
+    void ILoc2IGlo(Int_t ixLA, Int_t iyLA, Int_t& ixGlo, Int_t& iyGlo) const;
     
     Int_t ModuleColNum(Int_t ixGlo) const;
     
-private:    
-    void ReadMappingData();
-    
+protected:
+
+    AliMUONTriggerSegmentationV2(const AliMUONTriggerSegmentationV2& rhs);
+    AliMUONTriggerSegmentationV2& operator=(const AliMUONTriggerSegmentationV2& rhs);
+
 private:
-    Int_t fDetElemId;
-    AliMpPlaneType fPlaneType;
-    const AliMpTrigger* fSlat; //!
-    AliMpTriggerSegmentation* fSlatSegmentation; //!
+    Int_t fDetElemId;          // det elem Id
+    AliMpPlaneType fPlaneType; // plane type
+    const AliMpTrigger* fSlat; // slat
+    AliMpTriggerSegmentation* fSlatSegmentation; // mapping segmentation
 //    AliMpVPadIterator* fPadIterator; //!
     AliMpPad fCurrentPad; //!FIXME: should not be needed, if we externalise the SetPad, SetHit, IntegrationLimits methods which have nothing to do here anyway, together with the iteration methods FirstPad, NextPad, MorePads, which have nothing to do here either.
-    Float_t fXhit; //!
-    Float_t fYhit; //!
-    Int_t fLineNumber; // Line number of that detection element (from 1 to 9)
+    Float_t fXhit;        //! x-position of hit
+    Float_t fYhit;        //! y-position of hit
+    Int_t fLineNumber;    // Line number of that detection element (from 1 to 9)
     
     ClassDef(AliMUONTriggerSegmentationV2,1) 
 };