]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpRowSegmentLSpecial.h
Replacement of AliMpIntPair object with algoritmic
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpRowSegmentLSpecial.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$
5 // $MpId: AliMpRowSegmentLSpecial.h,v 1.9 2006/05/24 13:58:21 ivana Exp $
6
7 /// \ingroup sector
8 /// \class AliMpRowSegmentLSpecial
9 /// \brief A special inner row segment composed of the pad rows.
10 ///
11 /// \author David Guez, Ivana Hrivnacova; IPN Orsay
12
13 #ifndef ALI_MP_ROW_SEGMENT_L_SPECIAL_H
14 #define ALI_MP_ROW_SEGMENT_L_SPECIAL_H
15
16 #include "AliMpVRowSegmentSpecial.h"
17
18 #include <TVector2.h>
19
20 class AliMpRow;
21 class AliMpPadRow;
22 class AliMpVPadRowSegment;
23
24 class AliMpRowSegmentLSpecial : public AliMpVRowSegmentSpecial
25 {
26   public:
27     AliMpRowSegmentLSpecial(AliMpRow* row, Double_t offsetX);
28     AliMpRowSegmentLSpecial();
29     virtual ~AliMpRowSegmentLSpecial();
30     
31     // methods
32     virtual void  UpdatePadsOffset();
33     virtual Double_t  LeftBorderX() const;
34     virtual Double_t  RightBorderX() const;
35
36     // geometry
37     virtual TVector2  Position() const;
38
39     // set methods
40     virtual void   SetGlobalIndices(AliMpRow* rowBefore);
41     virtual Int_t  SetIndicesToMotifPosition(Int_t i, MpPair_t indices);
42
43   protected:
44     // methods
45     virtual TVector2  MotifCenterSlow(Int_t motifPositionId) const;
46     
47   private:
48     // methods
49     AliMpVPadRowSegment* FindMostRightPadRowSegment(Int_t motifPositionId) const;
50     
51   ClassDef(AliMpRowSegmentLSpecial,1)  // Row segment
52 };
53
54 #endif //ALI_MP_ROW_SEGMENT_L_SPECIAL_H