]>
Commit | Line | Data |
---|---|---|
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: AliMpMotifTypePadIterator.h,v 1.8 2006/05/24 13:58:18 ivana Exp $ |
dee1d5f1 | 6 | |
7 | /// \ingroup motif | |
8 | /// \class AliMpMotifTypePadIterator | |
9 | /// \brief An iterator over the pads of a given motif type | |
10 | /// | |
13985652 | 11 | /// \author David Guez, Ivana Hrivnacova; IPN Orsay |
5f91c9e8 | 12 | |
13 | #ifndef ALI_MP_MOTIF_TYPE_PAD_ITERATOR_H | |
14 | #define ALI_MP_MOTIF_TYPE_PAD_ITERATOR_H | |
15 | ||
16 | #include "AliMpVPadIterator.h" | |
5f91c9e8 | 17 | |
18 | class AliMpMotifType; | |
19 | ||
20 | class AliMpMotifTypePadIterator : public AliMpVPadIterator | |
21 | { | |
22 | public: | |
23 | AliMpMotifTypePadIterator(); | |
24 | AliMpMotifTypePadIterator(const AliMpMotifType* motifType); | |
25 | AliMpMotifTypePadIterator(const AliMpMotifTypePadIterator& right); | |
26 | virtual ~AliMpMotifTypePadIterator(); | |
27 | ||
28 | // operators | |
29 | AliMpMotifTypePadIterator& | |
30 | operator = (const AliMpMotifTypePadIterator& right); | |
31 | ||
32 | virtual void First(); | |
33 | virtual void Next(); | |
34 | virtual Bool_t IsDone() const; | |
35 | virtual AliMpPad CurrentItem() const; | |
36 | virtual void Invalidate(); | |
37 | ||
38 | private: | |
39 | // private methods | |
168e9c4d | 40 | Bool_t FindFirstPadInLine(Int_t ix, Int_t iy, |
41 | Int_t& newIx, Int_t& newIy) const; | |
42 | Bool_t IsValid() const; | |
5f91c9e8 | 43 | |
44 | // private data members | |
7d5d0cc5 | 45 | const AliMpMotifType* fkMotifType;///< the motif type over which iterate |
168e9c4d | 46 | Int_t fCurrentIx; ///< the current ix position inside the motif type |
47 | Int_t fCurrentIy; ///< the current iy position inside the motif type | |
5f91c9e8 | 48 | |
7d5d0cc5 | 49 | ClassDef(AliMpMotifTypePadIterator,2) // iterator over motif's pads |
5f91c9e8 | 50 | }; |
51 | ||
52 | #endif // ALI_MP_MOTIF_TYPE_PAD_ITERATOR_H |