1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 // $MpId: AliMpSectorAreaHPadIterator.h,v 1.7 2006/05/24 13:58:21 ivana Exp $
8 /// \class AliMpSectorAreaHPadIterator
9 /// \brief An iterator over the pads inside a given area in a sector
10 /// in horizontal direction.
12 /// \author David Guez, Ivana Hrivnacova; IPN Orsay
14 #ifndef ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H
15 #define ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H
17 #include "AliMpVPadIterator.h"
18 #include "AliMpArea.h"
21 class AliMpSectorSegmentation;
23 class AliMpSectorAreaHPadIterator : public AliMpVPadIterator
26 AliMpSectorAreaHPadIterator(const AliMpSectorSegmentation* segmentation,
27 const AliMpArea& area);
28 AliMpSectorAreaHPadIterator(const AliMpSectorAreaHPadIterator& src);
29 AliMpSectorAreaHPadIterator();
30 virtual ~AliMpSectorAreaHPadIterator();
33 AliMpSectorAreaHPadIterator&
34 operator = (const AliMpSectorAreaHPadIterator& right);
39 virtual Bool_t IsDone() const;
40 virtual AliMpPad CurrentItem() const;
41 virtual void Invalidate();
45 Bool_t IsValid() const;
48 // private data members
49 const AliMpSectorSegmentation* fkSegmentation; ///< \brief the sector segmentation
50 /// over which we iterate
51 //const AliMpArea fkArea; ///< \brief the area
52 /// (const caused problem with CINT)
53 AliMpArea fkArea; ///< the area
54 AliMpPad fCurrentPad; ///< the current pad
55 Double_t fCurrentRowPosition; ///< the current row position
57 ClassDef(AliMpSectorAreaHPadIterator,1) // iterator over motif's pads
60 #endif // ALI_MP_SECTOR_AREA_H_PAD_ITERATOR_H