]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpRegionalTrigger.h
In mapping:
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpRegionalTrigger.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $MpId: $ 
5
6 /// \ingroup mptrigger
7 /// \class AliMpRegionalTrigger
8 /// \brief The class defines the properties of regional trigger crate
9 ///
10 /// \author Ch. Finck, Subatech Nantes; I. Hrivnacova, IPN Orsay
11
12 #ifndef ALI_MP_REGIONAL_TRIGGER_H
13 #define ALI_MP_REGIONAL_TRIGGER_H
14
15 #include <TObject.h>
16
17 #include "AliMpExMap.h"
18
19 #include <TObjArray.h>
20
21 class AliMpTriggerCrate;
22 class AliMpLocalBoard;
23 class AliMpDataStreams;
24 class TIterator;
25
26 class AliMpRegionalTrigger : public  TObject{
27
28   public:
29     AliMpRegionalTrigger();
30     AliMpRegionalTrigger(const AliMpRegionalTrigger& rhs);
31     AliMpRegionalTrigger(TRootIOCtor* ioCtor);
32     virtual ~AliMpRegionalTrigger();
33     
34     // operators
35     AliMpRegionalTrigger& operator=(const AliMpRegionalTrigger& rhs);
36
37     // methods
38     Bool_t ReadData(const TString& fileName);
39     Bool_t ReadData(const AliMpDataStreams& dataStreams);
40     
41     AliMpTriggerCrate* FindTriggerCrate(TString crateName, Bool_t warn = true) const;
42     AliMpLocalBoard*   FindLocalBoard(Int_t localBoardId, Bool_t warn = true) const;
43
44     // method for looping
45
46     TIterator* CreateCrateIterator() const;
47     
48     TIterator* CreateLocalBoardIterator() const;
49     
50     Int_t LocalBoardId(Int_t index) const;
51     
52     Int_t GetNofTriggerCrates() const;
53
54     Int_t GetNofLocalBoards() const;
55     
56     // ownership
57     void SetTriggerCratesOwner(Bool_t owner);
58
59   private:
60     Bool_t ReadData(istream& in);
61
62     // data members  
63     AliMpExMap  fTriggerCrates; ///< map for trigger crates
64     AliMpExMap  fLocalBoardMap; ///< map of local boards (owner of boards)
65     TObjArray   fLocalBoardArray; ///< array of local boards (not owner of boards, the map is the owner)
66  
67   ClassDef(AliMpRegionalTrigger,2) // Regional trigger crate
68 };
69
70
71 #endif //ALI_MP_REGIONAL__CRATE_H
72
73
74
75
76
77
78
79
80
81
82
83
84
85