GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
s_daqst.h
Go to the documentation of this file.
1 // $Id$
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef S_DAQST_H
15 #define S_DAQST_H
16 
17 #include "typedefs.h"
18 
19 #include "sbs_def.h"
20 #include "sys_def.h"
21 
22 /*
23  * N. Kurz
24  * daq status structure
25  * sorted for better byte swap /HE
26  * 30.05.2000 replaced run_start by histo_port /HE
27  * 25.10.2005 added spill, event building, and pipe status /HE
28  * 23.6.2008 DABC support /HE
29  */
30 
31 /* After allocating s_daqst, set by calling f_ut_status_ini */
32 /* ps_daqst->l_endian = 1; */
33 /* ps_daqst->l_version = n; */
34 /* ps_daqst->l_daqst_lw = sizeof(s_daqst)/4; */
35 /* ps_daqst->l_fix_lw = ((int)&c_pname[0][0]-(int)ps_daqst)/4; */
36 /* ps_daqst->l_sys__n_max_procs = SYS__N_MAX_PROCS; */
37 /* ps_daqst->l_sbs__str_len_64 = SBS__STR_LEN_64; */
38 /* ps_daqst->l_sbs__n_trg_typ = SBS__N_TRG_TYP; */
39 
40 typedef struct
41 {
42  INTU4 l_endian; /* set to 1 if sent */
43  INTU4 l_version; /* increment in f_ut_status_ini after changes */
44  INTU4 l_daqst_lw; /* sizeof(s_daqst)/4 : number of lw */
45  INTU4 l_fix_lw; /* (&c_pname-ps_daqst)/4 : fix number of longwords to read */
46  INTU4 l_sys__n_max_procs; /* maximum number of processes */
47  INTU4 l_sbs__str_len_64; /* String length of process names */
48  INTU4 l_sbs__n_trg_typ; /* maximum number of triggers */
49  INTU4 bh_daqst_initalized; /* crea_daqst */
50  INTU4 bh_acqui_started; /* util(f_ut_op_trig_mod), read_cam_slav, read_meb */
51  INTU4 bh_acqui_running; /* collector, read_cam_slav, read_meb */
52  INTU4 l_procs_run; /* processes running (index in l_pid) */
53  INTU4 bh_setup_loaded; /* util(f_ut_load_setup) */
54  INTU4 bh_set_ml_loaded; /* util(f_ut_load_ml_setup) */
55  INTU4 bh_set_mo_loaded; /* util(f_ut_load_mo_setup) */
56  INTU4 bh_cam_tab_loaded; /* read_cam_slav, read_meb) */
57  INTS4 l_free_streams; /* transport */
58  INTU4 bl_n_events; /* collector */
59  INTU4 bl_n_buffers; /* collector f_col_format */
60  INTU4 bl_n_bufstream; /* transport */
61  INTU4 bl_n_kbyte; /* transport */
62  INTU4 bl_n_evserv_events; /* event_serv f_ev_checkevt */
63  INTU4 bl_n_evserv_kbytes; /* event_serv f_ev_send */
64  INTU4 bl_n_strserv_bufs; /* stream_serv */
65  INTU4 bl_n_strserv_kbytes; /* stream_serv */
66  INTU4 bl_n_kbyte_tape; /* transport */
67  INTU4 bl_n_kbyte_file; /* transport */
68  INTU4 bl_r_events; /* rate */
69  INTU4 bl_r_buffers; /* rate */
70  INTU4 bl_r_bufstream; /* rate */
71  INTU4 bl_r_kbyte; /* rate */
72  INTU4 bl_r_kbyte_tape; /* rate (from l_block_count) */
77  INTU4 bl_flush_time; /* stream flush time */
78  INTS4 l_pathnum; /* path number of open device */
79  INTU4 l_block_length; /* current block length */
80  INTU4 l_pos_on_tape; /* current tape position in kB */
81  INTU4 l_max_tape_size; /* maximal tape length in kB */
82  INTU4 l_file_count; /* file count on volume */
83  INTU4 l_file_auto; /* file count on volume */
84  INTU4 l_file_cur; /* file count on volume */
85  INTU4 l_file_size; /* file size */
86  INTU4 l_block_count; /* buffers on file */
87  INTU4 l_block_size; /* block size (=buffer) in bytes */
88  INTU4 l_record_size; /* record size on bytes */
89  INTS4 l_open_vol; /* open mode of volume */
90  INTS4 l_open_file; /* open file flag */
91  INTS4 l_rate_on; /* for m_daq_rate */
92  INTS4 l_rate_sec; /* for m_daq_rate */
93  INTU4 bh_trig_master; /* util(f_ut_op_trig_mod) */
94  INTU4 bh_histo_enable; /* collector */
95  INTU4 bh_histo_ready; /* collector */
96  INTU4 bh_ena_evt_copy; /* collector */
97  INTU4 bl_n_trig[SBS__N_TRG_TYP]; /* Trigger counter (read_cam_slav or read_meb) */
98  INTU4 bl_n_si [SBS__N_TRG_TYP]; /* Invalid subevents (collector) */
99  INTU4 bl_n_evt [SBS__N_TRG_TYP]; /* Valid triggers (collector) */
100  INTU4 bl_r_trig[SBS__N_TRG_TYP]; /* Rate Trigger counter (read_cam_slav or read_meb) */
101  INTU4 bl_r_si [SBS__N_TRG_TYP]; /* Rate Invalid subevents (collector) */
102  INTU4 bl_r_evt [SBS__N_TRG_TYP]; /* Rate Valid triggers (collector) */
103  INTU4 bh_running[SYS__N_MAX_PROCS];/* run bit for tasks */
104  INTU4 l_pid[SYS__N_MAX_PROCS]; /* pid table */
105  INTU4 l_type[SYS__N_MAX_PROCS]; /* Type number defined in sys_def.h */
106  INTS4 l_pprio[SYS__N_MAX_PROCS]; /* daq processes priority */
107  /* f_ut_init_daq_proc, */
108  /* f_ut_clear_daqst, */
109  /* f_ut_exit_daq_proc, */
110  /* f_ut_show_acq, */
111  /* dispatch, */
112  /* prompt */
113  /* tasks */
114  INTU4 bh_pact[SYS__N_MAX_PROCS]; /* daq processes, 1 = active, as pprio */
116  INTU4 bl_histo_port; /* not used */
117  INTU4 bl_run_time; /* not used */
118  INTS4 l_irq_driv_id; /* 0=irq driver/device not installed */
120  INTU4 bh_event_serv_ready; /* event_serv, stream_serv */
121  INTU4 bl_strsrv_scale; /* stream server */
122  INTU4 bl_strsrv_sync; /* stream server */
123  INTU4 bl_strsrv_nosync; /* stream server */
124  INTU4 bl_strsrv_keep; /* stream server */
125  INTU4 bl_strsrv_nokeep; /* stream server */
126  INTU4 bl_strsrv_scaled; /* stream server */
127  INTU4 bl_evtsrv_scale; /* event server */
128  INTU4 bl_evtsrv_events; /* event server */
129  INTU4 bl_evtsrv_maxcli; /* event server */
130  INTU4 bl_evtsrv_all; /* event server */
131  INTU4 bl_esosrv_maxcli; /* esone server */
132  INTU4 bl_pipe_slots; /* sub event slots in readout pipe */
133  INTU4 bl_pipe_slots_filled; /* sub event slots used */
134  INTU4 bl_pipe_size_KB; /* readout pipe size */
135  INTU4 bl_pipe_filled_KB; /* readout pipe size occupied */
136  INTU4 bl_spill_on; /* Spill on/off */
137  INTU4 bl_delayed_eb_ena; /* Delayed event building enabled/disab.*/
138  INTU4 bl_event_build_on; /* Event building on/off */
139  INTU4 bl_dabc_enabled; /* DABC event builder mode off/on */
140  INTU4 bl_trans_ready; /* transport server ready */
141  INTU4 bl_trans_connected; /* Client to transport connected */
142  INTU4 bl_no_streams; /* Number of streams */
143  INTU4 bl_user[16]; /* for user */
144  INTU4 bl_filler[190]; /* filler */
145  INTU4 bl_no_stream_buf; /* bufs per stream */
146  INTU4 bl_rfio_connected; /* RFIO connected */
147  CHARS c_user[SBS__STR_LEN_64]; /* username */
148  CHARS c_date[SBS__STR_LEN_64]; /* date of last update (m_daq_rate) */
149  CHARS c_exprun[SBS__STR_LEN_64]; /* run name */
150  CHARS c_exper[SBS__STR_LEN_64]; /* experiment */
151  CHARS c_host[SBS__STR_LEN_64]; /* name of host */
152  CHARS c_remote[SBS__STR_LEN_64]; /* name of remote control node */
153  CHARS c_display[SBS__STR_LEN_64]; /* name of remote display node */
154  CHARS c_anal_segm_name[SBS__STR_LEN_64]; /* name of histogram segment in use */
155  /* by f_his_anal() in m_collector */
156  CHARS c_setup_name[SBS__STR_LEN_64]; /* setup table loaded */
157  CHARS c_ml_setup_name[SBS__STR_LEN_64]; /* ml setup table loaded */
158  CHARS c_readout_name[SBS__STR_LEN_64]; /* readout table loaded */
159  CHARS c_pathstr[SBS__STR_LEN_64]; /* path string */
160  CHARS c_devname[SBS__STR_LEN_64]; /* Name of tape device */
161  CHARS c_tape_label[SBS__STR_LEN_64]; /* current tape label */
162  CHARS c_file_name[256]; /* current file name */
163  CHARS c_out_chan[SBS__STR_LEN_64]; /* active ouput media */
164  /* ------------------ end of fixed block --------------------------*/
165  CHARS c_pname[SYS__N_MAX_PROCS][SBS__STR_LEN_64]; /* as pprio */
166 } s_daqst;
167 
168 #endif
INTU4 l_pos_on_tape
Definition: s_daqst.h:80
INTU4 bl_r_events
Definition: s_daqst.h:68
INTU4 bl_rfio_connected
Definition: s_daqst.h:146
INTU4 bh_verbose_flg
Definition: s_daqst.h:115
INTU4 l_file_auto
Definition: s_daqst.h:83
#define SBS__N_TRG_TYP
Definition: sbs_def.h:28
INTU4 bh_ena_evt_copy
Definition: s_daqst.h:96
INTU4 bl_event_build_on
Definition: s_daqst.h:138
INTU4 l_block_length
Definition: s_daqst.h:79
INTU4 bl_r_kbyte
Definition: s_daqst.h:71
INTU4 bl_pipe_slots
Definition: s_daqst.h:132
INTU4 bl_evtsrv_maxcli
Definition: s_daqst.h:129
INTU4 bl_evtsrv_scale
Definition: s_daqst.h:127
INTU4 bl_trans_ready
Definition: s_daqst.h:140
INTU4 bl_strsrv_scale
Definition: s_daqst.h:121
INTU4 bh_cam_tab_loaded
Definition: s_daqst.h:56
INTU4 l_block_size
Definition: s_daqst.h:87
INTU4 bl_strsrv_nokeep
Definition: s_daqst.h:125
INTU4 bh_set_ml_loaded
Definition: s_daqst.h:54
INTU4 bl_n_kbyte
Definition: s_daqst.h:61
INTU4 bl_no_stream_buf
Definition: s_daqst.h:145
INTU4 bl_n_kbyte_file
Definition: s_daqst.h:67
INTU4 l_sbs__n_trg_typ
Definition: s_daqst.h:48
INTS4 l_open_vol
Definition: s_daqst.h:89
INTU4 bl_evtsrv_all
Definition: s_daqst.h:130
INTS4 l_irq_maj_dev_id
Definition: s_daqst.h:119
INTU4 bl_n_strserv_bufs
Definition: s_daqst.h:64
INTS4 l_free_streams
Definition: s_daqst.h:57
INTS4 l_rate_sec
Definition: s_daqst.h:92
INTU4 bl_flush_time
Definition: s_daqst.h:77
#define SYS__N_MAX_PROCS
Definition: sys_def.h:31
INTU4 l_block_count
Definition: s_daqst.h:86
INTU4 l_file_cur
Definition: s_daqst.h:84
INTU4 bl_trans_connected
Definition: s_daqst.h:141
INTU4 bh_setup_loaded
Definition: s_daqst.h:53
INTU4 bl_n_buffers
Definition: s_daqst.h:59
INTU4 bl_evtsrv_events
Definition: s_daqst.h:128
INTU4 bl_n_evserv_events
Definition: s_daqst.h:62
INTU4 l_daqst_lw
Definition: s_daqst.h:44
INTU4 l_file_count
Definition: s_daqst.h:82
unsigned int INTU4
Definition: typedefs.h:29
INTS4 l_irq_driv_id
Definition: s_daqst.h:118
#define SBS__STR_LEN_64
Definition: sbs_def.h:24
INTU4 bl_n_strserv_kbytes
Definition: s_daqst.h:65
INTU4 bh_acqui_running
Definition: s_daqst.h:51
INTU4 bl_r_strserv_bufs
Definition: s_daqst.h:75
INTU4 bl_n_events
Definition: s_daqst.h:58
INTU4 bh_trig_master
Definition: s_daqst.h:93
INTU4 bl_r_bufstream
Definition: s_daqst.h:70
INTU4 bl_pipe_size_KB
Definition: s_daqst.h:134
INTU4 bl_r_buffers
Definition: s_daqst.h:69
int INTS4
Definition: typedefs.h:28
INTU4 l_max_tape_size
Definition: s_daqst.h:81
INTU4 bl_n_kbyte_tape
Definition: s_daqst.h:66
INTU4 bh_daqst_initalized
Definition: s_daqst.h:49
INTU4 bl_run_time
Definition: s_daqst.h:117
INTU4 bl_n_bufstream
Definition: s_daqst.h:60
INTU4 l_sys__n_max_procs
Definition: s_daqst.h:46
INTU4 bl_strsrv_nosync
Definition: s_daqst.h:123
INTU4 bh_event_serv_ready
Definition: s_daqst.h:120
INTU4 bl_strsrv_sync
Definition: s_daqst.h:122
INTU4 bl_r_strserv_kbytes
Definition: s_daqst.h:76
INTU4 bl_strsrv_keep
Definition: s_daqst.h:124
INTU4 bl_pipe_filled_KB
Definition: s_daqst.h:135
INTU4 bl_esosrv_maxcli
Definition: s_daqst.h:131
INTU4 bl_strsrv_scaled
Definition: s_daqst.h:126
INTS4 l_open_file
Definition: s_daqst.h:90
INTU4 bh_set_mo_loaded
Definition: s_daqst.h:55
INTU4 bl_r_kbyte_tape
Definition: s_daqst.h:72
INTU4 l_endian
Definition: s_daqst.h:42
INTU4 l_version
Definition: s_daqst.h:43
INTS4 l_pathnum
Definition: s_daqst.h:78
INTU4 bl_no_streams
Definition: s_daqst.h:142
INTU4 bl_pipe_slots_filled
Definition: s_daqst.h:133
INTU4 l_fix_lw
Definition: s_daqst.h:45
INTU4 bh_histo_ready
Definition: s_daqst.h:95
INTU4 l_procs_run
Definition: s_daqst.h:52
INTS4 l_rate_on
Definition: s_daqst.h:91
char CHARS
Definition: typedefs.h:21
INTU4 bh_acqui_started
Definition: s_daqst.h:50
INTU4 bl_histo_port
Definition: s_daqst.h:116
INTU4 bl_spill_on
Definition: s_daqst.h:136
INTU4 l_record_size
Definition: s_daqst.h:88
INTU4 bl_r_evserv_kbytes
Definition: s_daqst.h:74
INTU4 bh_histo_enable
Definition: s_daqst.h:94
INTU4 bl_dabc_enabled
Definition: s_daqst.h:139
INTU4 l_file_size
Definition: s_daqst.h:85
INTU4 bl_n_evserv_kbytes
Definition: s_daqst.h:63
INTU4 bl_r_evserv_events
Definition: s_daqst.h:73
INTU4 bl_delayed_eb_ena
Definition: s_daqst.h:137
INTU4 l_sbs__str_len_64
Definition: s_daqst.h:47