]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/mapping/AliMpDEIterator.h
Changing Digit by VDigit (Laurent)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDEIterator.h
... / ...
CommitLineData
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
25class AliMpDEStore;
26class AliMpDetElement;
27
28class TString;
29
30
31class AliMpDEIterator : public TObject {
32
33 public:
34 AliMpDEIterator();
35 AliMpDEIterator(const AliMpDEIterator& rhs);
36 virtual ~AliMpDEIterator();
37
38 // Operators
39 AliMpDEIterator& operator=(const AliMpDEIterator& rhs);
40
41 // Methods for iterating over DE elements
42 //
43 void First();
44 void First(Int_t chamberId);
45 void Next();
46 Bool_t IsDone() const;
47
48 AliMpDetElement* CurrentDE() const;
49 Int_t CurrentDEId() const;
50
51 private:
52 // methods
53 AliMpDetElement* GetDetElement(Int_t index) const;
54
55 // data members
56 AliMpDEStore* fDEStore; ///< DE store
57 Int_t fIndex; ///< Current DE index
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