]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpSectorPadIterator.h
Coding conventions corrections only
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpSectorPadIterator.h
CommitLineData
5f91c9e8 1// $Id$
2// Category: sector
3//
4// Class AliMpSectorPadIterator
5// ----------------------------
6// Class, which defines an iterator over the pads of a sector
7//
8// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
9
2998a151 10#ifndef ALI_MP_SECTOR_PAD_ITERATOR_H
11#define ALI_MP_SECTOR_PAD_ITERATOR_H
5f91c9e8 12
2998a151 13#include "AliMpVPadIterator.h"
5f91c9e8 14#include "AliMpMotifPositionPadIterator.h"
15
16class AliMpSector;
17class AliMpMotifPosition;
18
19
20class AliMpSectorPadIterator : public AliMpVPadIterator
21{
22 public:
23 AliMpSectorPadIterator();
24 AliMpSectorPadIterator(const AliMpSector* const sector);
25 AliMpSectorPadIterator(const AliMpSectorPadIterator& src);
26 virtual ~AliMpSectorPadIterator();
27
28 // operators
29 AliMpSectorPadIterator& operator = (const AliMpSectorPadIterator& right);
30
31 // methods
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
40 AliMpMotifPosition* ResetToCurrentMotifPosition();
41 Bool_t IsValid() const;
42
43 // private data members
44 const AliMpSector* fkSector; // the sector over which to iterate
45 Int_t fCurrentRow; // the current row number
46 Int_t fCurrentSeg; // the current Row Segment number in fCurrentRow
47 Int_t fCurrentMotif; // the current motif number in fCurrentSeg
48 AliMpMotifPosition* fMotifPos; // the current motif position
49 AliMpMotifPositionPadIterator fIterator; // iterator over the current motif type
50
51 ClassDef(AliMpSectorPadIterator,1) // iterator over motif's pads
52};
53
2998a151 54#endif // ALI_MP_SECTOR_PAD_ITERATOR_H