]>
Commit | Line | Data |
---|---|---|
69be760c | 1 | #ifndef ALIMUONSUBEVENTTRIGGER_H |
2 | #define ALIMUONSUBEVENTTRIGGER_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 AliMUONSubEventTrigger : public TObject{ | |
10 | ||
11 | public: | |
12 | AliMUONSubEventTrigger(); | |
13 | virtual ~AliMUONSubEventTrigger(){;} | |
14 | ||
15 | ||
c8f4be1a | 16 | UInt_t GetRegWord() const {return fRegWord;} |
17 | UInt_t GetRegInput(Int_t n) const {return fRegInput[n];} | |
18 | UInt_t GetLocalData(Int_t n) const {return fLocalData[n];} | |
69be760c | 19 | |
e516b01d | 20 | //MBZ:3,serialNb:5,Version:8,RegId:4,MBZ:4,RegOut:8 |
21 | Char_t GetSerialNb() {return (Char_t)(fRegWord >> 24) & 0x1F;} | |
22 | Char_t GetVersion() {return (Char_t)(fRegWord >> 16) & 0xFF;} | |
23 | Char_t GetRegId() {return (Char_t)(fRegWord >> 12) & 0x0F;} | |
24 | Char_t GetRegOutput() {return (Char_t)(fRegWord) & 0xFF;} | |
69be760c | 25 | |
26 | UShort_t GetX2(Int_t n) {return (fLocalData[16*n] >> 16) & 0xFFFF;} | |
27 | UShort_t GetX1(Int_t n) {return (fLocalData[16*n]) & 0xFFFF;} | |
28 | UShort_t GetX4(Int_t n) {return (fLocalData[16*n + 1] >> 16) & 0xFFFF;} | |
29 | UShort_t GetX3(Int_t n) {return (fLocalData[16*n + 1]) & 0xFFFF;} | |
30 | ||
31 | UShort_t GetY2(Int_t n) {return (fLocalData[16*n + 2] >> 16) & 0xFFFF;} | |
32 | UShort_t GetY1(Int_t n) {return (fLocalData[16*n + 2]) & 0xFFFF;} | |
33 | UShort_t GetY4(Int_t n) {return (fLocalData[16*n + 3] >> 16) & 0xFFFF;} | |
34 | UShort_t GetY3(Int_t n) {return (fLocalData[16*n + 3]) & 0xFFFF;} | |
35 | ||
36 | Char_t GetLocalId(Int_t n) {return fLocalData[16*n + 4] >> 19 & 0xF;} | |
37 | Char_t GetLocalDec(Int_t n) {return fLocalData[16*n + 4] >> 15 & 0xF;} | |
38 | Char_t GetTriggerY(Int_t n) {return fLocalData[16*n + 4] >> 14 & 0x1;} | |
39 | Char_t GetYPos(Int_t n) {return fLocalData[16*n + 4] >> 10 & 0xF;} | |
40 | Char_t GetXDev(Int_t n) {return fLocalData[16*n + 4] >> 5 & 0x1F;} | |
41 | Char_t GetXPos(Int_t n) {return fLocalData[16*n + 4] & 0x1F;} | |
42 | ||
43 | void SetRegWord(UInt_t w) {fRegWord = w;} | |
c8f4be1a | 44 | void SetRegInput(UInt_t in, Int_t n) {fRegInput[n] = in;} |
45 | void SetLocalData(UInt_t d, Int_t n) {fLocalData[n] = d;} | |
69be760c | 46 | |
17323043 | 47 | Int_t GetRegHeaderLength() const {return fgkRegHeaderLength;} |
69be760c | 48 | UInt_t* GetAddress() {return &fRegWord;} |
49 | ||
50 | private: | |
51 | ||
52 | UInt_t fRegWord; // first word | |
c8f4be1a | 53 | UInt_t fRegInput[2]; // regional input |
54 | ||
55 | static const Int_t fgkRegHeaderLength; // header length in word | |
56 | ||
57 | UInt_t fLocalData[16*5]; // local data | |
e516b01d | 58 | |
c8f4be1a | 59 | ClassDef(AliMUONSubEventTrigger,3) |
69be760c | 60 | }; |
61 | #endif |