]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpMotifPosition.h
Mapping test macros (D. Guez, I. Hrivnacova)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpMotifPosition.h
CommitLineData
5f91c9e8 1// $Id$
2// Category: motif
3//
4// Class AliMpMotifPosition
5// ------------------------
6// Class that represents a placed motif.
7//
8// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
9
10#ifndef ALI_MP_MOTIF_POSITION_H
11#define ALI_MP_MOTIF_POSITION_H
12
13#include <TVector2.h>
14
15#include "AliMpVIndexed.h"
16#include "AliMpVMotif.h"
17
18class AliMpVPadIterator;
19
20class AliMpMotifPosition : public AliMpVIndexed
21{
22 public:
23 AliMpMotifPosition(Int_t id, AliMpVMotif* motif, TVector2 position);
24 AliMpMotifPosition();
25 virtual ~AliMpMotifPosition();
26
27 // methods
28 virtual AliMpVPadIterator* CreateIterator() const;
29
30 // get methods
31 Int_t GetID() const;
32 AliMpVMotif* GetMotif() const;
33 Bool_t HasPad(const AliMpIntPair& indices) const;
34
35 // Geometry
36 TVector2 Position() const;
37 TVector2 Dimensions() const;
38
fb1bf5c0 39 protected:
40 AliMpMotifPosition(const AliMpMotifPosition& right);
41 AliMpMotifPosition& operator = (const AliMpMotifPosition& right);
42
5f91c9e8 43 private:
44 // methods
45 // data members
46 Int_t fID; //identifier
47 AliMpVMotif* fMotif; //motif
48 TVector2 fPosition; //position
49
50 ClassDef(AliMpMotifPosition,1) // A motif position
51};
52
53// inline functions
54
55inline Int_t AliMpMotifPosition::GetID() const
56{ return fID; }
57
58inline AliMpVMotif* AliMpMotifPosition::GetMotif() const
59{ return fMotif; }
60
61inline TVector2 AliMpMotifPosition::Position() const
62{ return fPosition; }
63
64inline TVector2 AliMpMotifPosition::Dimensions() const
65{ return fMotif->Dimensions(); }
66
67#endif //ALI_MP_MOTIF_POSITION_H