Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DL1Trigger.h
Go to the documentation of this file.
1 #ifndef _DL1Trigger_
2 #define _DL1Trigger_
3 
4 #include <JANA/JObject.h>
5 #include <JANA/JFactory.h>
6 
7 class DL1Trigger:public jana::JObject{
8  public:
10 
12 
13 
14  int event_type; // 0 - unknown , 1 - trigger 2 - SYNC and trig
15 
16 
17  uint64_t timestamp;
18  uint32_t trig_mask;
19  uint32_t fp_trig_mask;
20 
21 
22  uint32_t nsync;
23  uint32_t trig_number;
24  uint32_t live;
25  uint32_t busy;
26  uint32_t live_inst;
27  uint32_t unix_time;
28 
29  vector<uint32_t> gtp_sc;
30  vector<uint32_t> fp_sc;
31  vector<uint32_t> gtp_rate;
32  vector<uint32_t> fp_rate;
33 
34 
35  typedef struct {
36  int line;
37  int type;
38  int fcal;
39  int bcal;
40  float en_thr;
41  int nhit;
42  unsigned int pattern;
43  int prescale;
44  } gtp_par;
45 
46  vector<gtp_par> gtp_conf;
47 
48 
49  // the second argument to AddString is printf style format
50  void toStrings(vector<pair<string,string> > &items)const{
51  AddString(items, "timestamp", "%ld", timestamp );
52  AddString(items, "event_type", "%d", event_type );
53  AddString(items, "trig_mask", "0x%08x", trig_mask );
54  AddString(items, "fp_trig_mask", "0x%08x", fp_trig_mask );
55 
56  AddString(items, "nsync" , "%d" , nsync);
57  AddString(items, "trig_number" , "%d" , trig_number);
58  AddString(items, "live" , "%d" , live);
59  AddString(items, "busy" , "%d" , busy);
60  AddString(items, "live_inst" , "%d" , live_inst);
61  AddString(items, "unix_time" , "%d" , unix_time);
62 
63  AddString(items, "gtp_sc" , "%d" , gtp_sc.size());
64  AddString(items, "fp_sc" , "%d" , fp_sc.size());
65  AddString(items, "gtp_rate" , "%d" , gtp_rate.size());
66  AddString(items, "fp_rate" , "%d" , fp_rate.size());
67 
68  }
69 
70 };
71 
72 #endif // _DL1Trigger_
73 
vector< uint32_t > gtp_rate
Definition: DL1Trigger.h:31
uint32_t busy
Definition: DL1Trigger.h:25
int event_type
Definition: DL1Trigger.h:14
vector< uint32_t > fp_rate
Definition: DL1Trigger.h:32
uint32_t trig_mask
Definition: DL1Trigger.h:18
uint32_t fp_trig_mask
Definition: DL1Trigger.h:19
uint32_t nsync
Definition: DL1Trigger.h:22
uint32_t live_inst
Definition: DL1Trigger.h:26
uint32_t live
Definition: DL1Trigger.h:24
vector< gtp_par > gtp_conf
Definition: DL1Trigger.h:46
uint64_t timestamp
Definition: DL1Trigger.h:17
vector< uint32_t > fp_sc
Definition: DL1Trigger.h:30
void toStrings(vector< pair< string, string > > &items) const
Definition: DL1Trigger.h:50
vector< uint32_t > gtp_sc
Definition: DL1Trigger.h:29
JOBJECT_PUBLIC(DL1Trigger)
unsigned int pattern
Definition: DL1Trigger.h:42
uint32_t trig_number
Definition: DL1Trigger.h:23
uint32_t unix_time
Definition: DL1Trigger.h:27