1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 // $MpId: AliMpTriggerSegmentation.h,v 1.5 2006/03/17 16:42:36 ivana Exp $
8 /// \class AliMpTriggerSegmentation
9 /// \brief Implementation of AliMpVSegmentation for trigger slats.
10 /// \author Laurent Aphecetche
12 #ifndef ALI_MP_TRIGGER_SEGMENTATION_H
13 #define ALI_MP_TRIGGER_SEGMENTATION_H
19 #ifndef ALI_MP_V_SEGMENTATION_H
20 #include "AliMpVSegmentation.h"
27 class AliMpMotifPosition;
31 class AliMpTriggerSegmentation : public AliMpVSegmentation
34 AliMpTriggerSegmentation();
35 AliMpTriggerSegmentation(const AliMpTrigger* slat);
36 virtual ~AliMpTriggerSegmentation();
38 virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
40 const char* GetName() const;
42 Bool_t HasPad(const AliMpIntPair& indices) const;
44 Int_t MaxPadIndexX() const;
45 Int_t MaxPadIndexY() const;
46 Int_t NofPads() const { return fNofStrips; }
48 virtual AliMpPad PadByLocation(const AliMpIntPair& location,
49 Bool_t warning) const;
51 virtual AliMpPad PadByIndices(const AliMpIntPair& indices,
52 Bool_t warning) const;
54 virtual AliMpPad PadByPosition(const TVector2& position,
55 Bool_t warning) const;
57 const AliMpTrigger* Slat() const;
59 virtual void GetAllElectronicCardIDs(TArrayI& ecn) const;
61 AliMpPlaneType PlaneType() const;
63 TVector2 Dimensions() const;
66 AliMpTriggerSegmentation(const AliMpTriggerSegmentation& right);
67 AliMpTriggerSegmentation& operator = (const AliMpTriggerSegmentation& right);
70 const AliMpTrigger* fkSlat; // Slat
71 Int_t fNofStrips; // Number of strips in this slat
72 ClassDef(AliMpTriggerSegmentation,2) // Segmentation for slat trigger stations