]>
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 | ||
a3d37091 | 9 | /// \ingroup calib |
f246123b | 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. | |
a3d37091 | 38 | The returned object must be deleted by the user (as advertised by the IsOwner() method below) |
f246123b | 39 | */ |
40 | virtual TObject* Next(); | |
41 | ||
42 | virtual void Reset(); | |
43 | ||
44 | virtual Bool_t Remove(); | |
45 | ||
a3d37091 | 46 | virtual Bool_t IsOwner() const { return kTRUE; } |
47 | ||
f246123b | 48 | private: |
c4ee792d | 49 | /// copy ctor will not implemented |
50 | AliMUON2DMapIterator(const AliMUON2DMapIterator&); | |
51 | /// assignement operator will not implemented | |
f246123b | 52 | AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator&); |
53 | ||
c4ee792d | 54 | TObject* GetValue(TExMapIter& iter, Int_t& key) const; |
f246123b | 55 | AliMpExMap* GetMap(TExMapIter& iter, Int_t& key); |
56 | ||
57 | private: | |
c4ee792d | 58 | TExMapIter fIter; //!< first iterator |
59 | TExMapIter* fIter2; //!< second iterator | |
60 | Int_t fCurrentI; //!< current index in direction i | |
61 | Int_t fCurrentJ; //!< current index in direction j | |
f246123b | 62 | |
63 | ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps | |
64 | }; | |
65 | ||
66 | ||
67 | #endif |