]>
Commit | Line | Data |
---|---|---|
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 | ||
9 | /// \ingroup base | |
10 | /// \class AliMUON2DMapIterator | |
11 | /// \brief Implementation of AliMUONVDataIterator for 2D maps | |
12 | /// | |
78649106 | 13 | // Author Laurent Aphecetche |
f246123b | 14 | |
15 | #ifndef ROOT_TObject | |
16 | # include "TObject.h" | |
17 | #endif | |
18 | #ifndef ROOT_TExMap | |
19 | # include "TExMap.h" | |
20 | #endif | |
21 | #ifndef ALIMUONVDATAITERATOR_H | |
22 | # include "AliMUONVDataIterator.h" | |
23 | #endif | |
24 | ||
25 | class AliMpExMap; | |
26 | ||
27 | //_____________________________________________________________________________ | |
28 | class AliMUON2DMapIterator : public AliMUONVDataIterator | |
29 | { | |
30 | public: | |
31 | AliMUON2DMapIterator(AliMpExMap& theMap); | |
32 | ||
33 | virtual ~AliMUON2DMapIterator(); | |
34 | ||
fb9b1607 | 35 | /** The object returned by this iterator is an AliMUONObjectPair(TObject* key,TObject* value) |
f246123b | 36 | where key is an AliMpIntPair (detElemId,manuId), and value is |
37 | an AliMUONVCalibParam. | |
38 | The returned object must be deleted by the user. | |
39 | */ | |
40 | virtual TObject* Next(); | |
41 | ||
42 | virtual void Reset(); | |
43 | ||
44 | virtual Bool_t Remove(); | |
45 | ||
46 | private: | |
c4ee792d | 47 | /// copy ctor will not implemented |
48 | AliMUON2DMapIterator(const AliMUON2DMapIterator&); | |
49 | /// assignement operator will not implemented | |
f246123b | 50 | AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator&); |
51 | ||
c4ee792d | 52 | TObject* GetValue(TExMapIter& iter, Int_t& key) const; |
f246123b | 53 | AliMpExMap* GetMap(TExMapIter& iter, Int_t& key); |
54 | ||
55 | private: | |
c4ee792d | 56 | TExMapIter fIter; //!< first iterator |
57 | TExMapIter* fIter2; //!< second iterator | |
58 | Int_t fCurrentI; //!< current index in direction i | |
59 | Int_t fCurrentJ; //!< current index in direction j | |
f246123b | 60 | |
61 | ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps | |
62 | }; | |
63 | ||
64 | ||
65 | #endif |