]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpPadRow.h
Removing useless ifs
[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$
5006ec94 5// $MpId: AliMpPadRow.h,v 1.7 2005/09/26 16:12:11 ivana Exp $
dee1d5f1 6
7/// \ingroup sector
8/// \class AliMpPadRow
9/// \brief A pad row composed of the pad row segments.
10///
11/// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 12
13#ifndef ALI_MP_PAD_ROW_H
14#define ALI_MP_PAD_ROW_H
15
5006ec94 16#include "AliMpContainers.h"
17
18#ifdef WITH_STL
19#include <vector>
20#endif
21
22#ifdef WITH_ROOT
23#include <TObjArray.h>
24#endif
25
5f91c9e8 26#include <TObject.h>
27
f0e4d56c 28#include "AliMpXDirection.h"
5f91c9e8 29
f0e4d56c 30class AliMpVPadRowSegment;
31class AliMpMotif;
5f91c9e8 32
33class AliMpPadRow : public TObject
34{
5006ec94 35 public:
36#ifdef WITH_STL
37 typedef std::vector<AliMpVPadRowSegment*> PadRowSegmentVector;
38#endif
39#ifdef WITH_ROOT
40 typedef TObjArray PadRowSegmentVector;
41#endif
42
5f91c9e8 43 public:
f0e4d56c 44 AliMpPadRow(AliMpXDirection direction);
5f91c9e8 45 AliMpPadRow();
46 virtual ~AliMpPadRow();
47
48 // methods
f0e4d56c 49 AliMpVPadRowSegment* AddPadRowSegment(AliMpMotif* motif,
50 Int_t motifPositionId,
51 Int_t nofPads);
52 AliMpVPadRowSegment* FindPadRowSegment(Double_t x) const;
5f91c9e8 53 Double_t HalfSizeY() const;
54
55 // set methods
56 void SetID(Int_t id);
57 void SetOffsetX(Double_t offsetX);
58
59 // get methods
60 Int_t GetID() const;
61 Int_t GetNofPadRowSegments() const;
f0e4d56c 62 AliMpVPadRowSegment* GetPadRowSegment(Int_t i) const;
5f91c9e8 63 Int_t GetNofPads() const;
64
65 private:
f0e4d56c 66 // methods
67 Double_t CurrentBorderX() const;
68
5f91c9e8 69 // data members
f0e4d56c 70 AliMpXDirection fDirection;//the pad row x direction
71 Int_t fID; //the pad row ID
72 Double_t fOffsetX; //the x position of the border
73 PadRowSegmentVector fSegments; //the pad row segments
5f91c9e8 74
75 ClassDef(AliMpPadRow,1) //Pad row
76};
77
78#endif //ALI_MP_PAD_ROW_H
79