]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/mapping/AliMpExMapIterator.h
Fix for the problem during PbPb run of Nov 2010 (Indra)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpExMapIterator.h
... / ...
CommitLineData
1#ifndef ALIMPEXMAPITERATOR_H
2#define ALIMPEXMAPITERATOR_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
9/// \ingroup core
10/// \class AliMpExMapIterator
11/// \brief Implementation of TIterator for AliMpExMap
12///
13// Author Laurent Aphecetche
14
15#ifndef ROOT_TIterator
16# include "TIterator.h"
17#endif
18
19class AliMpExMap;
20class TString;
21class TExMapIter;
22
23//_____________________________________________________________________________
24class AliMpExMapIterator : public TIterator
25{
26 friend class AliMpExMap;
27
28public:
29 AliMpExMapIterator(const AliMpExMap& theMap);
30 AliMpExMapIterator(const AliMpExMapIterator& rhs);
31 AliMpExMapIterator& operator=(const AliMpExMapIterator& rhs);
32 AliMpExMapIterator& operator=(const TIterator& rhs);
33
34 virtual ~AliMpExMapIterator();
35
36 /// The returned object must not be deleted by the user.
37
38 // Iterating without retrieving a key
39 virtual TObject* Next();
40
41 // Iterating with retrieving a key
42 TObject* Next(Int_t& key);
43 TObject* Next(Int_t& keyFirst, Int_t& keySecond);
44 TObject* Next(TString& key);
45
46 virtual void Reset();
47
48 virtual const TCollection* GetCollection() const;
49
50private:
51#if ROOT_SVN_REVISION >= 29598
52 Bool_t Next(Long64_t& index, TObject*& object);
53#else
54 Bool_t Next(Long_t& index, TObject*& object);
55#endif
56
57 TExMapIter* fIterator; ///< iterator we are wrapping
58
59 ClassDef(AliMpExMapIterator,0) // TIterator for AliMpExMap
60};
61
62
63#endif