]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpRegionalTrigger.h
Flexible pt range for the efficiency histogramming
[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 using std::istream;
27
28 class AliMpRegionalTrigger : public  TObject{
29
30   public:
31     AliMpRegionalTrigger();
32     AliMpRegionalTrigger(const AliMpRegionalTrigger& rhs);
33     AliMpRegionalTrigger(TRootIOCtor* ioCtor);
34     virtual ~AliMpRegionalTrigger();
35     
36     // operators
37     AliMpRegionalTrigger& operator=(const AliMpRegionalTrigger& rhs);
38
39     // methods
40     Bool_t ReadData(const TString& fileName);
41     Bool_t ReadData(const AliMpDataStreams& dataStreams);
42     
43     AliMpTriggerCrate* FindTriggerCrate(TString crateName, Bool_t warn = true) const;
44     AliMpLocalBoard*   FindLocalBoard(Int_t localBoardId, Bool_t warn = true) const;
45
46     // method for looping
47
48     TIterator* CreateCrateIterator() const;
49     
50     TIterator* CreateLocalBoardIterator() const;
51     
52     Int_t LocalBoardId(Int_t index) const;
53     
54     Int_t GetNofTriggerCrates() const;
55
56     Int_t GetNofLocalBoards() const;
57     
58     // ownership
59     void SetTriggerCratesOwner(Bool_t owner);
60
61   private:
62     Bool_t ReadData(istream& in);
63
64     // data members  
65     AliMpExMap  fTriggerCrates; ///< map for trigger crates
66     AliMpExMap  fLocalBoardMap; ///< map of local boards (owner of boards)
67     TObjArray   fLocalBoardArray; ///< array of local boards (not owner of boards, the map is the owner)
68  
69   ClassDef(AliMpRegionalTrigger,2) // Regional trigger crate
70 };
71
72
73 #endif //ALI_MP_REGIONAL__CRATE_H
74
75
76
77
78
79
80
81
82
83
84
85
86
87