]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpPadRow.h
Updated/added comments for Doxygen
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpPadRow.h
CommitLineData
dee1d5f1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
5f91c9e8 4// $Id$
13985652 5// $MpId: AliMpPadRow.h,v 1.10 2006/05/24 13:58:21 ivana Exp $
dee1d5f1 6
7/// \ingroup sector
8/// \class AliMpPadRow
9/// \brief A pad row composed of the pad row segments.
10///
13985652 11/// \author David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 12
13#ifndef ALI_MP_PAD_ROW_H
14#define ALI_MP_PAD_ROW_H
15
2a7ea2e6 16#include <TObject.h>
17
5006ec94 18#include "AliMpContainers.h"
19
2a7ea2e6 20#include "AliMpXDirection.h"
5006ec94 21
22#ifdef WITH_ROOT
23#include <TObjArray.h>
24#endif
25
2a7ea2e6 26#ifdef WITH_STL
27#include <vector>
28#endif
5f91c9e8 29
f0e4d56c 30class AliMpVPadRowSegment;
31class AliMpMotif;
5f91c9e8 32
33class AliMpPadRow : public TObject
34{
5006ec94 35 public:
36#ifdef WITH_STL
f5671fc3 37 /// Pad row segment vector type
5006ec94 38 typedef std::vector<AliMpVPadRowSegment*> PadRowSegmentVector;
39#endif
40#ifdef WITH_ROOT
f5671fc3 41 /// Pad row segment vector type
5006ec94 42 typedef TObjArray PadRowSegmentVector;
43#endif
44
5f91c9e8 45 public:
cddd101e 46 AliMpPadRow(AliMp::XDirection direction);
5f91c9e8 47 AliMpPadRow();
48 virtual ~AliMpPadRow();
49
50 // methods
f0e4d56c 51 AliMpVPadRowSegment* AddPadRowSegment(AliMpMotif* motif,
52 Int_t motifPositionId,
53 Int_t nofPads);
54 AliMpVPadRowSegment* FindPadRowSegment(Double_t x) const;
5f91c9e8 55 Double_t HalfSizeY() const;
56
57 // set methods
58 void SetID(Int_t id);
59 void SetOffsetX(Double_t offsetX);
60
61 // get methods
62 Int_t GetID() const;
63 Int_t GetNofPadRowSegments() const;
f0e4d56c 64 AliMpVPadRowSegment* GetPadRowSegment(Int_t i) const;
5f91c9e8 65 Int_t GetNofPads() const;
66
67 private:
f0e4d56c 68 // methods
69 Double_t CurrentBorderX() const;
70
5f91c9e8 71 // data members
cddd101e 72 AliMp::XDirection fDirection; ///< the pad row x direction
829425a5 73 Int_t fID; ///< the pad row ID
74 Double_t fOffsetX; ///< the x position of the border
75 PadRowSegmentVector fSegments; ///< the pad row segments
5f91c9e8 76
829425a5 77 ClassDef(AliMpPadRow,1) // Pad row
5f91c9e8 78};
79
80#endif //ALI_MP_PAD_ROW_H
81