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