4 // Class AliMpSectorAreaHPadIterator
5 // ---------------------------------
6 // Class, which defines an iterator over the pads
7 // inside a given area in a sector in horizontal direction.
9 // Authors: David Guez, Ivana Hrivnacova; IPN Orsay
11 #ifndef ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H
12 #define ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H
14 #include "AliMpVPadIterator.h"
15 #include "AliMpArea.h"
18 class AliMpSectorSegmentation;
20 class AliMpSectorAreaHPadIterator : public AliMpVPadIterator
23 AliMpSectorAreaHPadIterator(const AliMpSectorSegmentation* segmentation,
24 const AliMpArea& area);
25 AliMpSectorAreaHPadIterator(const AliMpSectorAreaHPadIterator& src);
26 AliMpSectorAreaHPadIterator();
27 virtual ~AliMpSectorAreaHPadIterator();
30 AliMpSectorAreaHPadIterator&
31 operator = (const AliMpSectorAreaHPadIterator& right);
36 virtual Bool_t IsDone() const;
37 virtual AliMpPad CurrentItem() const;
38 virtual void Invalidate();
42 Bool_t IsValid() const;
45 // private data members
46 const AliMpSectorSegmentation* fkSegmentation; // the sector segmentation
47 // over which we iterate
48 //const AliMpArea fkArea; // the area
49 // (const caused problem with CINT)
50 AliMpArea fkArea; // the area
51 AliMpPad fCurrentPad; // the current pad
52 Double_t fCurrentRowPosition; // the current row position
54 ClassDef(AliMpSectorAreaHPadIterator,1) // iterator over motif's pads
57 #endif // ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H