]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpDEIterator.h
In Mapping/macros:
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDEIterator.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$ 
5 // $MpId: AliMpDEIterator.h,v 1.5 2006/05/24 13:58:16 ivana Exp $ 
6
7 /// \ingroup management
8 /// \class AliMpDEIterator
9 /// \brief The iterator over detection elements
10 ///
11 /// It can iterate 
12 /// - over all detection elements, if started with First() function; 
13 /// - or over detection elements in a selected chamber, if started with
14 ///   First(Int_t chamberId) function                                          \n 
15 /// 
16 /// \author Ivana Hrivnacova, IPN Orsay
17
18 #ifndef ALI_MP_DE_ITERATOR_H
19 #define ALI_MP_DE_ITERATOR_H
20
21 #include <TObject.h>
22
23 #include <TArrayI.h>
24
25 class AliMpDetElement;
26 class TIterator;
27 class TString;
28
29 class AliMpDEIterator : public  TObject {
30
31   public:
32     AliMpDEIterator();
33     //AliMpDEIterator(const AliMpDEIterator& rhs);
34     virtual ~AliMpDEIterator();
35
36     // Operators
37     //AliMpDEIterator& operator=(const AliMpDEIterator& rhs);
38     
39     // Methods for iterating over DE elements
40     // 
41     void First();
42     void First(Int_t chamberId);
43     void Next();
44     Bool_t IsDone() const;
45     
46     AliMpDetElement* CurrentDE() const;
47     Int_t CurrentDEId() const;
48
49   private:
50     /// Not implemented
51     AliMpDEIterator(const AliMpDEIterator& rhs);
52     /// Not implemented
53     AliMpDEIterator& operator=(const AliMpDEIterator& rhs);
54
55     // data members     
56     AliMpDetElement* fCurrentDE; ///< current element in iteration
57     TIterator*       fIterator;  ///< iterator
58     Int_t            fChamberId; ///< The iterated chamber 
59
60   ClassDef(AliMpDEIterator,0)  // The iterator over valid detection element IDs
61 };
62
63 #endif //ALI_MP_DE_ITERATOR_H
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78