StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StRtsTable.h
1 #ifndef STAR_StRtsTable
2 #define STAR_StRtsTable
3 
4 #include "TGenericTable.h"
5 
6 class StRtsTable : public TGenericTable {
7  private:
8  Int_t fSector ;
9  Int_t fRow ;
10  Int_t fRdo ;
11  Int_t fPad ;
12  void* fMeta; //meta data is not copied, and just getting pointer.
13  //No gurantee to be valid after another reqquest is made to daqReader.
14 
15  // the global daqReader paramenters (see daqReader.h for details)
16  static UInt_t fToken ; // current token
17  static UInt_t fTrgcmd ; // current trigger command
18  static UInt_t fDaqcmd ; // current DAQ command
19  static UInt_t fTrgword ; // the Trigger Word
20  static UInt_t fPhyword ; // the Physics Word
21  static UInt_t fDaqbits ; // "offline" bits aka L3 summary...
22  static UInt_t fDaqbits_l1; // triggers satisfying l1
23  static UInt_t fDaqbits_l2; // triggers satisfying l2
24  static UInt_t fEvpgroups ; // evp groups aka L3 summary[2]
25 
26  static UInt_t fDetectors ; // detectors present bit mask according to DAQ!
27 
28  static UInt_t fDetsinrun ; // I nave no idea what it is about (vf)
29  static UInt_t fEvpgroupsinrun; // I nave no idea what it is about (vf)
30 
31  public:
32  StRtsTable(const char* structName, Int_t n) : TGenericTable(structName,n){}
33  StRtsTable(size_t structLength, Int_t n);
34  void SetAll(Int_t sec,Int_t pad,Int_t rdo,Int_t row);
35  void SetSector (Int_t s);
36  void SetPad (Int_t p);
37  void SetRdo (Int_t r);
38  void SetRow (Int_t r);
39  void SetMeta (void* v);
40 
41  Int_t Sector () const;
42  Int_t Pad () const;
43  Int_t Rdo () const;
44  Int_t Row () const;
45  const void* Meta() const;
46 
47  static UInt_t Token(); // current token
48  static void SetToken(UInt_t token);
49  static UInt_t Trgcmd(); // current trigger command
50  static void SetTrgcmd(UInt_t trgcmd);
51  static UInt_t Daqcmd(); // current DAQ command
52  static void SetDaqcmd(UInt_t daqcmd);
53  static UInt_t Trgword(); // the Trigger Word
54  static void SetTrgword(UInt_t trgword);
55  static UInt_t Phyword(); // the Physics Word
56  static void SetPhyword(UInt_t phyword);
57  static UInt_t Daqbits(); // "offline" bits aka L3 summary...
58  static void SetDaqbits(UInt_t daqbits);
59  static UInt_t Daqbits_l1(); // triggers satisfying l1
60  static void SetDaqbits_l1(UInt_t daqbits_l1);
61  static UInt_t Daqbits_l2(); // triggers satisfying l2
62  static void SetDaqbits_l2(UInt_t daqbits_l2);
63  static UInt_t Evpgroups(); // evp groups aka L3 summary[2]
64  static void SetEvpgroups(UInt_t evpgroups);
65 
66  static UInt_t Detectors(); // detectors present bit mask according to DAQ!
67  static void SetDetectors(UInt_t detectors);
68 
69  ClassDef(StRtsTable,1);
70 };
71 
72 inline Int_t StRtsTable::Sector() const {return fSector;}
73 inline Int_t StRtsTable::Pad() const {return fPad;}
74 inline Int_t StRtsTable::Rdo() const {return fRdo;}
75 inline Int_t StRtsTable::Row() const {return fRow;}
76 inline const void* StRtsTable::Meta() const {return fMeta;}
77 
78 inline UInt_t StRtsTable::Token() {return fToken; } // current token
79 inline UInt_t StRtsTable::Trgcmd() {return fTrgcmd; } // current trigger command
80 inline UInt_t StRtsTable::Daqcmd() {return fDaqcmd; } // current DAQ command
81 inline UInt_t StRtsTable::Trgword() {return fTrgword; } // the Trigger Word
82 inline UInt_t StRtsTable::Phyword() {return fPhyword; } // the Physics Word
83 inline UInt_t StRtsTable::Daqbits() {return fDaqbits; } // "offline" bits aka L3 summary...
84 inline UInt_t StRtsTable::Daqbits_l1() {return fDaqbits_l1;} // triggers satisfying l1
85 inline UInt_t StRtsTable::Daqbits_l2() {return fDaqbits_l2;} // triggers satisfying l2
86 inline UInt_t StRtsTable::Evpgroups() {return fEvpgroups;} // evp groups aka L3 summary[2]
87 
88 inline UInt_t StRtsTable::Detectors() {return fDetectors;} // detectors present bit mask according to DAQ!
89 
90 
91 inline void StRtsTable::SetAll(Int_t sec,Int_t pad,Int_t rdo,Int_t row)
92 {
93  SetSector(sec);
94  SetPad(pad);
95  SetRdo(rdo);
96  SetRow(row);
97 }
98 
99 inline void StRtsTable::SetSector (Int_t s) {fSector= s;}
100 inline void StRtsTable::SetPad (Int_t p) {fPad = p;}
101 inline void StRtsTable::SetRdo (Int_t r) {fRdo = r;}
102 inline void StRtsTable::SetRow (Int_t r) {fRow = r;}
103 inline void StRtsTable::SetMeta (void* v) {fMeta = v;}
104 
105 inline void StRtsTable::SetToken(UInt_t token) { fToken = token; }
106 inline void StRtsTable::SetTrgcmd(UInt_t trgcmd) { fTrgcmd = trgcmd; }
107 inline void StRtsTable::SetDaqcmd(UInt_t daqcmd) { fDaqcmd = daqcmd; }
108 inline void StRtsTable::SetTrgword(UInt_t trgword) { fTrgword = trgword; }
109 inline void StRtsTable::SetPhyword(UInt_t phyword) { fPhyword = phyword; }
110 inline void StRtsTable::SetDaqbits(UInt_t daqbits) { fDaqbits = daqbits; }
111 inline void StRtsTable::SetDaqbits_l1(UInt_t daqbits_l1){ fDaqbits_l1 = daqbits_l1; }
112 inline void StRtsTable::SetDaqbits_l2(UInt_t daqbits_l2){ fDaqbits_l2 = daqbits_l2; }
113 inline void StRtsTable::SetEvpgroups(UInt_t evpgroups) { fEvpgroups = evpgroups; }
114 inline void StRtsTable::SetDetectors(UInt_t detectors) { fDetectors = detectors; }
115 
116 #endif