]>
Commit | Line | Data |
---|---|---|
dee1d5f1 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
ea4cae7a | 4 | // $Id$ |
13985652 | 5 | // $MpId: AliMpVPadRowSegment.h,v 1.7 2006/05/24 13:58:21 ivana Exp $ |
dee1d5f1 | 6 | |
7 | /// \ingroup sector | |
8 | /// \class AliMpVPadRowSegment | |
9 | /// \brief The abstract base class for a pad row segment composed of the | |
10 | /// the identic pads. | |
11 | /// | |
13985652 | 12 | /// \author David Guez, Ivana Hrivnacova; IPN Orsay |
ea4cae7a | 13 | |
14 | #ifndef ALI_MP_V_PAD_ROW_SEGMENT_H | |
15 | #define ALI_MP_V_PAD_ROW_SEGMENT_H | |
16 | ||
17 | #include <TObject.h> | |
18 | ||
19 | class AliMpPadRow; | |
20 | class AliMpMotif; | |
21 | ||
22 | class AliMpVPadRowSegment : public TObject | |
23 | { | |
24 | public: | |
25 | AliMpVPadRowSegment(AliMpPadRow* padRow, AliMpMotif* motif, | |
26 | Int_t motifPositionId, Int_t nofPads); | |
27 | AliMpVPadRowSegment(); | |
28 | virtual ~AliMpVPadRowSegment(); | |
29 | ||
30 | // methods | |
f5671fc3 | 31 | /// Return the x coordinate of the left border |
32 | /// in the global coordinate system. | |
ea4cae7a | 33 | virtual Double_t LeftBorderX() const = 0; |
f5671fc3 | 34 | /// Return the x coordinate of the right border |
35 | /// in the global coordinate system. | |
ea4cae7a | 36 | virtual Double_t RightBorderX() const = 0; |
37 | virtual Double_t HalfSizeY() const; | |
38 | ||
39 | // get methods | |
40 | virtual AliMpPadRow* GetPadRow() const; | |
41 | virtual AliMpMotif* GetMotif() const; | |
42 | virtual Int_t GetMotifPositionId() const; | |
f5671fc3 | 43 | /// Return number of pads |
ea4cae7a | 44 | Int_t GetNofPads() const {return fNofPads;} |
45 | ||
46 | // set methods | |
47 | void SetOffsetX(Double_t offsetX); | |
48 | ||
49 | protected: | |
f5671fc3 | 50 | /// Return the x position of the right/left border |
ea4cae7a | 51 | Double_t GetOffsetX() const { return fOffsetX; } |
52 | ||
53 | private: | |
f5671fc3 | 54 | /// Not implemented |
13e7956b | 55 | AliMpVPadRowSegment(const AliMpVPadRowSegment& right); |
f5671fc3 | 56 | /// Not implemented |
13e7956b | 57 | AliMpVPadRowSegment& operator = (const AliMpVPadRowSegment& right); |
58 | ||
ea4cae7a | 59 | // data members |
829425a5 | 60 | Int_t fNofPads; ///< number of pads |
61 | Double_t fOffsetX; ///< the x position of the right/left border | |
62 | AliMpPadRow* fPadRow; ///< the pad row containing this segment | |
63 | AliMpMotif* fMotif; ///< the motif | |
64 | Int_t fMotifPositionId; ///< the motif position id | |
ea4cae7a | 65 | |
829425a5 | 66 | ClassDef(AliMpVPadRowSegment,1) // Row segment |
ea4cae7a | 67 | }; |
68 | ||
69 | #endif //ALI_MP_V_PAD_ROW_SEGMENT_H | |
70 |