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
15 #ifndef ROOT_TIterator
16 # include "TIterator.h"
21 //_____________________________________________________________________________
22 class AliMUON2DMapIterator : public TIterator
25 AliMUON2DMapIterator(const AliMpExMap& theMap);
26 AliMUON2DMapIterator(const AliMUON2DMapIterator& rhs);
27 AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator& rhs);
28 TIterator& operator=(const TIterator& rhs);
30 virtual ~AliMUON2DMapIterator();
32 ///The returned object must not be deleted by the user.
33 virtual TObject* Next();
37 virtual const TCollection* GetCollection() const;
41 AliMpExMap* Map(Int_t i) const;
44 const AliMpExMap* fkMap; ///< Top map we iterate upon
45 AliMpExMap* fCurrentMap; ///< Current map (inside top map) we are iterating upon
46 Int_t fI; ///< Map(fI) is fCurrentMap
47 Int_t fJ; ///< Current position in fCurrentMap
49 ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps