Small optimizations
[u/mrichter/AliRoot.git] / MUON / AliMUON2DMapIterator.h
CommitLineData
f246123b 1#ifndef ALIMUON2DMAPITERATOR_H
2#define ALIMUON2DMAPITERATOR_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5* See cxx source for full Copyright notice */
6
7// $Id$
8
a3d37091 9/// \ingroup calib
f246123b 10/// \class AliMUON2DMapIterator
cb6388d5 11/// \brief Implementation of TIterator for 2D maps
f246123b 12///
78649106 13// Author Laurent Aphecetche
f246123b 14
cb6388d5 15#ifndef ROOT_TIterator
16# include "TIterator.h"
f246123b 17#endif
18
19class AliMpExMap;
20
21//_____________________________________________________________________________
cb6388d5 22class AliMUON2DMapIterator : public TIterator
f246123b 23{
24public:
47a48067 25 AliMUON2DMapIterator(AliMpExMap* theMap);
cb6388d5 26 AliMUON2DMapIterator(const AliMUON2DMapIterator& rhs);
27 AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator& rhs);
28 TIterator& operator=(const TIterator& rhs);
f246123b 29
30 virtual ~AliMUON2DMapIterator();
31
cb6388d5 32 ///The returned object must not be deleted by the user.
f246123b 33 virtual TObject* Next();
34
35 virtual void Reset();
36
cb6388d5 37 virtual const TCollection* GetCollection() const;
a3d37091 38
f246123b 39private:
47a48067 40
41 AliMpExMap* Map(Int_t i) const;
f246123b 42
43private:
47a48067 44 AliMpExMap* fMap; ///< 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
48
f246123b 49 ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps
50};
51
52
53#endif