]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUON2DMapIterator.h
Removing dependences on AliDAQ class (in raw)
[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
9/// \ingroup base
10/// \class AliMUON2DMapIterator
11/// \brief Implementation of AliMUONVDataIterator for 2D maps
12///
13/// \author Laurent Aphecetche
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
25class AliMpExMap;
26
27//_____________________________________________________________________________
28class AliMUON2DMapIterator : public AliMUONVDataIterator
29{
30public:
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
46private:
47 // copy ctor will not implemented
48 AliMUON2DMapIterator(const AliMUON2DMapIterator&);
49 // assignement operator will not implemented
50 AliMUON2DMapIterator& operator=(const AliMUON2DMapIterator&);
51
52 TObject* GetValue(TExMapIter& iter, Int_t& key) const;
53 AliMpExMap* GetMap(TExMapIter& iter, Int_t& key);
54
55private:
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
60
61 ClassDef(AliMUON2DMapIterator,0) // VDataIterator for 2D maps
62};
63
64
65#endif