]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpDEIterator.h
- Reordering includes from most specific to more general ones
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDEIterator.h
CommitLineData
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$
2a7ea2e6 5// $MpId: AliMpDEIterator.h,v 1.3 2006/03/17 11:35:58 ivana Exp $
73250182 6
7/// \ingroup management
8/// \class AliMpDEIterator
9/// \brief The iterator over valid detection element IDs
10///
11/// The valid detection element Ids are defined in the files denames*.dat. \n
12/// It can iterate
13/// - over all valid detection elements, if started with First() function;
14/// - or over detection elements in a selected module, if started with
15/// First(Int_t moduleId) function \n
16///
17/// Author: Ivana Hrivnacova, IPN Orsay
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
28class TString;
29
30class 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();
43 void First(Int_t moduleId);
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
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
57
58 // data members
59 Int_t fIndex; // Current DE index
60 Int_t fModuleId; // The iterated module
61
62 ClassDef(AliMpDEIterator,0) // MUON Factory for Chambers and Segmentation
63};
64
65#endif //ALI_MP_DE_ITERATOR_H
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80