Updated det element names (Christian)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpTriggerSegmentation.h
index a672508..01bb82d 100644 (file)
@@ -2,13 +2,13 @@
 * See cxx source for full Copyright notice                               */
 
 // $Id$
-// $MpId: AliMpTriggerSegmentation.h,v 1.2 2006/03/02 16:35:27 ivana Exp $
+// $MpId: AliMpTriggerSegmentation.h,v 1.8 2006/05/24 13:58:27 ivana Exp $
 
 /// \ingroup trigger
 /// \class AliMpTriggerSegmentation
 /// \brief Implementation of AliMpVSegmentation for trigger slats.
-/// 
-/// Author: Laurent Aphecetche
+///
+//  Author: Laurent Aphecetche
 
 #ifndef ALI_MP_TRIGGER_SEGMENTATION_H
 #define ALI_MP_TRIGGER_SEGMENTATION_H
@@ -33,17 +33,21 @@ class AliMpTriggerSegmentation : public AliMpVSegmentation
 {
 public:
   AliMpTriggerSegmentation();
-  AliMpTriggerSegmentation(const AliMpTrigger* slat);
+  AliMpTriggerSegmentation(const AliMpTrigger* slat, Bool_t own = false);
   virtual ~AliMpTriggerSegmentation();
   
   virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
-  
+  virtual AliMpVPadIterator* CreateIterator() const;
+  virtual Int_t GetNeighbours(const AliMpPad& pad, TObjArray& neighbours,
+                              Bool_t includeSelf=kFALSE,
+                              Bool_t includeVoid=kFALSE) const;
   const char* GetName() const;
   
   Bool_t HasPad(const AliMpIntPair& indices) const;
   
-  Int_t MaxPadIndexX();
-  Int_t MaxPadIndexY();
+  Int_t MaxPadIndexX() const;
+  Int_t MaxPadIndexY() const;
+  Int_t NofPads() const { return fNofStrips; }
     
   virtual AliMpPad PadByLocation(const AliMpIntPair& location, 
                                  Bool_t warning) const;
@@ -58,14 +62,19 @@ public:
    
   virtual void GetAllElectronicCardIDs(TArrayI& ecn) const;
   
-  AliMpPlaneType PlaneType() const;
+  AliMp::PlaneType PlaneType() const;
   
   TVector2 Dimensions() const;
   
 private:
-    const AliMpTrigger* fkSlat; // Slat
-  
-  ClassDef(AliMpTriggerSegmentation,1) // Segmentation for slat trigger stations
+  AliMpTriggerSegmentation(const AliMpTriggerSegmentation& right);
+  AliMpTriggerSegmentation&  operator = (const AliMpTriggerSegmentation& right);
+
+  const AliMpTrigger* fkSlat;  ///< Slat
+  Bool_t              fIsOwner;///< Trigger slat ownership     
+  Int_t fNofStrips; ///< Number of strips in this slat
+
+  ClassDef(AliMpTriggerSegmentation,3) // Segmentation for slat trigger stations
 };
 
 #endif