]>
Commit | Line | Data |
---|---|---|
c8f4be1a | 1 | #ifndef ALIMUONSCALEREVENTTRIGGER_H |
2 | #define ALIMUONSCALEREVENTTRIGGER_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ||
7 | #include <TObject.h> | |
8 | ||
9 | class AliMUONScalerEventTrigger : public TObject{ | |
10 | ||
11 | public: | |
12 | AliMUONScalerEventTrigger(); | |
13 | virtual ~AliMUONScalerEventTrigger(){;} | |
14 | ||
15 | // local get methods | |
16 | UInt_t GetLocalL0() const {return fLocalL0;} | |
17 | UInt_t GetLocalHold() const {return fLocalHold;} | |
18 | UInt_t GetLocalClock() const {return fLocalClk;} | |
19 | UChar_t GetLocalSwitch() const {return (fLocalEOS >> 2) & 0x3FF;} | |
20 | UChar_t GetLocalComptXY() const {return fLocalEOS & 3;} | |
21 | ||
22 | UShort_t GetXY1(Int_t n) {return (n % 2 == 0) ? | |
23 | (fLocalScaler[n] & 0xFFFF) : (fLocalScaler[n] >> 16) & 0xFFFF;} | |
24 | UShort_t GetXY2(Int_t n) {return (n % 2 == 0) ? | |
25 | (fLocalScaler[8 + n] & 0xFFFF) : (fLocalScaler[8 + n] >> 16) & 0xFFFF;} | |
26 | UShort_t GetXY3(Int_t n) {return (n % 2 == 0) ? | |
27 | (fLocalScaler[8*2 + n] & 0xFFFF) : (fLocalScaler[8*2 + n] >> 16) & 0xFFFF;} | |
28 | UShort_t GetXY4(Int_t n) {return (n % 2 == 0) ? | |
29 | (fLocalScaler[8*3 + n] & 0xFFFF) : (fLocalScaler[8*3 + n] >> 16) & 0xFFFF;} | |
30 | ||
31 | // regional get methods | |
32 | UInt_t GetRegL0() const {return fRegL0;} | |
33 | UInt_t GetRegClock() const {return fRegClk;} | |
34 | const UInt_t* GetRegScaler() const {return fRegScaler;} | |
35 | UInt_t GetRegHold() const {return fRegHold;} | |
36 | ||
37 | // global get methods | |
38 | UInt_t GetGlobalL0() const {return fGlobalL0;} | |
39 | UInt_t GetGlobalClock() const {return fGlobalClk;} | |
40 | const UInt_t* GetGlobalScaler() const {return fGlobalScaler;} | |
41 | UInt_t GetGlobalHold() const {return fGlobalHold;} | |
42 | UInt_t GetGlobalSpare() const {return fGlobalSpare;} | |
43 | ||
44 | // DARC get methods | |
45 | UInt_t GetDarcL0R() const {return fDarcL0R;} | |
46 | UInt_t GetDarcL0U() const {return fDarcL0U;} | |
47 | UInt_t GetDarcL0P() const {return fDarcL0P;} | |
48 | UInt_t GetDarcL0S() const {return fDarcL0S;} | |
49 | UInt_t GetDarcClock() const {return fDarcClk;} | |
50 | UInt_t GetDarcHold() const {return fDarcHold;} | |
51 | ||
52 | // don't use setting methods but memcpy | |
53 | UInt_t* GetLocalScalers() {return &fLocalL0;} | |
54 | UInt_t* GetRegScalers() {return &fRegL0;} | |
55 | UInt_t* GetGlobalScalers() {return &fGlobalL0;} | |
56 | UInt_t* GetDarcScalers() {return &fDarcL0R;} | |
57 | ||
58 | // get scaler length | |
17323043 | 59 | Int_t GetLocalScalerLength() const {return fgkLocalScalerLength;} |
60 | Int_t GetRegScalerLength() const {return fgkRegScalerLength;} | |
61 | Int_t GetGlobalScalerLength() const {return fgkGlobalScalerLength;} | |
62 | Int_t GetDarcScalerLength() const {return fgkDarcScalerLength;} | |
c8f4be1a | 63 | |
64 | private: | |
65 | ||
66 | // local card scalers | |
67 | UInt_t fLocalL0; // local L0 | |
68 | UInt_t fLocalHold; // local hold (dead time) | |
69 | UInt_t fLocalClk; // local clock | |
70 | ||
71 | UInt_t fLocalLPtNTrig; // local low Pt no trigger | |
72 | UInt_t fLocalHPtNTrig; // local high Pt no trigger | |
73 | ||
74 | UInt_t fLocalLPtRTrig; // local low Pt right trigger | |
75 | UInt_t fLocalHPtRTrig; // local high Pt right trigger | |
76 | ||
77 | UInt_t fLocalLPtLTrig; // local low Pt left trigger | |
78 | UInt_t fLocalHPtLTrig; // local high Pt left trigger | |
79 | ||
80 | UInt_t fLocalLPtSTrig; // local low Pt straight trigger | |
81 | UInt_t fLocalHPtSTrig; // local high Pt straight trigger | |
82 | ||
83 | UInt_t fLocalScaler[8*4]; // local data | |
84 | UInt_t fLocalEOS; // contains switches conf. & flag for reading X (0) or Y (1) in fLocalScaler | |
85 | UInt_t fLocalReset; // reset signal | |
86 | static const Int_t fgkLocalScalerLength; // length of local scaler in word | |
87 | ||
88 | // regional card scalers | |
89 | UInt_t fRegL0; // regional L0 | |
90 | UInt_t fRegClk; // regional clock | |
91 | UInt_t fRegScaler[8]; // regional ouput | |
92 | UInt_t fRegHold; // regional hold (dead time) | |
93 | static const Int_t fgkRegScalerLength; // length of regional scaler in word | |
94 | ||
95 | // global card scalers | |
96 | UInt_t fGlobalL0; // global L0 | |
97 | UInt_t fGlobalClk; // global clock | |
98 | UInt_t fGlobalScaler[6]; // global ouput | |
99 | UInt_t fGlobalHold; // global hold (dead time) | |
100 | UInt_t fGlobalSpare; // global spare | |
101 | static const Int_t fgkGlobalScalerLength; // length of global scaler in word | |
102 | ||
103 | // DARC Scalers | |
104 | UInt_t fDarcL0R; // DARC L0 received | |
105 | UInt_t fDarcL0U; // DARC L0 used | |
106 | UInt_t fDarcL0P; // DARC Physical L0 | |
107 | UInt_t fDarcL0S; // DARC Software (checking) L0 | |
108 | UInt_t fDarcClk; // DARC clock | |
109 | UInt_t fDarcHold; // DARC hold (dead time) | |
110 | static const Int_t fgkDarcScalerLength; // length of DARC scaler in word | |
111 | ||
112 | ClassDef(AliMUONScalerEventTrigger,1) | |
113 | }; | |
114 | #endif |