]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpVPadRowSegment.h
mapping/AliMpPlaneSegmentation.cxx
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpVPadRowSegment.h
CommitLineData
ea4cae7a 1// $Id$
2// ---------------------------------------------------------------
3// Category: sector
4//
5// Class AliMpVPadRowSegment
6// -------------------------
7// The abstract base class for a pad row segment composed of the
8// the identic pads.
9//
10// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
11
12#ifndef ALI_MP_V_PAD_ROW_SEGMENT_H
13#define ALI_MP_V_PAD_ROW_SEGMENT_H
14
15#include <TObject.h>
16
17class AliMpPadRow;
18class AliMpMotif;
19
20class AliMpVPadRowSegment : public TObject
21{
22 public:
23 AliMpVPadRowSegment(AliMpPadRow* padRow, AliMpMotif* motif,
24 Int_t motifPositionId, Int_t nofPads);
25 AliMpVPadRowSegment();
26 virtual ~AliMpVPadRowSegment();
27
28 // methods
29 virtual Double_t LeftBorderX() const = 0;
30 virtual Double_t RightBorderX() const = 0;
31 virtual Double_t HalfSizeY() const;
32
33 // get methods
34 virtual AliMpPadRow* GetPadRow() const;
35 virtual AliMpMotif* GetMotif() const;
36 virtual Int_t GetMotifPositionId() const;
37 Int_t GetNofPads() const {return fNofPads;}
38
39 // set methods
40 void SetOffsetX(Double_t offsetX);
41
42 protected:
fb1bf5c0 43 AliMpVPadRowSegment(const AliMpVPadRowSegment& right);
44 AliMpVPadRowSegment& operator = (const AliMpVPadRowSegment& right);
45
ea4cae7a 46 Double_t GetOffsetX() const { return fOffsetX; }
47
48 private:
49 // data members
50 Int_t fNofPads; //number of pads
51 Double_t fOffsetX; //the x position of the right/left border
52 AliMpPadRow* fPadRow; //the pad row containing this segment
53 AliMpMotif* fMotif; //the motif
54 Int_t fMotifPositionId; // the motif position id
55
56 ClassDef(AliMpVPadRowSegment,1) //Row segment
57};
58
59#endif //ALI_MP_V_PAD_ROW_SEGMENT_H
60