1 #ifndef ALIMUON2DMAPITERATOR_H
2 #define ALIMUON2DMAPITERATOR_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUON2DMapIterator
11 /// \brief Implementation of TIterator for 2D maps
13 // Author Laurent Aphecetche
18 #ifndef ROOT_TIterator
19 # include "TIterator.h"
24 //_____________________________________________________________________________
25 class AliMUON2DMapIterator : public TIterator
28 AliMUON2DMapIterator(const AliMpExMap& theMap);
29 AliMUON2DMapIterator(const AliMUON2DMapIterator& rhs);
30 AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator& rhs);
31 TIterator& operator=(const TIterator& rhs);
33 virtual ~AliMUON2DMapIterator();
35 ///The returned object must not be deleted by the user.
36 virtual TObject* Next();
40 virtual const TCollection* GetCollection() const;
43 TObject* GetValue(TExMapIter& iter, Int_t& key) const;
44 AliMpExMap* GetMap(TExMapIter& iter, Int_t& key) const;
47 TExMapIter fIter; //!< first iterator
48 TExMapIter* fIter2; //!< second iterator
49 Int_t fCurrentI; //!< current index in direction i
50 Int_t fCurrentJ; //!< current index in direction j
52 ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps