4 // Class AliMpSectorAreaVPadIterator
5 // ---------------------------------
6 // Class, which defines an iterator over the pads
7 // inside a given area in a sector in vertical direction.
9 // Authors: David Guez, Ivana Hrivnacova; IPN Orsay
11 #ifndef ALI_MP_SECTOR_AREA_V_PAD_ITERATOR_H
12 #define ALI_MP_SECTOR_AREA_V_PAD_ITERATOR_H
16 #include "AliMpVPadIterator.h"
17 #include "AliMpArea.h"
20 class AliMpSectorSegmentation;
22 class AliMpSectorAreaVPadIterator : public AliMpVPadIterator
25 AliMpSectorAreaVPadIterator(const AliMpSectorSegmentation* segmentation,
26 const AliMpArea& area);
27 AliMpSectorAreaVPadIterator(const AliMpSectorAreaVPadIterator& src);
28 AliMpSectorAreaVPadIterator();
29 virtual ~AliMpSectorAreaVPadIterator();
32 AliMpSectorAreaVPadIterator&
33 operator = (const AliMpSectorAreaVPadIterator& right);
38 virtual Bool_t IsDone() const;
39 virtual AliMpPad CurrentItem() const;
40 virtual void Invalidate();
44 Bool_t IsValid() const;
47 // private data members
48 const AliMpSectorSegmentation* fkSegmentation; // the sector segmentation
49 // over which we iterate
50 //const AliMpArea fkArea; // the area
51 // (const caused problem with CINT)
52 AliMpArea fkArea; // the area
53 AliMpPad fCurrentPad; // the current pad
54 Double_t fCurrentColumnPosition; // the current column position
56 ClassDef(AliMpSectorAreaVPadIterator,1) // iterator over motif's pads
58 #endif // ALI_MP_SECTOR_AREA_V_PAD_ITERATOR_H