]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpVIndexed.h
trigger geometry part made more compact
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpVIndexed.h
CommitLineData
5f91c9e8 1// $Id$
2// Category: basic
3//
4// Class AliMpVIndexed
5// -------------------
6// Class that defines the limits of global pad indices.
7//
8// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
9
10#ifndef ALI_MP_V_INDEXED_H
11#define ALI_MP_V_INDEXED_H
12
13#include <TObject.h>
14
15#include "AliMpIntPair.h"
16
17class AliMpVPadIterator;
18
19class AliMpVIndexed : public TObject
20{
21 public:
22 AliMpVIndexed(AliMpIntPair lowLimit, AliMpIntPair highLimit);
23 AliMpVIndexed();
24 virtual ~AliMpVIndexed();
25
26 // methods
27 virtual AliMpVPadIterator* CreateIterator() const = 0;
28 virtual AliMpIntPair GlobalIndices(const AliMpIntPair& localIndices) const;
29
30 // set methods
31 void SetLowIndicesLimit(AliMpIntPair limit);
32 void SetHighIndicesLimit(AliMpIntPair limit);
33
34 // get methods
35 Bool_t HasIndices(const AliMpIntPair& indices) const;
36 Bool_t HasValidIndices() const;
37 AliMpIntPair GetLowIndicesLimit() const;
38 AliMpIntPair GetHighIndicesLimit() const;
39
40 private:
41 // data members
42 AliMpIntPair fLowIndicesLimit; // the lowest global pad indices
43 AliMpIntPair fHighIndicesLimit; // the hihgest global pad indices
44
45 ClassDef(AliMpVIndexed,1) // A motif position
46};
47
48// inline functions
49
50inline void AliMpVIndexed::SetLowIndicesLimit(AliMpIntPair limit)
51{ fLowIndicesLimit = limit; }
52
53inline void AliMpVIndexed::SetHighIndicesLimit(AliMpIntPair limit)
54{ fHighIndicesLimit = limit; }
55
56inline AliMpIntPair AliMpVIndexed::GetLowIndicesLimit() const
57{ return fLowIndicesLimit; }
58
59inline AliMpIntPair AliMpVIndexed::GetHighIndicesLimit() const
60{ return fHighIndicesLimit; }
61
62#endif //ALI_MP_V_INDEXED_H