]>
Commit | Line | Data |
---|---|---|
73250182 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
700013f0 | 4 | // $Id$ |
13985652 | 5 | // $MpId: AliMpDEIterator.h,v 1.5 2006/05/24 13:58:16 ivana Exp $ |
73250182 | 6 | |
7 | /// \ingroup management | |
8 | /// \class AliMpDEIterator | |
9 | /// \brief The iterator over valid detection element IDs | |
10 | /// | |
0a478fb1 | 11 | /// The valid detection element Ids are defined in the files denames*.dat. \n |
73250182 | 12 | /// It can iterate |
13 | /// - over all valid detection elements, if started with First() function; | |
0a478fb1 | 14 | /// - or over detection elements in a selected chamber, if started with |
15 | /// First(Int_t chamberId) function \n | |
73250182 | 16 | /// |
13985652 | 17 | /// \author Ivana Hrivnacova, IPN Orsay |
73250182 | 18 | |
19 | #ifndef ALI_MP_DE_ITERATOR_H | |
20 | #define ALI_MP_DE_ITERATOR_H | |
21 | ||
2a7ea2e6 | 22 | #include <TObject.h> |
23 | ||
73250182 | 24 | #include "AliMpStationType.h" |
25 | ||
73250182 | 26 | #include <TArrayI.h> |
27 | ||
28 | class TString; | |
29 | ||
30 | class AliMpDEIterator : public TObject { | |
31 | ||
32 | public: | |
33 | AliMpDEIterator(); | |
34 | AliMpDEIterator(const AliMpDEIterator& rhs); | |
35 | virtual ~AliMpDEIterator(); | |
36 | ||
37 | // Operators | |
38 | AliMpDEIterator& operator=(const AliMpDEIterator& rhs); | |
39 | ||
40 | // Methods for iterating over DE elements | |
41 | // | |
42 | void First(); | |
0a478fb1 | 43 | void First(Int_t chamberId); |
73250182 | 44 | void Next(); |
45 | Bool_t IsDone() const; | |
46 | Int_t CurrentDE() const; | |
47 | ||
48 | private: | |
49 | // static methods | |
50 | static Bool_t ReadDEIds(AliMpStationType station); | |
51 | static void ReadData(); | |
52 | ||
53 | // static data members | |
829425a5 | 54 | static const Int_t fgkMaxNofDetElements; ///< Maximum number of DEs |
55 | static TArrayI fgDetElemIds; ///< DE Ids | |
56 | static Int_t fgNofDetElemIds; ///< Number of DE Ids | |
73250182 | 57 | |
58 | // data members | |
0a478fb1 | 59 | Int_t fIndex; ///< Current DE index |
60 | Int_t fChamberId; ///< The iterated chamber | |
73250182 | 61 | |
829425a5 | 62 | ClassDef(AliMpDEIterator,0) // The iterator over valid detection element IDs |
73250182 | 63 | }; |
64 | ||
65 | #endif //ALI_MP_DE_ITERATOR_H | |
66 | ||
67 | ||
68 | ||
69 | ||
70 | ||
71 | ||
72 | ||
73 | ||
74 | ||
75 | ||
76 | ||
77 | ||
78 | ||
79 | ||
80 |