GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
s_daqst_v2.h
Go to the documentation of this file.
1 // $Id: s_daqst.h 478 2009-10-29 12:26:09Z linev $
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 für 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 #include "typedefs.h"
15 /*
16  * N. Kurz
17  * daq status structure
18  * sorted for better byte swap /HE
19  * 30.05.2000 replaced run_start by histo_port /HE
20  * 25.10.2005 added spill, event building, and pipe status /HE
21  */
22 
23 /* After allocating s_daqst, set by calling f_ut_status_ini */
24 /* ps_daqst->l_endian = 1; */
25 /* ps_daqst->l_version = n; */
26 /* ps_daqst->l_daqst_lw = sizeof(s_daqst)/4; */
27 /* ps_daqst->l_fix_lw = ((int)&c_pname[0][0]-(int)ps_daqst)/4; */
28 /* ps_daqst->l_sys__n_max_procs = SYS__N_MAX_PROCS; */
29 /* ps_daqst->l_sbs__str_len_64 = SBS__STR_LEN_64; */
30 /* ps_daqst->l_sbs__n_trg_typ = SBS__N_TRG_TYP; */
31 
32 typedef struct
33 {
34  INTU4 l_endian; /* set to 1 if sent */
35  INTU4 l_version; /* increment in f_ut_status_ini after changes */
36  INTU4 l_daqst_lw; /* sizeof(s_daqst)/4 : number of lw */
37  INTU4 l_fix_lw; /* (&c_pname-ps_daqst)/4 : fix number of longwords to read */
38  INTU4 l_sys__n_max_procs; /* maximum number of processes */
39  INTU4 l_sbs__str_len_64; /* String length of process names */
40  INTU4 l_sbs__n_trg_typ; /* maximum number of triggers */
41  INTU4 bh_daqst_initalized; /* crea_daqst */
42  INTU4 bh_acqui_started; /* util(f_ut_op_trig_mod), read_cam_slav, read_meb */
43  INTU4 bh_acqui_running; /* collector, read_cam_slav, read_meb */
44  INTU4 l_procs_run; /* processes running (index in l_pid) */
45  INTU4 bh_setup_loaded; /* util(f_ut_load_setup) */
46  INTU4 bh_set_ml_loaded; /* util(f_ut_load_ml_setup) */
47  INTU4 bh_set_mo_loaded; /* util(f_ut_load_mo_setup) */
48  INTU4 bh_cam_tab_loaded; /* read_cam_slav, read_meb) */
49  INTS4 l_free_streams; /* transport */
50  INTU4 bl_n_events; /* collector */
51  INTU4 bl_n_buffers; /* collector f_col_format */
52  INTU4 bl_n_bufstream; /* transport */
53  INTU4 bl_n_kbyte; /* transport */
54  INTU4 bl_n_evserv_events; /* event_serv f_ev_checkevt */
55  INTU4 bl_n_evserv_kbytes; /* event_serv f_ev_send */
56  INTU4 bl_n_strserv_bufs; /* stream_serv */
57  INTU4 bl_n_strserv_kbytes; /* stream_serv */
58  INTU4 bl_n_kbyte_tape; /* transport */
59  INTU4 bl_n_kbyte_file; /* transport */
60  INTU4 bl_r_events; /* rate */
61  INTU4 bl_r_buffers; /* rate */
62  INTU4 bl_r_bufstream; /* rate */
63  INTU4 bl_r_kbyte; /* rate */
64  INTU4 bl_r_kbyte_tape; /* rate (from l_block_count) */
65  INTU4 bl_r_evserv_events; /* rate */
66  INTU4 bl_r_evserv_kbytes; /* rate */
67  INTU4 bl_r_strserv_bufs; /* rate */
68  INTU4 bl_r_strserv_kbytes; /* rate */
69  INTU4 bl_flush_time; /* stream flush time */
70  INTS4 l_pathnum; /* path number of open device */
71  INTU4 l_block_length; /* current block length */
72  INTU4 l_pos_on_tape; /* current tape position in kB */
73  INTU4 l_max_tape_size; /* maximal tape length in kB */
74  INTU4 l_file_count; /* file count on volume */
75  INTU4 l_file_auto; /* file count on volume */
76  INTU4 l_file_cur; /* file count on volume */
77  INTU4 l_file_size; /* file size */
78  INTU4 l_block_count; /* buffers on file */
79  INTU4 l_block_size; /* block size (=buffer) in bytes */
80  INTU4 l_record_size; /* record size on bytes */
81  INTS4 l_open_vol; /* open mode of volume */
82  INTS4 l_open_file; /* open file flag */
83  INTS4 l_rate_on; /* for m_daq_rate */
84  INTS4 l_rate_sec; /* for m_daq_rate */
85  INTU4 bh_trig_master; /* util(f_ut_op_trig_mod) */
86  INTU4 bh_histo_enable; /* collector */
87  INTU4 bh_histo_ready; /* collector */
88  INTU4 bh_ena_evt_copy; /* collector */
89  INTU4 bl_n_trig[SBS__N_TRG_TYP]; /* Trigger counter (read_cam_slav or read_meb) */
90  INTU4 bl_n_si [SBS__N_TRG_TYP]; /* Invalid subevents (collector) */
91  INTU4 bl_n_evt [SBS__N_TRG_TYP]; /* Valid triggers (collector) */
92  INTU4 bh_running[SYS__N_MAX_PROCS];/* run bit for tasks */
93  INTU4 l_pid[SYS__N_MAX_PROCS]; /* pid table */
94  INTU4 l_type[SYS__N_MAX_PROCS]; /* Type number defined in sys_def.h */
95  INTS4 l_pprio[SYS__N_MAX_PROCS]; /* daq processes priority */
96  /* f_ut_init_daq_proc, */
97  /* f_ut_clear_daqst, */
98  /* f_ut_exit_daq_proc, */
99  /* f_ut_show_acq, */
100  /* dispatch, */
101  /* prompt */
102  /* tasks */
103  INTU4 bh_pact[SYS__N_MAX_PROCS]; /* daq processes, 1 = active, as pprio */
104  INTU4 bh_verbose_flg; /* */
105  INTU4 bl_histo_port; /* not used */
106  INTU4 bl_run_time; /* not used */
107  INTS4 l_irq_driv_id; /* 0=irq driver/device not installed */
108  INTS4 l_irq_maj_dev_id; /* "=" */
109  INTU4 bh_event_serv_ready; /* event_serv, stream_serv */
110  INTU4 bl_strsrv_scale; /* stream server */
111  INTU4 bl_strsrv_sync; /* stream server */
112  INTU4 bl_strsrv_nosync; /* stream server */
113  INTU4 bl_strsrv_keep; /* stream server */
114  INTU4 bl_strsrv_nokeep; /* stream server */
115  INTU4 bl_strsrv_scaled; /* stream server */
116  INTU4 bl_evtsrv_scale; /* event server */
117  INTU4 bl_evtsrv_events; /* event server */
118  INTU4 bl_evtsrv_maxcli; /* event server */
119  INTU4 bl_evtsrv_all; /* event server */
120  INTU4 bl_esosrv_maxcli; /* esone server */
121  INTU4 bl_pipe_slots; /* sub event slots in readout pipe */
122  INTU4 bl_pipe_slots_filled; /* sub event slots used */
123  INTU4 bl_pipe_size_KB; /* readout pipe size */
124  INTU4 bl_pipe_filled_KB; /* readout pipe size occupied */
125  INTU4 bl_spill_on; /* Spill on/off */
126  INTU4 bl_delayed_eb_ena; /* Delayed event building enabled/disab.*/
127  INTU4 bl_event_build_on; /* Event building on/off */
128  CHARS c_user[SBS__STR_LEN_64]; /* username */
129  CHARS c_date[SBS__STR_LEN_64]; /* date of last update (m_daq_rate) */
130  CHARS c_exprun[SBS__STR_LEN_64]; /* run name */
131  CHARS c_exper[SBS__STR_LEN_64]; /* experiment */
132  CHARS c_host[SBS__STR_LEN_64]; /* name of host */
133  CHARS c_remote[SBS__STR_LEN_64]; /* name of remote control node */
134  CHARS c_display[SBS__STR_LEN_64]; /* name of remote display node */
135  CHARS c_anal_segm_name[SBS__STR_LEN_64]; /* name of histogram segment in use */
136  /* by f_his_anal() in m_collector */
137  CHARS c_setup_name[SBS__STR_LEN_64]; /* setup table loaded */
138  CHARS c_ml_setup_name[SBS__STR_LEN_64]; /* ml setup table loaded */
139  CHARS c_readout_name[SBS__STR_LEN_64]; /* readout table loaded */
140  CHARS c_pathstr[SBS__STR_LEN_64]; /* path string */
141  CHARS c_devname[SBS__STR_LEN_64]; /* Name of tape device */
142  CHARS c_tape_label[SBS__STR_LEN_64]; /* current tape label */
143  CHARS c_file_name[SBS__STR_LEN_64]; /* current file name */
144  CHARS c_out_chan[SBS__STR_LEN_64]; /* active ouput media */
145  /* ------------------ end of fixed block --------------------------*/
146  CHARS c_pname[SYS__N_MAX_PROCS][SBS__STR_LEN_64]; /* as pprio */
147 } s_daqst;
#define SBS__N_TRG_TYP
Definition: sbs_def.h:25
#define SYS__N_MAX_PROCS
Definition: sys_def.h:22
unsigned int INTU4
Definition: typedefs.h:29
#define SBS__STR_LEN_64
Definition: sbs_def.h:21
int INTS4
Definition: typedefs.h:28
char CHARS
Definition: typedefs.h:21