Line data Source code
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: AliMpRowSegmentRSpecial.h,v 1.9 2006/05/24 13:58:21 ivana Exp $
6 :
7 : /// \ingroup sector
8 : /// \class AliMpRowSegmentRSpecial
9 : /// \brief A special outer row segment composed of the pad rows.
10 : ///
11 : /// \author David Guez, Ivana Hrivnacova; IPN Orsay
12 :
13 : #ifndef ALI_MP_ROW_SEGMENT_R_SPECIAL_H
14 : #define ALI_MP_ROW_SEGMENT_R_SPECIAL_H
15 :
16 : #include "AliMpVRowSegmentSpecial.h"
17 :
18 : class AliMpRow;
19 : class AliMpPadRow;
20 : class AliMpVPadRowSegment;
21 :
22 : class AliMpRowSegmentRSpecial : public AliMpVRowSegmentSpecial
23 : {
24 : public:
25 : AliMpRowSegmentRSpecial(AliMpRow* row, Double_t offsetX);
26 : AliMpRowSegmentRSpecial();
27 : virtual ~AliMpRowSegmentRSpecial();
28 :
29 : // methods
30 : /// Nothing to be done for outer segments
31 114 : virtual void UpdatePadsOffset() {}
32 : virtual Double_t LeftBorderX() const;
33 : virtual Double_t RightBorderX() const;
34 :
35 : // geometry
36 : virtual Double_t GetPositionX() const;
37 : virtual Double_t GetPositionY() 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 void MotifCenterSlow(Int_t motifPositionId,
46 : Double_t& x, Double_t& y) const;
47 :
48 : private:
49 : // methods
50 : AliMpVPadRowSegment* FindMostLeftPadRowSegment(Int_t motifPositionId) const;
51 : void SetGlobalIndicesLow();
52 :
53 18 : ClassDef(AliMpRowSegmentRSpecial,1) // Row segment
54 : };
55 :
56 : #endif //ALI_MP_ROW_SEGMENT_R_SPECIAL_H
|