]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpVIndexed.h
AliMpReader splitted into AliMpMotifReader and AliMpSectorReader
[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:
d1d8330f 22 AliMpVIndexed(const AliMpIntPair& lowLimit, const AliMpIntPair& highLimit);
5f91c9e8 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
d1d8330f 31 void SetLowIndicesLimit(const AliMpIntPair& limit);
32 void SetHighIndicesLimit(const AliMpIntPair& limit);
5f91c9e8 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
d1d8330f 50inline void AliMpVIndexed::SetLowIndicesLimit(const AliMpIntPair& limit)
5f91c9e8 51{ fLowIndicesLimit = limit; }
52
d1d8330f 53inline void AliMpVIndexed::SetHighIndicesLimit(const AliMpIntPair& limit)
5f91c9e8 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