mbgtools-lx  4.2.8
mbgextio.h
Go to the documentation of this file.
1 
2 /**************************************************************************
3  *
4  * $Id: mbgextio.h 1.16.1.160 2018/06/07 14:16:54 philipp TRASH $
5  *
6  * Copyright (c) Meinberg Funkuhren, Bad Pyrmont, Germany
7  *
8  * Description:
9  * Definitions and prototypes for mbgextio.c.
10  *
11  * -----------------------------------------------------------------------
12  * $Log: mbgextio.h $
13  * Revision 1.16.1.160 2018/06/07 14:16:54 philipp
14  * Added database command structure send function
15  * Revision 1.16.1.159 2018/06/05 14:09:13 martin
16  * Doxygen fixes.
17  * Revision 1.16.1.158 2018/06/05 11:27:55 thomas-b
18  * Added function to check for MBG_XFEATURE_GNSS_MODE
19  * Revision 1.16.1.157 2018/06/05 11:16:40 thomas-b
20  * *** empty log message ***
21  * Revision 1.16.1.156 2018/06/05 09:41:56 philipp
22  * Added XFeature database
23  * Revision 1.16.1.155 2018/06/01 12:28:03 martin
24  * Updated function prototypes.
25  * Revision 1.16.1.154 2018/05/29 11:15:32 philipp
26  * Added UFU flash command
27  * Revision 1.16.1.153 2018/05/29 08:18:14 martin
28  * Updated function prototypes.
29  * Revision 1.16.1.152 2018/03/26 08:04:49 thomas-b
30  * Added fw mngmnt API functions
31  * Revision 1.16.1.151 2018/03/15 14:03:32 philipp
32  * Added syslog option to monitoring feature
33  * Revision 1.16.1.150 2018/03/15 11:12:29 martin
34  * Updated function prototypes.
35  * Revision 1.16.1.149 2018/02/28 16:54:24 martin
36  * Doxygen fixes.
37  * Revision 1.16.1.148 2018/02/27 06:54:47 gregoire.diehl
38  * Add prototypes for mbgextio_dev_has_clk_res_info and mbgextio_get_clk_res_info
39  * Revision 1.16.1.147 2018/02/06 12:39:06Z philipp
40  * Added service feature and API
41  * Revision 1.16.1.146 2018/01/26 09:49:16 thomas-b
42  * Renamed setup_extended_device_info to mbgextio_setup_xdevfeat, added parameter XBP_ADDR and made it non-static
43  * Revision 1.16.1.145 2018/01/11 08:16:39 thomas-b
44  * Added permission checks to most read/write functions
45  * Revision 1.16.1.144 2017/12/21 07:46:35 thomas-b
46  * Added function to check if TLV exec cmd is supported by a device
47  * Revision 1.16.1.143 2017/12/20 13:40:36 thomas-b
48  * Added function to check if TLV file request is supported by a device
49  * Revision 1.16.1.142 2017/11/23 10:33:01 thomas-b
50  * Removed USB_LOCK feature and appropriate structs and functions
51  * Revision 1.16.1.141 2017/11/21 06:22:39 thomas-b
52  * Added function to check support of TLV rollback command
53  * Revision 1.16.1.140 2017/11/16 11:18:04 thomas-b
54  * Added functions for user authentication and user management
55  * Revision 1.16.1.139 2017/08/15 16:03:21 martin
56  * Updated function prototypes.
57  * Revision 1.16.1.138 2017/08/15 15:27:14Z gregoire.diehl
58  * mbgextio_dev_supp_xhe moved to xtiopriv.c
59  * Revision 1.16.1.137 2017/08/15 13:45:11Z gregoire.diehl
60  * Added support for XHE structures
61  * Revision 1.16.1.136 2017/08/02 10:09:19Z philipp
62  * Added MBG_MSG_CTL server site related functionality
63  * Revision 1.16.1.135 2017/08/02 06:55:41 philipp
64  * Added new push messages xfeature
65  * Revision 1.16.1.134 2017/07/20 06:17:19 philipp
66  * - Refactored monitoring events
67  * - Added xfeature tainted config
68  * - Removed obsolete code
69  * - Added mbglib xmt helper function
70  * Revision 1.16.1.133 2017/06/19 16:01:34 martin
71  * Updated function prototypes.
72  * Revision 1.16.1.132 2017/06/07 12:54:17 thomas-b
73  * Added function to check TLV feature for UFU files
74  * Revision 1.16.1.131 2017/05/22 12:41:53 thomas-b
75  * Added function to read NTP_REFCLK_STATE_IDX from a device
76  * Revision 1.16.1.130 2017/05/18 09:30:04 martin
77  * Doxygen fixes.
78  * Revision 1.16.1.129 2017/05/17 15:41:07 martin
79  * Doxygen fixes.
80  * Revision 1.16.1.128 2017/05/10 15:21:39 martin
81  * Tiny cleanup.
82  * Revision 1.16.1.127 2017/04/20 04:57:28 thomas-b
83  * Added functions to get and set USB lock (LCES) and get USB lock status
84  * Revision 1.16.1.126 2017/04/12 08:35:11 martin
85  * Updated function prototypes.
86  * Revision 1.16.1.125 2017/04/05 16:07:36 martin
87  * Updated function prototypes.
88  * Revision 1.16.1.124 2017/03/27 10:38:41 thomas-b
89  * Added functions to read and write PTPv1 common datasets
90  * Revision 1.16.1.123 2017/03/20 10:10:03 martin
91  * Fixed build without _PRELIMINARY_CODE.
92  * Revision 1.16.1.122 2017/03/07 13:45:56 thomas-b
93  * Added functions to get and set ignore lock
94  * Revision 1.16.1.121 2017/03/03 06:46:05 thomas-b
95  * Added functions to read/write NTP key, server, refclock and orphan mode settings
96  * Revision 1.16.1.120 2017/02/23 14:32:09 thomas-b
97  * *** empty log message ***
98  * Revision 1.16.1.119 2017/02/22 08:31:14 thomas-b
99  * Added functions to read/write event info and read monitoring status and event status
100  * Revision 1.16.1.118 2017/02/16 13:01:53 thomas-b
101  * Changed get and set functions for PTPv2 port dataset to use idx structure
102  * Revision 1.16.1.117 2017/02/16 09:27:59 thomas-b
103  * Fixed doxygen docu
104  * Revision 1.16.1.116 2017/02/16 09:24:33 thomas-b
105  * Added functions to get and set PTPv2 common datasets
106  * Revision 1.16.1.115 2017/02/15 16:17:38 martin
107  * *** empty log message ***
108  * Revision 1.16.1.114 2017/02/08 13:12:36 thomas-b
109  * Added functions to get and set SNMP configuration
110  * Revision 1.16.1.113 2017/02/07 14:24:52 thomas-b
111  * Added function mbgextio_dev_has_monitoring, which checks if the extended feature MBG_XFEATURE_MONITORING is set
112  * Revision 1.16.1.112 2017/02/07 14:10:19 daniel
113  * Added calls to check for new License TLV feature types
114  * Revision 1.16.1.111 2016/12/07 09:34:14 martin
115  * Updated function prototypes.
116  * Revision 1.16.1.110 2016/11/30 16:12:55 thomas-b
117  * Added functions to get/set SCU_STAT_INFO/SCU_STAT_SETTINGS
118  * Revision 1.16.1.109 2016/11/22 10:33:15 philipp
119  * Implemented I/O ports
120  * Revision 1.16.1.108 2016/11/02 12:15:18 thomas-b
121  * Added function to check if a device has MBG_XFEATURE_REQ_TTM and adapted the documentation for mbgextio_get_time
122  * Revision 1.16.1.107 2016/10/31 09:28:06 martin
123  * Doxygen fixes.
124  * Revision 1.16.1.106 2016/10/25 09:11:19 thomas-b
125  * Added functions to get CFGH, ALM and IONO structures from a device
126  * Revision 1.16.1.105 2016/10/24 13:59:43 thomas-b
127  * Removed needless space from comment
128  * Fixed mbgextio_rcv_msg_unlocked for reception of XBP packets
129  * Revision 1.16.1.104 2016/10/20 14:46:04 thomas-b
130  * Added function to check if XBP is supported
131  * Revision 1.16.1.103 2016/10/20 11:29:15 martin
132  * Added missing const qualifier in mbgextio_get_utc_param().
133  * Revision 1.16.1.102 2016/10/20 10:43:35 thomas-b
134  * Added function to check if a device is a bus level device
135  * Revision 1.16.1.101 2016/10/19 14:33:44 thomas-b
136  * Added functions to read and write ucap via network configuration
137  * Revision 1.16.1.100 2016/10/14 11:09:41 thomas-b
138  * Added function to check MBG_XFEATURE_UCAP_NET
139  * Revision 1.16.1.99 2016/09/29 14:35:12 thomas-b
140  * Moved new get and set functions for NET_CFG_API stage 2 to mbgextio
141  * Revision 1.16.1.98 2016/09/29 12:19:58 thomas-b
142  * Added function to check transactions feature
143  * Revision 1.16.1.97 2016/09/20 13:52:38 martin
144  * Moved GPS_REQACK preprocessor handling to the header file.
145  * Revision 1.16.1.96 2016/08/23 15:12:01 martin
146  * Updated function prototypes.
147  * Revision 1.16.1.95 2016/08/23 08:33:39 udo
148  * renamed some Time Mon functions
149  * Revision 1.16.1.94 2016/08/22 14:14:48 gregoire.diehl
150  * new call: mbgextio_get_corr_info
151  * Revision 1.16.1.93 2016/08/15 09:42:19Z udo
152  * added mbgextio_time_mon_get_target_ext_data_set_idx()
153  * Revision 1.16.1.92 2016/08/11 11:30:54 martin
154  * Conditionally support time monitoring API.
155  * Revision 1.16.1.91 2016/08/01 10:33:02 daniel
156  * Updated function prototypes
157  * Revision 1.16.1.90 2016/07/07 15:03:32 martin
158  * Updated function prototypes.
159  * Revision 1.16.1.89 2016/06/15 10:15:50 thomas-b
160  * Added functions which check if the user capture feature is supported by a device
161  * Revision 1.16.1.88 2016/06/14 10:33:22 thomas-b
162  * Added functions which check if the event log feature is supported by a device
163  * Revision 1.16.1.87 2016/06/08 09:55:14 thomas-b
164  * Added function mbgextio_open_serial_force_default
165  * Revision 1.16.1.86 2016/06/07 14:50:34 udo
166  * Reset Meinberg USB device in case if the open_usb function return MBG_ERR_BUSY
167  * Revision 1.16.1.85 2016/06/07 07:43:07 philipp
168  * New function to check for Irig Rx feature
169  * Revision 1.16.1.84 2016/06/02 10:23:58 philipp
170  * Renaming all MBG_EXT_REV_INFO related stuff to MBG_EXT_SYS_INFO
171  * Revision 1.16.1.83 2016/05/30 08:10:45 thomas-b
172  * Added functions to check several builtin features
173  * Revision 1.16.1.82 2016/05/27 05:18:20 philipp
174  * New functions mbgextio_get_xmr_ext_source_stats_idx and mbgextio_get_xmr_ext_source_metrics_idx
175  * Revision 1.16.1.81 2016/05/25 09:23:00 philipp
176  * New function mbgextio_get_xmr_ext_source_stats_idx
177  * Revision 1.16.1.80 2016/05/20 13:37:55 philipp
178  * New function mbgextio_set_gpio_settings_idx
179  * Revision 1.16.1.79 2016/05/20 09:41:36 thomas-b
180  * Removed functions which check for a specific IMS card
181  * Revision 1.16.1.78 2016/05/20 08:51:23 thomas-b
182  * Added functions mbgextio_dev_has_time_scale and mbgextio_dev_has_tzcode
183  * Revision 1.16.1.77 2016/05/20 07:51:35 thomas-b
184  * Added function mbgextio_dev_has_tzdl
185  * Revision 1.16.1.76 2016/05/20 06:42:09 thomas-b
186  * Added function mbgextio_dev_has_enable_flags
187  * Revision 1.16.1.75 2016/05/17 13:29:38 philipp
188  * New function to check whether device is LNO
189  * Revision 1.16.1.74 2016/05/17 06:33:10 philipp
190  * New function to check whether a device has serial outputs
191  * Revision 1.16.1.73 2016/05/12 10:41:38 philipp
192  * New functions to check bpe card and IRIG Tx feature
193  * Revision 1.16.1.72 2016/05/10 06:15:29 philipp
194  * New function to check whether a device has programmable pulses
195  * Revision 1.16.1.71 2016/04/26 06:55:47 thomas-b
196  * Added functions to check if NET_CFG and LAN_IP4 APIs are supported
197  * Revision 1.16.1.70 2016/04/25 14:47:15 martin
198  * *** empty log message ***
199  * Revision 1.16.1.69 2016/04/22 10:54:00 philipp
200  * New function to check whether device is LIU
201  * Revision 1.16.1.68 2016/04/20 13:20:27 thomas-b
202  * Added function to check if a device supports NTP
203  * Revision 1.16.1.67 2016/04/20 09:26:13 philipp
204  * Moved all HPS-PTP related structures to gpspriv.h and removed related extended feature bit from gpsdefs.h.
205  * Also removed functions from mbgextio and xdevfeat since HPS-PTP handling needs a redesign concerning structures.
206  * Thus, handle everything explicitly for now!
207  * -> Redesing this A.S.A.P.!!!
208  * Revision 1.16.1.66 2016/04/15 08:17:26 philipp
209  * New feature MBG_XFEATURE_EXT_PTP
210  * Revision 1.16.1.65 2016/04/13 07:01:21 philipp
211  * New function to check whether device is HPS
212  * Revision 1.16.1.64 2016/04/12 13:27:41 philipp
213  * Several new functions to check for device models and device features
214  * Revision 1.16.1.63 2016/04/11 13:56:48 thomas-b
215  * Added function mbgextio_dev_has_xmulti_ref
216  * Revision 1.16.1.62 2016/04/07 14:08:45 philipp
217  * Added function prototype mbgextio_get_ext_rev_info
218  * Revision 1.16.1.61 2016/04/07 12:46:19 martin
219  * Updated function prototypes.
220  * Revision 1.16.1.60 2016/03/24 14:08:51 martin
221  * *** empty log message ***
222  * Revision 1.16.1.59 2016/03/22 12:53:20 thomas-b
223  * Added functions to find and free Meinberg LAN devices
224  * Revision 1.16.1.58 2016/03/18 11:21:56Z martin
225  * *** empty log message ***
226  * Revision 1.16.1.57 2016/03/18 10:48:33 martin
227  * *** empty log message ***
228  * Revision 1.16.1.56 2016/03/17 11:33:11 philipp
229  * Added XMR functions
230  * Revision 1.16.1.55 2016/03/16 15:09:11 martin
231  * Updated function prototypes.
232  * Revision 1.16.1.54 2016/03/14 11:53:34 martin
233  * Updated function prototypes.
234  * Revision 1.16.1.53 2016/03/11 08:20:12 marvin
235  * Added function to save PTP unicast master settings.
236  * Revision 1.16.1.52 2016/02/25 12:03:18Z udo
237  * Revision 1.16.1.51 2016/02/17 15:03:17 udo
238  * used MBG_TIME_MON_TARGET_STATUS_IDX
239  * Revision 1.16.1.47 2016/02/03 09:30:57 martin
240  * Fixed build without libusb.
241  * Revision 1.16.1.46 2016/02/03 09:16:50Z martin
242  * *** empty log message ***
243  * Revision 1.16.1.45 2016/02/02 15:58:13 martin
244  * Updated function prototypes.
245  * Revision 1.16.1.44 2016/01/19 14:13:55 udo
246  * improve time monitor functions
247  * Revision 1.16.1.43 2016/01/18 08:53:35 udo
248  * added support for PTP Time Monitoring on TSU/HPS100
249  * Revision 1.16.1.42 2016/01/04 15:55:41 martin
250  * Updated function prototypes.
251  * Revision 1.16.1.41 2015/12/10 11:55:16 martin
252  * *** empty log message ***
253  * Revision 1.16.1.40 2015/12/07 16:36:37 martin
254  * *** empty log message ***
255  * Revision 1.16.1.39 2015/12/03 16:00:40 martin
256  * *** empty log message ***
257  * Revision 1.16.1.38 2015/12/01 11:36:02 martin
258  * *** empty log message ***
259  * Revision 1.16.1.37 2015/11/30 08:16:15 philipp
260  * Added (wrapper) functions to test for TLV features
261  * Revision 1.16.1.36 2015/11/26 16:19:27 martin
262  * Reworked check feature API causing some other API calls to be
263  * simplified/changed since receiver info is now stored inside
264  * the message control block.
265  * Revision 1.16.1.35 2015/11/23 12:55:26 philipp
266  * Removed TLV functions
267  * Revision 1.16.1.33 2015/11/20 10:06:36 philipp
268  * Changed USB direct I/O receive buffer size to fit maximum message length
269  * Revision 1.16.1.32 2015/11/20 08:14:39 philipp
270  * Added id member to struct MBG_TLV_ANNOUNCE
271  * Revision 1.16.1.31 2015/11/20 07:27:38 philipp
272  * Adjusted functions and prototypes to match new TLV structures from gpsdefs.h
273  * Revision 1.16.1.30 2015/11/19 13:15:46 philipp
274  * Added TLV functionality
275  * Revision 1.16.1.29 2015/10/30 11:08:12 martin
276  * Removed obsolete definitions originating from mbgserio.h.
277  * Revision 1.16.1.28 2015/10/19 16:42:21Z martin
278  * *** empty log message ***
279  * Revision 1.16.1.27 2015/10/19 09:35:13 martin
280  * *** empty log message ***
281  * Revision 1.16.1.26 2015/10/09 11:09:18 martin
282  * *** empty log message ***
283  * Revision 1.16.1.25 2015/10/06 14:19:09 martin
284  * *** empty log message ***
285  * Revision 1.16.1.24 2015/10/02 08:57:47 thomas-b
286  * Added several functions to retrieve and set parameter structures of the new FDM API
287  * Revision 1.16.1.23 2015/10/02 08:18:51 martin
288  * *** empty log message ***
289  * Revision 1.16.1.22 2015/09/15 13:25:53 martin
290  * *** empty log message ***
291  * Revision 1.16.1.21 2015/09/09 11:05:46 gregoire
292  * Revision 1.16.1.20 2015/09/09 08:41:02Z martin
293  * Revision 1.16.1.19 2015/09/09 08:26:28 martin
294  * Revision 1.16.1.18 2015/09/08 15:25:11 martin
295  * Revision 1.16.1.17 2015/09/04 09:44:44 daniel
296  * Updated function prototypes
297  * Revision 1.16.1.16 2015/09/02 16:42:21 martin
298  * Preliminary code which is only included if a preprocessor symbol
299  * _PRELIMINARY_CODE is defined in the project Makefile.
300  * Revision 1.16.1.15 2015/08/27 16:21:32 martin
301  * Revision 1.16.1.14 2015/08/20 09:08:17 martin
302  * Revision 1.16.1.13 2015/08/18 09:54:03 martin
303  * Revision 1.16.1.12 2015/08/12 15:53:58Z martin
304  * Revision 1.16.1.11 2015/07/22 16:02:08 martin
305  * Started to support variable USB endpoint numbers.
306  * Revision 1.16.1.10 2015/07/14 15:10:27 martin
307  * Updated function prototypes.
308  * Revision 1.16.1.9 2015/07/14 13:24:59 martin
309  * Updated function prototypes.
310  * Revision 1.16.1.8.1.10 2015/05/27 09:23:57 daniel
311  * Fixed USB_DIRECT_IO stuff
312  * Revision 1.16.1.8.1.9 2015/05/21 11:01:00 martin
313  * Updated function prototypes.
314  * Revision 1.16.1.8.1.8 2015/05/19 13:20:59 daniel
315  * Preliminary support for USB_DIRECT_IO
316  * Revision 1.16.1.8.1.6 2015/05/13 09:50:51 martin
317  * Added mbgextio_xmt_ack() and mbgextio_xmt_nack().
318  * Revision 1.16.1.8.1.5 2015/04/15 15:36:19 martin
319  * Doxygen fixes.
320  * Revision 1.16.1.8.1.4 2015/03/03 10:14:50 martin
321  * Updated function prototypes.
322  * Revision 1.16.1.8.1.3 2014/11/04 15:09:37 martin
323  * More XBP stuff.
324  * Revision 1.16.1.8.1.2 2014/11/04 11:31:17 martin
325  * Revision 1.16.1.8.1.1 2014/10/30 16:14:07 martin
326  * Started to support XBP addressing.
327  * Revision 1.16.1.8 2014/10/30 16:03:09 martin
328  * Doxygen fixes.
329  * Revision 1.16.1.7 2014/10/30 14:47:06 martin
330  * Support FTDI devices.
331  * Updated USB support.
332  * Updated function prototypes.
333  * Revision 1.16.1.6 2013/11/28 15:51:48Z marvin
334  * Added mbgextio_get_ntp_peer_state_idx.
335  * Revision 1.16.1.5 2013/11/26 16:06:48Z marvin
336  * Added mbgextio_get_ntp_sys_state.
337  * Revision 1.16.1.4 2013/11/21 07:46:52Z marvin
338  * Added mbgextio_xmt_secu_settings.
339  * Revision 1.16.1.3 2013/11/12 12:12:05Z marvin
340  * Changed calls for NTP info and settings.
341  * Revision 1.16.1.2 2013/10/14 08:54:22Z marvin
342  * Added mbgextio_set_ntp_clnt_mode_cfg.
343  * Revision 1.16.1.1 2013/09/25 11:10:10Z marvin
344  * Added support for NTP and PTP.
345  * Revision 1.16 2013/09/10 08:56:35Z marvin
346  * Changed Doxygen comments.
347  * Revision 1.15 2013/09/05 15:11:40Z marvin
348  * Added support for LAN interface setup.
349  * Added support for PTP state.
350  * Added support for XMR.
351  * Added support for NTP info.
352  * Revision 1.14 2013/09/02 15:16:49Z marvin
353  * Added support for XMR (get multi ref info, set multi ref settings)
354  * Revision 1.13 2013/08/28 11:01:42Z marvin
355  * Added read and set tr_distance and gnss_mode.
356  * Revision 1.12 2013/04/11 14:18:47Z Gregoire
357  * new prototypes for sending havequick rx and tx settings to clock
358  * Revision 1.11 2013/02/06 15:44:57Z martin
359  * Updated function prototypes.
360  * Revision 1.10 2013/02/01 15:59:42 martin
361  * Updated function prototypes.
362  * Revision 1.9 2012/10/30 16:19:19 martin
363  * Support USB I/O.
364  * Started to migrate to opaque stuctures.
365  * Updated function prototypes.
366  * Revision 1.8 2011/04/08 11:26:09 martin
367  * New macros _ttm_time_set_unavail() and _ttm_time_is_avail().
368  * Revision 1.7 2009/10/02 14:21:08 martin
369  * Updated function prototypes.
370  * Revision 1.6 2009/10/01 11:13:42Z martin
371  * Updated function prototypes.
372  * Revision 1.5 2009/03/10 17:03:09Z martin
373  * Updated function prototypes.
374  * Revision 1.4 2008/09/04 14:13:19Z martin
375  * Added macro _mbgextio_xmt_msg().
376  * Updated function prototypes.
377  * Removed obsolete code.
378  * Revision 1.3 2007/02/27 10:30:06Z martin
379  * Added some global variables.
380  * Updated function prototypes.
381  * Revision 1.2 2006/12/21 10:56:35 martin
382  * Updated function prototypes.
383  * Revision 1.1 2006/08/24 12:40:37 martin
384  * Initial revision.
385  *
386  **************************************************************************/
387 
388 #ifndef _MBGEXTIO_H
389 #define _MBGEXTIO_H
390 
391 
392 /* Other headers to be included */
393 
394 #include <mbg_arch.h>
395 #include <gpsserio.h>
396 #include <mbggeo.h>
397 
398 #if _USE_PCPSDEFS
399  #include <pcpsdefs.h>
400 #endif
401 
402 #if _USE_TIME_MON
403  #include <time_mon.h>
404 #endif
405 
406 #include <time.h>
407 
408 #ifdef _MBGEXTIO
409  #define _ext
410  #define _DO_INIT
411 #else
412  #define _ext extern
413 #endif
414 
415 
416 /* Start of header body */
417 
418 #ifdef __cplusplus
419 extern "C" {
420 #endif
421 
422 
433 // The macros below can be used to set a TTM variable to a state
434 // indicating "time not available", and to check this state.
435 // This can be used for example to indicate if a capture event
436 // could have been read from a device, or not.
437 #define _ttm_time_set_unavail( _t ) do { (_t)->tm.sec = (uint8_t) 0xFF; } while ( 0 )
438 #define _ttm_time_is_avail( _t ) ( (uint8_t) (_t)->tm.sec != (uint8_t) 0xFF )
439 
440 
441 #if !_USE_SERIAL_IO_FTDI
442  // just to avoid build errors if FTDI serial is not supported
443  #define FT_STATUS int
444  #define FT_HANDLE int
445 #endif
446 
447 
448 #if !_USE_USB_IO
449  // just to avoid build errors if USB is not supported
450  typedef int MBG_USB_DEV_INFO;
451  typedef int libusb_device;
452 #endif
453 
454 
455 #if !defined( _MBGEXTIO_REQ_ACK )
456  // If _MBGEXTIO_REQ_ACK is != 0 then mbgextio_...() functions writing
457  // configuration parameters send the cmd code with the ACK request bit set
458  // which lets mbgextio_xmt_msg() try to receive a response from the device
459  // after the parameters have been sent.
460  #define _MBGEXTIO_REQ_ACK 1
461 #endif
462 
463 #if _MBGEXTIO_REQ_ACK
464  #define OPT_GPS_ACK_CODE GPS_REQACK
465 #else
466  #define OPT_GPS_ACK_CODE 0 // dummy
467 #endif
468 
469 
470 #if !defined MBGEXTIO_READ_BUFFER_SIZE
471  #if _USE_SOCKET_IO || _USE_USB_IO
472  #define MBGEXTIO_READ_BUFFER_SIZE 1000
473  #else
474  #if defined _USE_USB_DIRECT_IO
475  #define MBGEXTIO_READ_BUFFER_SIZE (MAX_MSG_DATA_SIZE + 1) // See gpsserio.h + SOH
476  #else
477  #define MBGEXTIO_READ_BUFFER_SIZE 10
478  #endif
479  #endif
480 #endif
481 
482 
484 #ifdef _DO_INIT
486 #endif
487 ;
488 
490 #ifdef _DO_INIT
491  = MBG_BAUD_STRS
492 #endif
493 ;
494 
496 #ifdef _DO_INIT
498 #endif
499 ;
500 
501 
502 #if _USE_SOCKET_IO
503 
504  #define MBG_LAN_REQUEST_CONFIG 0x000000F8
505  #define MBG_LAN_RESPOND_CONFIG 0x000000F9
506  #define MBG_LAN_UDP_BROADCAST_PORT 30718
507 
508  typedef struct
509  {
510  uint8_t interface_mode;
511  uint8_t line_speed;
512  uint8_t flow_control;
513  uint8_t reserved_0;
514  uint16_t own_tcp_port;
515  uint16_t remote_tcp_port;
516  uint32_t remote_ip_address;
517  uint8_t connect_mode;
518  uint8_t disconnect_mode;
519  uint8_t disconnect_timeout_min;
520  uint8_t disconnect_timeout_sec;
521  uint8_t trigger_char_semd_imm0;
522  uint8_t trigger_char_semd_imm1;
523  uint8_t flush_mode;
524  uint8_t pack_control;
525  uint32_t reserved_1[3];
526  uint8_t terminal_name[16];
528 
529  typedef struct
530  {
531  uint32_t command;
532  uint32_t ip_address;
533  uint8_t reserved_0;
534  uint8_t flags;
535  uint8_t prefix;
536  uint8_t reserved_1;
537  uint32_t telnet_password;
538  uint32_t gateway_ip_address;
539  MBG_LAN_DEV_CHAN channel_0;
540  MBG_LAN_DEV_CHAN channel_1;
541  uint32_t reserved_2;
542  uint32_t reserved_3;
543  } MBG_LAN_DEV_CFG;
544 
545  typedef struct mbg_lan_dev_list
546  {
547  MBG_LAN_DEV_CFG config;
548  struct mbg_lan_dev_list *next;
550 
551 #else
552 
553  typedef int MBG_LAN_DEV_CHAN;
554  typedef int MBG_LAN_DEV_CFG;
555  typedef int MBG_LAN_DEV_LIST;
556 
557 #endif
558 
559 
563 typedef int _MBG_API MBGEXTIO_CHK_SUPP_FNC( const MBG_MSG_CTL *pmctl );
564 
565 
566 #if defined( MBG_TGT_WIN32 )
567  void deinit_winsock( void );
568  int check_init_winsock( void );
569 #endif
570 
571 
572 /* ----- function prototypes begin ----- */
573 
574 /* This section was generated automatically */
575 /* by MAKEHDR, do not remove the comments. */
576 
577  const char *mbgextio_get_cmd_name( GPS_CMD cmd_code ) ;
591 
604  _NO_MBG_API_ATTR int _MBG_API mbgextio_find_lan_devices( MBG_LAN_DEV_LIST **list, uint16_t timeout_ms ) ;
605 
615  _NO_MBG_API_ATTR int _MBG_API mbgextio_free_lan_devices( MBG_LAN_DEV_LIST *list ) ;
616 
632  _NO_MBG_API_ATTR int _MBG_API mbgextio_xmt_secu_settings( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const char *old_passwd, const char *new_passwd ) ;
633 
653  _NO_MBG_API_ATTR int mbgextio_socket_write_default(MBG_MSG_CTL* pmctl, const void *buf, size_t len) ;
654 
675  _NO_MBG_API_ATTR int mbgextio_socket_read_default(MBG_MSG_CTL* pmctl, void *buf, size_t len) ;
676 
694  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_socket( const char *host, MBG_MSG_CTL **ppmctl, const char *passwd ) ;
695 
715  _NO_MBG_API_ATTR int mbgextio_socket_write_ssh( MBG_MSG_CTL* pmctl, const void *buf, size_t len ) ;
716 
738  _NO_MBG_API_ATTR int mbgextio_socket_read_ssh( MBG_MSG_CTL* pmctl, void *buf, size_t len ) ;
739 
761  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_ssh_socket( const char *host, MBG_MSG_CTL **ppmctl, SSH_DATA *ssh_data ) ;
762 
763  int mbgextio_open_serial_raw( const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing ) ;
788  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_serial( const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing ) ;
789 
811  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_serial_force_default( const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing ) ;
812 
821 
845  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_serial_ftdi( int device_num, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing ) ;
846 
861  _NO_MBG_API_ATTR int _MBG_API mbgextio_open_usb( const MBG_USB_DEV_INFO *mdev_info, MBG_MSG_CTL **ppmctl ) ;
862 
875  _NO_MBG_API_ATTR int _MBG_API mbgextio_reset_usb( const MBG_USB_DEV_INFO *mdev_info ) ;
876 
893  int mbgextio_open_usb_ldev( libusb_device *ldev, MBG_MSG_CTL **ppmctl ) ;
894 
919 
950  _NO_MBG_API_ATTR long _MBG_API mbgextio_force_conn_serial( const char *dev ) ;
951 
980 
999 
1015 
1032 
1049 
1064 
1077 
1090 
1103 
1116 
1130 
1143 
1155 
1168 
1187 
1209 
1222 
1240 
1253 
1266 
1279 
1292 
1321 
1336 
1349 
1369 
1389 
1407 
1425 
1441 
1457 
1475 
1491 
1504 
1517 
1530 
1543 
1556 
1569 
1582 
1595 
1608 
1620 
1633 
1646 
1659 
1672 
1685 
1698 
1711 
1724 
1738 
1751 
1764 
1777 
1791 
1815  _NO_MBG_API_ATTR int _MBG_API mbgextio_rcv_msg_unlocked( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size ) ;
1816 
1842  _NO_MBG_API_ATTR int _MBG_API mbgextio_rcv_msg( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size ) ;
1843 
1868  _NO_MBG_API_ATTR int _MBG_API mbgextio_xmt_msg( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, const void *p, uint16_t n_bytes ) ;
1869 
1891  _NO_MBG_API_ATTR int _MBG_API mbgextio_xmt_cmd( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd ) ;
1892 
1915  _NO_MBG_API_ATTR int _MBG_API mbgextio_xmt_cmd_us( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t us ) ;
1916 
1939  _NO_MBG_API_ATTR int _MBG_API mbgextio_xmt_cmd_u32( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint32_t u32 ) ;
1940 
1961  _NO_MBG_API_ATTR int _MBG_API mbgextio_req_data( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size ) ;
1962 
1987  _NO_MBG_API_ATTR int _MBG_API mbgextio_req_data_idx_unlocked( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t idx, void *buf, size_t buf_size ) ;
1988 
2011  _NO_MBG_API_ATTR int _MBG_API mbgextio_req_data_idx( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t idx, void *buf, size_t buf_size ) ;
2012 
2034 
2050 
2067 
2084 
2102 
2119 
2131 
2151 
2167  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_sw_rev( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SW_REV *p ) ;
2168 
2183 
2197  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_ignore_lock( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IGNORE_LOCK *p ) ;
2198 
2211 
2228  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_time( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TTM *p ) ;
2229 
2243  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_time( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TTM *p ) ;
2244 
2256  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_pos_lla( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const LLA lla ) ;
2257 
2269  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_pos_lla( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, LLA lla ) ;
2270 
2282  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_pos_xyz( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XYZ xyz ) ;
2283 
2295  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_pos( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, POS *p_pos ) ;
2296 
2308  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_tzdl( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TZDL *p ) ;
2309 
2321  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_tzdl( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TZDL *p ) ;
2322 
2343 
2363  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_port_parm( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const PORT_PARM *p ) ;
2364 
2378  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_synth( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SYNTH *p ) ;
2379 
2393  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_synth( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const SYNTH *p ) ;
2394 
2406  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_ant_info( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, ANT_INFO *p ) ;
2407 
2419  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_ucap( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TTM *p ) ;
2420 
2433 
2446 
2461 
2476 
2489 
2503 
2517 
2534 
2548 
2565 
2579 
2594 
2608  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_enable_flags( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const ENABLE_FLAGS *p ) ;
2609 
2622 
2641 
2660 
2675 
2690 
2705 
2720 
2741 
2757 
2772  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_ref_offs( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_REF_OFFS *p ) ;
2773 
2787 
2802 
2817 
2834 
2849 
2866 
2882 
2899 
2916 
2932 
2949 
2965 
2977 
2992 
3007 
3022  _NO_MBG_API_ATTR int _MBG_API mbgextio_clr_evt_log( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr ) ;
3023 
3040 
3060 
3082 
3097 
3114 
3129 
3144 
3155 
3169  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_tzcode( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TZCODE *p ) ;
3170 
3184  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_tzcode( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TZCODE *p ) ;
3185 
3200 
3215 
3230 
3244  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_tr_distance( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TR_DISTANCE *p ) ;
3245 
3260 
3275 
3292 
3310 
3326 
3342 
3363 
3386 
3408 
3430 
3453 
3476 
3498 
3520 
3535 
3550 
3564  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_ip4_settings( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IP4_SETTINGS *p ) ;
3565 
3580 
3595 
3610 
3625 
3640  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_all_ptp_uc_master_info( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_UC_MASTER_INFO_IDX *ptp_uc_master_info_idx, const PTP_UC_MASTER_CFG_LIMITS *ptp_uc_master_cfg_limits ) ;
3641 
3656 
3676 
3692 
3708 
3724 
3740 
3756 
3772 
3788 
3804 
3821 
3838 
3854 
3870 
3886 
3902 
3918 
3934 
3950 
3966 
3983 
4000 
4015 
4030 
4046 
4062 
4080 
4098 
4116 
4134 
4152 
4170 
4188 
4206 
4228 
4248 
4270 
4293 
4311 
4329 
4348 
4367 
4386 
4406 
4423 
4439  _NO_MBG_API_ATTR int _MBG_API mbgextio_delete_fw( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint16_t idx) ;
4440 
4462 
4479 
4497 
4516 
4533 
4550  _NO_MBG_API_ATTR int _MBG_API mbgextio_send_database_cmd( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint32_t cmd, const void *payload, uint32_t payload_len) ;
4551 
4568 
4583 
4598 
4616 
4634 
4651 
4668 
4683 
4700 
4717 
4736 
4754 
4770 
4788 
4805 
4822 
4841 
4860 
4876 
4892 
4908 
4923 
4938 
4955 
4973 
4991 
5009 
5027 
5045 
5064 
5080 
5099 
5115 
5134 
5150 
5165 
5184 
5203 
5222 
5238 
5254 
5271 
5277 
5290  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_cfgh( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, CFGH *p ) ;
5291 
5305  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_sv_alm( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SV_ALM *p, SVNO svno ) ;
5306 
5319  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_iono( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IONO *p ) ;
5320 
5337  _NO_MBG_API_ATTR int _MBG_API mbgextio_get_utc_parm( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, UTC *p ) ;
5338 
5355  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_utc_parm( MBG_MSG_CTL *pmctl, XBP_ADDR *p_addr, const UTC *p ) ;
5356 
5373 
5390 
5410 
5425 
5440 
5456 
5472 
5487 
5502 
5518 
5531  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_fdm_tdev( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NANO_TIME_64 *p ) ;
5532 
5545  _NO_MBG_API_ATTR int _MBG_API mbgextio_cmd_save_cfg( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr ) ;
5546 
5560 
5574 
5588 
5602 
5614  _NO_MBG_API_ATTR int _MBG_API mbgextio_set_pwr_ctl( MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PWR_CTL *p ) ;
5615 
5628 
5651 
5672 
5693 
5714 
5727 
5740 
5753 
5765  _NO_MBG_API_ATTR int _MBG_API mbgextio_chk_user_perm( MBG_MSG_CTL *pmctl, uint16_t perm, uint32_t scope_mask ) ;
5766 
5783 
5801 
5819 
5837 
5855 
5856 
5857 /* ----- function prototypes end ----- */
5858 
5859 #ifdef __cplusplus
5860 }
5861 #endif
5862 
5863 #define _mbgextio_xmt_msg( _pmctl, _addr, _cmd, _s ) \
5864  mbgextio_xmt_msg( _pmctl, _addr, _cmd, _s, sizeof( *(_s) ) )
5865 
5866 /* End of header body */
5867 
5868 #undef _ext
5869 #undef _DO_INIT
5870 
5871 #endif /* _MBGEXTIO_H */
ulong mbgextio_set_dev_poll_timeout(MBG_MSG_CTL *pmctl, ulong new_timeout)
Set device poll timeout.
Definition: mbgextio.c:3244
int mbgextio_get_ref_offs(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_REF_OFFS *p)
Read current ref offset to UTC configuration.
Definition: mbgextio.c:7244
int mbgextio_get_irig_rx_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IRIG_INFO *p)
Read configuration info and supported features for the device&#39;s IRIG input.
Definition: mbgextio.c:7133
int mbgextio_set_net_dns_srch_dom_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_NET_NAME *p, uint16_t idx)
Send the network DNS search domain in MBG_NET_NAME format.
Definition: mbgextio.c:12264
int mbgextio_get_xbp_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XBP_LIMITS *p)
Read the XBP_LIMITS to check which XBP features are supported.
Definition: mbgextio.c:12738
int mbgextio_set_net_intf_link_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_NET_INTF_LINK_SETTINGS *p, uint16_t idx)
Send the network link configuration in MBG_NET_INTF_LINK_SETTINGS format.
Definition: mbgextio.c:12409
int mbgextio_dev_has_io_ports(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3395
A structure to used to read the status of the PTP protocol stack.
Definition: gpsdefs.h:13184
int mbgextio_free_lan_devices(MBG_LAN_DEV_LIST *list)
Frees the MBG_LAN_DEV_LIST allocated by mbgextio_find_lan_devices.
uint16_t TR_DISTANCE
Receiver distance from transmitter [km].
Definition: pcpsdefs.h:1553
int mbgextio_dev_has_ucap(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3950
int mbgextio_dev_has_tzcode(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3627
int mbgextio_open_usb(const MBG_USB_DEV_INFO *mdev_info, MBG_MSG_CTL **ppmctl)
Open a binary communication channel using direct USB I/O.
int mbgextio_dev_has_ucap_net(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3960
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_diag_file
Check if a device supports creating / sending a diagnostics file via TLV.
Definition: mbgextio.c:4150
int mbgextio_set_ucap_net_glb_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_UCAP_NET_GLB_SETTINGS *p)
Send the user capture network global configuration in MBG_UCAP_NET_GLB_SETTINGS format.
Definition: mbgextio.c:6526
Number of event log entries that can be stored and yet have been saved.
Definition: gpsdefs.h:9540
int mbgextio_set_ntp_misc_orphan_mode_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_MISC_ORPHAN_MODE_SETTINGS *p)
Send the NTP orphan mode configuration in NTP_MISC_ORPHAN_MODE_SETTINGS format.
Definition: mbgextio.c:11633
int mbgextio_get_pos_lla(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, LLA lla)
Read the current receiver position as LLA array.
Definition: mbgextio.c:6080
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_bus_lvl_dev
Check if a device is a bus level device.
Definition: mbgextio.c:3592
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_tcr
Check if a device is a time code receiver(TCR)
Definition: mbgextio.c:3526
Summary of configuration and health data of all satellites.
Definition: gpsdefs.h:18512
int mbgextio_set_hq_rx_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const HAVEQUICK_SETTINGS *p)
Send new configuration settings for the device&#39;s HAVEQUICK input.
Definition: mbgextio.c:8279
NTP trusted key settings.
Definition: gpsdefs.h:15989
NTP trusted key info, with index.
Definition: gpsdefs.h:16051
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_gps_stat_info
Check if a device supports the STAT_INFO structure and API.
Definition: mbgextio.c:3455
IO Port Type Info Index.
Definition: gpsdefs.h:21046
int mbgextio_xmt_secu_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const char *old_passwd, const char *new_passwd)
Send security settings for the socket connection.
IO Port Type Status.
Definition: gpsdefs.h:21225
int mbgextio_get_ucap_net_recv_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_UCAP_NET_RECV_INFO_IDX *p, uint16_t idx)
Read the user capture network receiver info with the given index in MBG_UCAP_NET_RECV_INFO_IDX format...
Definition: mbgextio.c:6564
int mbgextio_get_user_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_USER_INFO_IDX *p, uint16_t idx)
Read the user info with the given index in MBG_USER_INFO_IDX format.
Definition: mbgextio.c:6704
An IPv4 or IPv6 network address.
Definition: gpsdefs.h:11906
int mbgextio_set_ucap_net_recv_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_UCAP_NET_RECV_SETTINGS_IDX *p, uint16_t idx)
Send the user capture network receiver configuration with the given index in MBG_UCAP_NET_RECV_SETTIN...
Definition: mbgextio.c:6597
int mbgextio_get_xmr_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMULTI_REF_INFO_IDX *p, uint16_t idx)
Read XMULTI_REF_INFO_IDX for a specific XMR source.
Definition: mbgextio.c:8774
int mbgextio_dev_has_ant_cable_length(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3384
int mbgextio_get_io_port_type_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IO_PORT_TYPE_INFO_IDX *p, uint8_t port_idx, uint8_t port_type_idx)
Read I/O port type info in MBG_IO_PORT_TYPE_INFO_IDX format.
Definition: mbgextio.c:5574
int mbgextio_req_data_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t idx, void *buf, size_t buf_size)
Read a specific element of an array of data structures.
Definition: mbgextio.c:5368
Global settings for user captures via network.
Definition: gpsdefs.h:12466
Settings of an IPv4-only network interface.
Definition: gpsdefs.h:11239
MBG_MSG_BUFF * mbgextio_get_rcv_buffer_addr(MBG_MSG_CTL *pmctl)
Retrieve address of the allocated receive buffer.
Definition: mbgextio.c:3151
int mbgextio_get_bvar_stat(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, BVAR_STAT *p)
Read the status of buffered variables.
Definition: mbgextio.c:5939
GPS UTC correction parameters.
Definition: gpsdefs.h:18564
size_t mbgextio_get_xmt_buffer_size(MBG_MSG_CTL *pmctl)
Retrieve size of the allocated transmit buffer.
Definition: mbgextio.c:3220
int mbgextio_get_snmp_v3_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SNMP_V3_INFO_IDX *p, uint16_t idx)
Read SNMP v3 info in MBG_SNMP_V3_INFO_IDX format.
Definition: mbgextio.c:10408
A structure used to configure a PTP port.
Definition: gpsdefs.h:13278
int mbgextio_set_ptp_v2_default_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V2_DEFAULT_DATASET *p)
Send PTPv2 default dataset to a device in MBG_PTP_V2_DEFAULT_DATASET format.
Definition: mbgextio.c:9782
#define MBG_BAUD_RATES
An initializer for a table of baud rate values.
Definition: gpsdefs.h:3259
int MBGEXTIO_CHK_SUPP_FNC(const MBG_MSG_CTL *pmctl)
Type of functions to check if a feature is supported.
Definition: mbgextio.h:563
int mbgextio_get_gnss_sat_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GNSS_SAT_INFO_IDX *p, uint16_t idx)
::TODO
Definition: mbgextio.c:8482
int mbgextio_dev_has_tainted_cfg(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3406
int mbgextio_get_led_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LED_SETTINGS_IDX *p, uint16_t idx)
Read a MBG_LED_SETTINGS_IDX parameter structure from a device.
Definition: mbgextio.c:13779
int mbgextio_set_user_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_USER_SETTINGS *p, uint16_t idx)
Write user settings in MBG_USER_SETTINGS_IDX format.
Definition: mbgextio.c:6738
Structure that contains an index value and the NTP peer state.
Definition: gpsdefs.h:17539
A The structure used to store the configuration of two serial ports.
Definition: gpsdefs.h:3929
int mbgextio_register_push_msg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd)
Register for command specific push messages.
Definition: mbgextio.c:13870
int mbgextio_set_user_mngmnt_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_USER_MNGMNT_SETTINGS *p)
Send the user configuration in MBG_USER_MNGMNT_SETTINGS format.
Definition: mbgextio.c:6666
int mbgextio_get_gnss_sat_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GNSS_SAT_INFO *p)
::TODO
Definition: mbgextio.c:8446
int mbgextio_get_xmr_ext_src_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMR_EXT_SRC_INFO_IDX *p, uint16_t idx)
Read XMR_EXT_SRC_INFO_IDX.
Definition: mbgextio.c:8689
int mbgextio_get_gnss_mode_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_GNSS_MODE_INFO *p)
Read current GNSS mode settings and supported features.
Definition: mbgextio.c:8373
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_database
Check if a device supports database(s) feature.
Definition: mbgextio.c:4515
Time scale configuration settings plus capabilities.
Definition: gpsdefs.h:5519
int mbgextio_get_net_stat_dns_srch_dom_stat_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_NAME_IDX *p, uint16_t idx)
Read the current network DNS search domain in MBG_NET_NAME_IDX format.
Definition: mbgextio.c:12340
int mbgextio_get_snmp_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SNMP_GLB_INFO *p)
Read the SNMP global info in MBG_SNMP_GLB_INFO format.
Definition: mbgextio.c:10177
int mbgextio_set_ant_cable_len(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const ANT_CABLE_LEN *p)
Send the GPS antenna cable length configuration.
Definition: mbgextio.c:7024
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_user_auth
Check if a device supports user authentication.
Definition: mbgextio.c:4021
Global network configuration settings.
Definition: gpsdefs.h:11844
int mbgextio_get_ptp_v1_time_properties_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V1_TIME_PROPERTIES_DATASET *p)
Read the PTPv1 time properties dataset in MBG_PTP_V1_TIME_PROPERTIES_DATASET format.
Definition: mbgextio.c:9599
int mbgextio_set_holdover_interval(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const XMR_HOLDOVER_INTV *p)
Set the XMR holdover interval.
Definition: mbgextio.c:8092
int mbgextio_get_tr_distance(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TR_DISTANCE *p)
Read the distance from transmitter TR_DISTANCE format.
Definition: mbgextio.c:8312
long mbgextio_force_conn_serial(const char *dev)
Try to force a serial connection to a device.
int mbgextio_socket_write_ssh(MBG_MSG_CTL *pmctl, const void *buf, size_t len)
Function, which can be used to write data to an SSH binary protocol channel.
int mbgextio_get_fw_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_FW_INFO_IDX *p, uint16_t idx)
Read the firmware info with the given index in MBG_FW_INFO_IDX format.
Definition: mbgextio.c:10939
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_monitoring
Check if a device supports the extended feature monitoring.
Definition: mbgextio.c:4295
int mbgextio_get_svc_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SERVICE_STATUS_IDX *p, uint16_t idx)
Read the service status with the given index in MBG_SERVICE_STATUS_IDX format.
Definition: mbgextio.c:14111
int mbgextio_dev_has_evt_log(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3940
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_user_mngmnt
Check if a device supports user management.
Definition: mbgextio.c:4045
int mbgextio_get_raw_irig_data(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_RAW_IRIG_DATA *p)
Read raw IRIG data.
Definition: mbgextio.c:7210
NTP orphan mode settings to be read from / written to a device.
Definition: gpsdefs.h:16168
Detailed GNSS satellite status, plus index.
Definition: gpsdefs.h:10968
int mbgextio_get_ucap(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TTM *p)
Read a user capture event in TTM format.
Definition: mbgextio.c:6428
int mbgextio_xmt_cmd_u32(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint32_t u32)
Transmit a message with a single ushort (uint32_t) parameter.
Definition: mbgextio.c:5235
int mbgextio_set_ntp_refclk_cfg_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_REFCLK_CFG_SETTINGS *p, uint16_t idx)
Send NTP refclk config settings with the given index in NTP_REFCLK_CFG_SETTINGS format.
Definition: mbgextio.c:11941
int mbgextio_close_connection(MBG_MSG_CTL **ppmctl)
Close a binary communication channel and release resources.
Definition: mbgextio.c:2697
int mbgextio_set_ref_offs(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_REF_OFFS *p)
Send new ref offset to UTC settings.
Definition: mbgextio.c:7278
PTPv1 current dataset containing information about the synchronization status of the device...
Definition: gpsdefs.h:14611
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_exec_cmd
Check if a device supports command execution via TLV.
Definition: mbgextio.c:4088
A timestamp with nanosecond resolution, but 64 bit size.
Definition: words.h:621
int MBG_TIME_MON_TARGET_EXT_DATA_SET_IDX
Definition: gpsserio.h:680
Status information on a ref time source at a specific priority level.
Definition: gpsdefs.h:6885
int mbgextio_open_serial_ftdi(int device_num, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing)
Open a binary communication channel using serial FTDI D2xx port.
PTPv1 port dataset containing information about the appropriate port of the device.
Definition: gpsdefs.h:14785
int mbgextio_set_svc_ctl_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint16_t idx, uint16_t ctl)
Set service control command.
Definition: mbgextio.c:14147
int _MBG_API MBG_ASYNC_MSG_HANDLER_FNC(MBG_MSG_CTL *pmctl)
Type of a callback function to handle spurious binary messages.
Definition: gpsserio.h:1934
int mbgextio_time_mon_send_inst_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_TIME_MON_INST_INFO *p)
int mbgextio_set_ims_fdm_output_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_IMS_FDM_OUTPUT_SETTINGS *p, uint16_t idx)
Write a MBG_IMS_FDM_OUTPUT_SETTINGS parameter structure to a device.
Definition: mbgextio.c:13437
int mbgextio_get_corr_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, CORR_INFO *p)
Definition: mbgextio.c:13918
int mbgextio_set_net_glb_cfg_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_NET_GLB_CFG_SETTINGS *p)
Set the device&#39;s global network configuration settings.
Definition: mbgextio.c:12114
NTP symmetric key specific settings.
Definition: gpsdefs.h:15892
Current IRIG settings and supported codes.
Definition: gpsdefs.h:5054
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_net_cfg
Check if a device supports the new NET_CFG API.
Definition: mbgextio.c:3859
Configuration settings of a serial port.
Definition: gpsdefs.h:3507
int mbgextio_get_ip4_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IP4_SETTINGS *p)
Read the lan ipv4 configuration state IP4_SETTINGS format.
Definition: mbgextio.c:9051
unsigned short uint16_t
Definition: words.h:213
A structure used to configure optional settings.
Definition: gpsdefs.h:5342
int mbgextio_open_socket(const char *host, MBG_MSG_CTL **ppmctl, const char *passwd)
Open a binary communication channel via a LAN/socket connection.
XMR holdover status.
Definition: gpsdefs.h:7157
int mbgextio_get_syslog_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SYSLOG_GLB_INFO *p)
Read the syslog global info in MBG_SYSLOG_GLB_INFO format.
Definition: mbgextio.c:10740
Information on available XBP nodes.
Definition: gpsdefs.h:17926
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_transactions
Check if a device has MBG_XFEATURE_TRANSACTIONS.
Definition: mbgextio.c:4405
NTP refclock info, with index.
Definition: gpsdefs.h:15795
int mbgextio_get_ext_sys_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_EXT_SYS_INFO *p)
Definition: mbgextio.c:13903
int mbgextio_get_ptp_cfg_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_CFG_INFO *p)
Read the ptp configuration PTP_CFG_INFO format.
Definition: mbgextio.c:9185
int mbgextio_dev_has_service(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3725
Peer settings for NTP devices to configure an upload NTP server.
Definition: gpsdefs.h:16358
int mbgextio_open_serial(const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing)
Open a binary communication channel using direct serial I/O.
An event log entry.
Definition: gpsdefs.h:9564
MBG_MSG_BUFF * mbgextio_get_xmt_buffer_addr(MBG_MSG_CTL *pmctl)
Retrieve address of the allocated transmit buffer.
Definition: mbgextio.c:3197
XMR timing metrics for a particular source, with index.
Definition: gpsdefs.h:7468
IO Port Settings.
Definition: gpsdefs.h:20689
PTPv1 parent dataset containing information about the master (parent) of the device.
Definition: gpsdefs.h:14670
int mbgextio_set_tr_distance(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TR_DISTANCE *p)
Set the transmitter distance (km) in TR_DISTANCE format.
Definition: mbgextio.c:8340
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_gnss
Check if a device supports the GNSS API.
Definition: mbgextio.c:3504
int mbgextio_clr_ucap_buff(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr)
Clear the user capture event buffer on-board the device.
Definition: mbgextio.c:7785
Client settings of an NTP device.
Definition: gpsdefs.h:16233
Configuration settings for a HaveQuick input or output.
Definition: gpsdefs.h:9456
int mbgextio_get_ims_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_STATE *p)
Read the current IMS state and supported IMS features.
Definition: mbgextio.c:8026
Current settings and general capabilities of a specific unicast master.
Definition: gpsdefs.h:14382
int mbgextio_unregister_push_msg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd)
Unregister for command specific push messages.
Definition: mbgextio.c:13892
Query MBG_NET_INTF_ROUTE_INFO by its index.
Definition: gpsdefs.h:12344
int mbgextio_set_ptp_v2_parent_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V2_PARENT_DATASET *p)
Send PTPv2 parent dataset to a device in MBG_PTP_V2_PARENT_DATASET format.
Definition: mbgextio.c:9928
int mbgextio_chk_user_perm(MBG_MSG_CTL *pmctl, uint16_t perm, uint32_t scope_mask)
Check user permission for one of the given scopes.
Definition: mbgextio.c:13948
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_ntp_license
Check if a device supports supports NTP license infos via TLV.
Definition: mbgextio.c:4211
Information on an XBP node with specific index.
Definition: gpsdefs.h:18044
int mbgextio_dev_has_synth(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3648
#define _NO_MBG_API
Definition: mbg_tgt.h:1028
int mbgextio_get_io_port_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IO_PORT_INFO_IDX *p, uint8_t idx)
Read I/O port info in MBG_IO_PORT_INFO_IDX format.
Definition: mbgextio.c:5522
int mbgextio_set_ntp_srv_mode_cfg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_SRV_MODE_SETTINGS *p)
Send the NTP server mode configuration.
Definition: mbgextio.c:11863
int mbgextio_get_first_evt_log_entry(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_EVT_LOG_ENTRY *p)
Return the first entry from the on-board event log.
Definition: mbgextio.c:7953
#define _NO_MBG_API_ATTR
Definition: mbg_tgt.h:1032
int mbgextio_set_ptp_v1_time_properties_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V1_TIME_PROPERTIES_DATASET *p)
Send PTPv1 time properties dataset to a device in MBG_PTP_V1_TIME_PROPERTIES_DATASET format...
Definition: mbgextio.c:9633
int mbgextio_get_snmp_v3_trap_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SNMP_V3_TRAP_INFO_IDX *p, uint16_t idx)
Read SNMP v3 trap info in MBG_SNMP_V3_TRAP_INFO_IDX format.
Definition: mbgextio.c:10486
PTPv1 time drop dataset.
Definition: gpsdefs.h:14737
int mbgextio_xmt_cmd(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd)
Transmit a command-only message without additional data.
Definition: mbgextio.c:5136
uint16_t GPS_CMD
The type of a GPS command code.
Definition: gpsdefs.h:719
int mbgextio_get_user_level_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_USER_INFO_IDX *p, uint16_t idx)
Read the user level info with the given index in MBG_USER_INFO_IDX format.
Definition: mbgextio.c:6776
int mbgextio_get_ptp_smpte_tlv_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_SMPTE_PROFILE_CFG *p)
Read the current SMPTE TLV.
Definition: mbgextio.c:10115
int mbgextio_get_ntp_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_GLB_INFO *p)
Read the ntp global information NTP_GLB_INFO format.
Definition: mbgextio.c:11305
int mbgextio_setup_xdevfeat(MBG_MSG_CTL *pmctl, XBP_ADDR *addr)
Set up MBG_XDEV_FEATURES for a device which has just been opened.
Definition: mbgextio.c:922
int mbgextio_get_sv_alm(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SV_ALM *p, SVNO svno)
Read the GPS almanach for the specified SV from a device.
Definition: mbgextio.c:12936
int mbgextio_set_snmp_v3_trap_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SNMP_V3_TRAP_SETTINGS *p, uint16_t idx)
Write SNMP v3 trap settings in MBG_SNMP_V3_TRAP_SETTINGS format.
Definition: mbgextio.c:10522
int mbgextio_set_svc_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SERVICE_SETTINGS *p, uint16_t idx)
Write service settings in MBG_SERVICE_SETTINGS_IDX format.
Definition: mbgextio.c:14069
int mbgextio_socket_read_ssh(MBG_MSG_CTL *pmctl, void *buf, size_t len)
Function, which can be used to read data from an SSH binary protocol channel.
int mbgextio_set_io_port_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_IO_PORT_SETTINGS *p, uint8_t idx)
Send I/O port settings in MBG_IO_PORT_SETTINGS format.
Definition: mbgextio.c:5476
PTPv2 port dataset.
Definition: gpsdefs.h:15035
int mbgextio_get_all_str_type_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, STR_TYPE_INFO_IDX stii[])
Read an array of all supported string types.
Definition: mbgextio.c:7450
int mbgextio_get_ntp_trusted_key_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_TRUSTED_KEY_INFO_IDX *p, uint16_t idx)
Read the NTP trusted key info with the given index in NTP_TRUSTED_KEY_INFO_IDX format.
Definition: mbgextio.c:11489
int mbgextio_set_ptp_v1_port_dataset_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V1_PORT_DATASET *p, uint16_t idx)
Send PTPv1 port dataset with the appropriate index to a device in MBG_PTP_V1_PORT_DATASET format...
Definition: mbgextio.c:9708
A generic structure used to specify FDM limits.
Definition: gpsdefs.h:10114
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_req_ttm
Check if a device has MBG_XFEATURE_REQ_TTM.
Definition: mbgextio.c:4450
int mbgextio_get_ntp_srv_mode_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_SRV_MODE_INFO *p)
Read the ntp server mode information in NTP_SRV_MODE_INFO format.
Definition: mbgextio.c:11830
int mbgextio_get_receiver_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, RECEIVER_INFO *p)
Read a receiver info structure.
Definition: mbgextio.c:5410
int mbgextio_xmt_msg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, const void *p, uint16_t n_bytes)
Set up and send a generic binary message.
Definition: mbgextio.c:5058
int mbgextio_set_database_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_DATABASE_SETTINGS *p, uint8_t idx)
Write database settings in MBG_DATABASE_SETTINGS_IDX format.
Definition: mbgextio.c:11196
XMR statistics for a particular source, with index.
Definition: gpsdefs.h:7403
int mbgextio_rcv_msg_unlocked(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size)
Generic reception of a binary message.
Definition: mbgextio.c:4614
int mbgextio_get_ntp_peer_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_PEER_SETTINGS_IDX *p, uint16_t idx)
Read the ntp peer settings of current idx NTP_PEER_SETTINGS format.
Definition: mbgextio.c:11752
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_pwr_ctl_api
Check if a device supports the power control API.
Definition: mbgextio.c:4361
A generic structure used to hold a GPIO port&#39;s settings.
Definition: gpsdefs.h:9127
int mbgextio_dev_has_time_scale(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3607
const char * mbg_baud_rate_strs[N_MBG_BAUD_RATES]
int mbgextio_set_scu_stat_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const SCU_STAT_SETTINGS *p)
Send SCU_STAT_SETTINGS to the device.
Definition: mbgextio.c:13090
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_dcf
Check if a device is a DCF77 receiver.
Definition: mbgextio.c:3548
int mbgextio_get_xmr_ext_source_metrics_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMR_METRICS_IDX *p, uint16_t idx)
Read XMR_METRICS_IDX for a specific XMR source.
Definition: mbgextio.c:8935
Configuration settings for a single programmable pulse output.
Definition: gpsdefs.h:5692
Structure that represents the current system status of an NTP device.
Definition: gpsdefs.h:16872
uint32_t mbg_baud_rates[N_MBG_BAUD_RATES]
int mbgextio_get_ims_fdm_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_FDM_STATE *p)
Read a MBG_IMS_FDM_STATE parameter structure from a device.
Definition: mbgextio.c:13369
int mbgextio_set_ntp_clnt_mode_cfg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_CLNT_MODE_SETTINGS *p)
Send the NTP client mode configuration.
Definition: mbgextio.c:11712
uint16_t BVAR_STAT
Status flags of battery buffered data.
Definition: gpsdefs.h:770
int mbgextio_dev_has_pos_lla(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3351
int mbgextio_get_all_port_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PORT_INFO_IDX pii[])
Read an array of current settings and capabilities of all serial ports.
Definition: mbgextio.c:7536
PTPv2 time properties dataset.
Definition: gpsdefs.h:15009
int mbgextio_get_xmr_instances(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMULTI_REF_INSTANCES *p)
Read XMULTI_REF_INSTANCES.
Definition: mbgextio.c:8647
int mbgextio_get_clk_res_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_CLK_RES_INFO *p)
Read clk_res_info from device.
Definition: mbgextio.c:5657
Time scale configuration settings.
Definition: gpsdefs.h:5505
NTP refclock specific settings.
Definition: gpsdefs.h:15681
int mbgextio_time_mon_send_target_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_TIME_MON_TARGET_SETTINGS *p)
int mbgextio_set_ntp_trusted_key_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_TRUSTED_KEY_SETTINGS *p, uint16_t idx)
Send NTP trusted key settings with the given index in NTP_TRUSTED_KEY_SETTINGS format.
Definition: mbgextio.c:11524
int mbgextio_set_syslog_glb_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SYSLOG_GLB_SETTINGS *p)
Send the syslog global settings in MBG_SYSLOG_GLB_SETTINGS format.
Definition: mbgextio.c:10776
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_raw_irig_data
Check if a timecode receiver provides MBG_RAW_IRIG_DATA.
Definition: mbgextio.c:3801
int mbgextio_dev_has_push_msgs(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3417
int mbgextio_clr_evt_log(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr)
Clear the on-board event log.
Definition: mbgextio.c:7884
int mbgextio_get_all_gnss_sat_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GNSS_SAT_INFO_IDX gsii[], const MBG_GNSS_MODE_INFO *p_mi)
::TODO Read an array of all supported string types
Definition: mbgextio.c:8527
Configuration settings for a single LNE port.
Definition: gpsdefs.h:19035
int mbgextio_get_all_pout_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, POUT_INFO_IDX *pii)
Read an array of current settings and capabilities of all programmable pulse outputs.
Definition: mbgextio.c:7664
const char * mbg_framing_strs[N_MBG_FRAMINGS]
int mbgextio_set_utc_parm(MBG_MSG_CTL *pmctl, XBP_ADDR *p_addr, const UTC *p)
Write a UTC parameter structure to a device.
Definition: mbgextio.c:13022
NTP symm key info, with index.
Definition: gpsdefs.h:15969
int mbgextio_get_io_port_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IO_PORT_LIMITS *p)
Read I/O port limits in MBG_IO_PORT_LIMITS format.
Definition: mbgextio.c:5439
Additional parameters for SMPTE ST 2059-2 profile.
Definition: gpsdefs.h:13795
int mbgextio_get_time_scale_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_TIME_SCALE_INFO *p)
Read time scale configuration parameters.
Definition: mbgextio.c:7814
Information on a specific supported string format.
Definition: gpsdefs.h:3733
int _MBG_API MBG_ASYNC_DATA_RESET_FNC(MBG_MSG_CTL *pmctl)
Type of a callback function to reset handling of spurious asynchronous data bytes.
Definition: gpsserio.h:1964
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_ptpv1_license
Check if a device supports supports PTPv1 License Infos via TLV.
Definition: mbgextio.c:4190
A structure used to specify a variable frequency.
Definition: gpsdefs.h:7750
int _MBG_API MBG_NACK_HANDLER_FNC(MBG_MSG_CTL *pmctl)
Type of a callback function to optionally handle NACK messages.
Definition: gpsserio.h:1918
int mbgextio_get_pout_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, POUT_INFO_IDX *p, uint16_t idx)
Read current settings and capabilities of a specific programmable pulse output.
Definition: mbgextio.c:7619
int mbgextio_set_snmp_v3_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SNMP_V3_SETTINGS *p, uint16_t idx)
Write SNMP v3 settings in MBG_SNMP_V3_SETTINGS format.
Definition: mbgextio.c:10444
Settings, features and flags for receivers of user captures via network.
Definition: gpsdefs.h:12613
int mbgextio_fw_ufu_flash(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_FW_UFU_FLASH_CMD *p)
Send UFU flash instruction(s)
Definition: mbgextio.c:11078
Client settings info of an NTP device.
Definition: gpsdefs.h:16260
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_time_monitor_license
Check if a device supports supportsTime Monitor License infos via TLV.
Definition: mbgextio.c:4232
#define MBG_BAUD_STRS
An initializer for a table of baud rate strings.
Definition: gpsdefs.h:3283
int mbgextio_open_ssh_socket(const char *host, MBG_MSG_CTL **ppmctl, SSH_DATA *ssh_data)
int mbgextio_get_ntp_misc_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_MISC_LIMITS *p)
Read the NTP misc limits in NTP_MISC_LIMITS format.
Definition: mbgextio.c:11564
int mbgextio_get_net_stat_intf_addr_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_ADDR_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_ADDR_INFO_IDX from the status with the given index.
Definition: mbgextio.c:12669
int mbgextio_get_xbp_node_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XBP_NODE_INFO_IDX *p, uint16_t idx)
Read the XBP_NODE_INFO for a specific node in XBP_NODE_INFO_IDX format.
Definition: mbgextio.c:12797
int mbgextio_get_net_stat_glb_cfg_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_GLB_CFG_INFO *p)
Read the network global status information MBG_NET_GLB_CFG_INFO format.
Definition: mbgextio.c:12597
int mbgextio_dev_has_pos_xyz(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3340
int mbgextio_get_pos_xyz(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XYZ xyz)
Read the current receiver position as XYZ array.
Definition: mbgextio.c:6116
int mbgextio_set_enable_flags(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const ENABLE_FLAGS *p)
Send the enable flags controlling when output signals are enabled.
Definition: mbgextio.c:6914
int mbgextio_get_ant_cable_len(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, ANT_CABLE_LEN *p)
Read the configured length of the antenna cable.
Definition: mbgextio.c:6987
uint16_t ANT_CABLE_LEN
A data type used to configure the length of an antenna cable [m].
Definition: gpsdefs.h:11012
int mbgextio_get_io_port_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IO_PORT_STATUS_IDX *p, uint8_t idx)
Read I/O port status in MBG_IO_PORT_STATUS_IDX format.
Definition: mbgextio.c:5626
int mbgextio_get_net_dns_srvr_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IP_ADDR_IDX *p, uint16_t idx)
Read a network DNS server entry in MBG_IP_ADDR_IDX format.
Definition: mbgextio.c:12153
int mbgextio_set_pout_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const POUT_SETTINGS *p, uint16_t idx)
Send configuration settings for a specific programmable pulse output.
Definition: mbgextio.c:7708
int mbgextio_get_port_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PORT_INFO_IDX *p, uint16_t idx)
Read current settings and capabilities of a specific serial port.
Definition: mbgextio.c:7491
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_ntp
Check if a device supports the NTP API.
Definition: mbgextio.c:3912
A structure to used to query the current configuration and capabilities of a PTP port.
Definition: gpsdefs.h:13342
void mbgextio_register_async_data_reset_callback(MBG_MSG_CTL *pmctl, MBG_ASYNC_DATA_RESET_FNC *fnc)
Register an asynchronous data reset callback function.
Definition: mbgextio.c:3105
int mbgextio_dev_has_ant_info(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3373
int mbgextio_set_ntp_symm_key_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_SYMM_KEY_SETTINGS *p, uint16_t idx)
Send NTP symmetric key settings with the given index in NTP_SYMM_KEY_SETTINGS format.
Definition: mbgextio.c:11447
State of FDM device.
Definition: gpsdefs.h:10158
size_t mbgextio_get_rcv_buffer_size(MBG_MSG_CTL *pmctl)
Retrieve size of the allocated receive buffer.
Definition: mbgextio.c:3174
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_fw_update
Check if a device supports a firmware update via TLV.
Definition: mbgextio.c:4130
double XYZ[N_XYZ]
A position in cartesian coordinates.
Definition: gpsdefs.h:2742
Ionospheric correction parameters.
Definition: gpsdefs.h:18597
int mbgextio_setup_xbp_node_list(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr)
Read the XBP_NODE_INFO for a specific node in XBP_NODE_INFO_IDX format //##+++++++++++++++++++++++++...
Definition: mbgextio.c:12840
Specific FDM settings and limits.
Definition: gpsdefs.h:10316
int mbgextio_get_event_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_EVENT_INFO_IDX *p, uint16_t idx)
Read monitoring event info in MBG_EVENT_INFO_IDX format.
Definition: mbgextio.c:10568
Index structure for PTPv2 port dataset.
Definition: gpsdefs.h:15073
A structure used to transmit information on date and time.
Definition: gpsdefs.h:2713
int mbgextio_set_lne_port_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_LNE_PORT_SETTINGS *p, uint16_t idx)
Write a MBG_LNE_PORT_SETTINGS parameter structure to a device.
Definition: mbgextio.c:13615
PTPv2 default dataset.
Definition: gpsdefs.h:14865
Index structure for PTPv1 port dataset.
Definition: gpsdefs.h:14822
int mbgextio_get_ntp_misc_orphan_mode_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_MISC_ORPHAN_MODE_INFO *p)
Read the NTP orphan mode information in NTP_MISC_ORPHAN_MODE_INFO format.
Definition: mbgextio.c:11598
int mbgextio_get_ucap_net_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_UCAP_NET_GLB_INFO *p)
Read the user capture network global info in MBG_UCAP_NET_GLB_INFO format.
Definition: mbgextio.c:6495
PTPv2 parent dataset.
Definition: gpsdefs.h:14947
A generic message send and receive control structure.
Definition: gpsserio.h:1972
Generic state of an IMS device.
Definition: gpsdefs.h:9790
int mbgextio_get_net_glb_cfg_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_GLB_CFG_INFO *p)
Read the network global config information MBG_NET_GLB_CFG_INFO format.
Definition: mbgextio.c:12082
int mbgextio_reset_usb(const MBG_USB_DEV_INFO *mdev_info)
Reset an USB device in case that the open_usb function return MBG_ERR_BUSY.
GNSS mode settings.
Definition: gpsdefs.h:10677
int mbgextio_set_tzdl(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TZDL *p)
Set the local time conversion parameters in TZDL format.
Definition: mbgextio.c:6222
int mbgextio_get_ptp_v2_current_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V2_CURRENT_DATASET *p)
Read the PTPv2 current dataset in MBG_PTP_V2_CURRENT_DATASET format.
Definition: mbgextio.c:9821
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_ptpv2_license
Check if a device supports upports PTPv2 license infos.
Definition: mbgextio.c:4170
int mbgextio_get_ims_fdm_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_FDM_INFO *p)
Read a MBG_IMS_FDM_INFO parameter structure from a device.
Definition: mbgextio.c:13242
uint32_t XMR_HOLDOVER_INTV
XMR holdover interval, or elapsed holdover time, in [s].
Definition: gpsdefs.h:7116
int mbgextio_set_led_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_LED_SETTINGS *p, uint16_t idx)
Write a MBG_LED_SETTINGS parameter structure to a device.
Definition: mbgextio.c:13812
int mbgextio_set_snmp_glb_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SNMP_GLB_SETTINGS *p)
Send the SNMP global settings in MBG_SNMP_GLB_SETTINGS format.
Definition: mbgextio.c:10211
Global configuration info of an NTP device (client/server)
Definition: gpsdefs.h:15246
Limits to be considered when specifying PTP unicast masters.
Definition: gpsdefs.h:14231
int mbgextio_get_net_intf_route_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_ROUTE_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_ROUTE_INFO_IDX from the config with the given index.
Definition: mbgextio.c:12526
int mbgextio_xmt_cmd_us(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t us)
Transmit a message with a single ushort (uint16_t) parameter.
Definition: mbgextio.c:5188
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_fw_mngmnt
Check if a device supports the FW management API.
Definition: mbgextio.c:3936
int mbgextio_get_cfgh(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, CFGH *p)
Read configuration and health data of all satellites from a device.
Definition: mbgextio.c:12909
Satellite information for a particular GNSS type.
Definition: gpsdefs.h:10749
Clock resolution information.
Definition: gpsdefs.h:19853
int mbgextio_get_synth(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SYNTH *p)
Read the frequency synthesizer settings.
Definition: mbgextio.c:6333
int mbgextio_get_net_stat_dns_srvr_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IP_ADDR_IDX *p, uint16_t idx)
Read the current network DNS server in MBG_IP_ADDR_IDX format.
Definition: mbgextio.c:12305
int MBG_LAN_DEV_CHAN
Definition: mbgextio.h:553
int mbgextio_get_snmp_v12_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SNMP_V12_INFO_IDX *p, uint16_t idx)
Read SNMP v1 or v2 info in MBG_SNMP_V12_INFO_IDX format.
Definition: mbgextio.c:10252
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_xbp
Check if a device supports the extended binary protocl (XBP) feature.
Definition: mbgextio.c:4493
An IPv4 or IPv6 network address, plus index.
Definition: gpsdefs.h:11945
int mbgextio_send_database_cmd(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint32_t cmd, const void *payload, uint32_t payload_len)
Send a specific command to database in MBG_DATABASE_CMD format.
Definition: mbgextio.c:11243
int mbgextio_set_ptp_v1_default_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V1_DEFAULT_DATASET *p)
Send PTPv1 default dataset to a device in MBG_PTP_V1_DEFAULT_DATASET format.
Definition: mbgextio.c:9414
int mbgextio_set_net_intf_route_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_NET_INTF_ROUTE_SETTINGS *p, uint16_t idx)
Send the network addr configuration in MBG_NET_INTF_ROUTE_SETTINGS format.
Definition: mbgextio.c:12559
int mbgextio_get_event_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint8_t vtype, MBG_EVENT_STATUS_IDX *p, uint16_t idx)
Read monitoring event status in MBG_EVENT_STATUS_IDX format.
Definition: mbgextio.c:10651
int mbgextio_get_ntp_peer_state_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_PEER_STATE_IDX *p, uint16_t idx)
Read the NTP peer state of current idx NTP_PEER_STATE format.
Definition: mbgextio.c:12016
int mbgextio_set_event_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_EVENT_SETTINGS *p, uint16_t idx)
Write monitoring event settings in MBG_EVENT_SETTINGS format.
Definition: mbgextio.c:10606
A structure used to configure optional settings.
Definition: gpsdefs.h:5323
int mbgextio_get_tzdl(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TZDL *p)
Read the local time conversion parameters in TZDL format.
Definition: mbgextio.c:6191
int mbgextio_get_ptp_v1_default_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V1_DEFAULT_DATASET *p)
Read the PTPv1 default dataset in MBG_PTP_V1_DEFAULT_DATASET format.
Definition: mbgextio.c:9380
int mbgextio_set_ignore_lock(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IGNORE_LOCK *p)
Send the ignore lock configuration.
Definition: mbgextio.c:5904
int16_t MBG_REF_OFFS
A data type used to configure the ref offset.
Definition: gpsdefs.h:5297
int mbgextio_set_ptp_v2_current_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V2_CURRENT_DATASET *p)
Send PTPv2 current dataset to a device in MBG_PTP_V2_CURRENT_DATASET format.
Definition: mbgextio.c:9855
#define FT_HANDLE
Definition: mbgextio.h:444
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_cmd_save_cfg
Check if a device supports the GPS_SAVE_CFG command.
Definition: mbgextio.c:4273
int mbgextio_socket_read_default(MBG_MSG_CTL *pmctl, void *buf, size_t len)
Function, which can be used to read data from a standard LAN socket.
int mbgextio_get_serial_ftdi_port_handle(MBG_MSG_CTL *pmctl)
Get the port handle of a serial FTDI device.
Global settings, features and flags for user captures via network.
Definition: gpsdefs.h:12493
int mbgextio_req_data_idx_unlocked(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, uint16_t idx, void *buf, size_t buf_size)
Read a specific element of an array of data structures.
Definition: mbgextio.c:5329
uint16_t IGNORE_LOCK
Definition: gpsdefs.h:10401
int mbgextio_set_net_intf_addr_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_NET_INTF_ADDR_SETTINGS *p, uint16_t idx)
Send the network addr configuration in MBG_NET_INTF_ADDR_SETTINGS format.
Definition: mbgextio.c:12484
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_pzf
Check if a device supports DCF77 PZF decoding.
Definition: mbgextio.c:3570
unsigned char uint8_t
Definition: words.h:210
int mbgextio_get_ntp_refclk_cfg_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_REFCLK_CFG_INFO_IDX *p, uint16_t idx)
Read the NTP refclock config info with the given index in NTP_REFCLK_CFG_INFO_IDX format...
Definition: mbgextio.c:11904
int mbgextio_get_fdm_freq(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_GPIO_FREQ *p)
Read a MBG_GPIO_FREQ parameter structure from a device.
Definition: mbgextio.c:13216
int _MBG_API MBG_ASYNC_DATA_HANDLER_FNC(MBG_MSG_CTL *pmctl, char c)
Type of a callback function to handle spurious asynchronous data bytes.
Definition: gpsserio.h:1948
IO Port Limits.
Definition: gpsdefs.h:20411
int mbgextio_get_ptp_v2_parent_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V2_PARENT_DATASET *p)
Read the PTPv2 parent dataset in MBG_PTP_V2_PARENT_DATASET format.
Definition: mbgextio.c:9894
int mbgextio_get_all_ptp_uc_master_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_UC_MASTER_INFO_IDX *ptp_uc_master_info_idx, const PTP_UC_MASTER_CFG_LIMITS *ptp_uc_master_cfg_limits)
Read the ptp configuration ALL_PTP_UC_MASTER_INFO_IDX format.
Definition: mbgextio.c:9252
NTP orphan mode info.
Definition: gpsdefs.h:16188
General info on supported XMR sources and instances.
Definition: gpsdefs.h:7054
int mbgextio_set_xmr_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const XMULTI_REF_SETTINGS *p, uint16_t idx)
Set XMULTI_REF_SETTINGS for a specific XMR source.
Definition: mbgextio.c:8978
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_xmulti_ref
Check if a device supports the up-to-date extended multi ref API.
Definition: mbgextio.c:4471
int mbgextio_get_ims_fdm_output_state_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_FDM_OUTPUT_STATE_IDX *p, uint16_t idx)
Read a MBG_IMS_FDM_OUTPUT_STATE_IDX parameter structure from a device.
Definition: mbgextio.c:13338
int mbgextio_time_mon_get_target_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_TIME_MON_TARGET_STATUS_IDX *p, uint16_t idx)
int mbgextio_get_ptp_v2_port_dataset_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V2_PORT_DATASET_IDX *p, uint16_t idx)
Read the PTPv2 port dataset with the appropriate index in MBG_PTP_V2_PORT_DATASET_IDX format...
Definition: mbgextio.c:10041
int mbgextio_set_port_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const PORT_SETTINGS *p, uint16_t idx)
Send configuration settings for a specific serial port.
Definition: mbgextio.c:7578
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_lne_api
Check if a device supports the LNE API.
Definition: mbgextio.c:4339
int mbgextio_get_lne_port_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LNE_PORT_SETTINGS_IDX *p, uint16_t idx)
Read a MBG_LNE_PORT_SETTINGS_IDX parameter structure from a device.
Definition: mbgextio.c:13589
int mbgextio_get_ignore_lock(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IGNORE_LOCK *p)
Read the status of ignore lock.
Definition: mbgextio.c:5873
Network host or domain name, plus index.
Definition: gpsdefs.h:12003
IO Port Info Index.
Definition: gpsdefs.h:20862
General LED info to be read from a device.
Definition: gpsdefs.h:18727
int mbgextio_get_ptp_uc_master_cfg_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_UC_MASTER_CFG_LIMITS *p)
Read the ptp configuration PTP_UC_MASTER_CFG_LIMITS format.
Definition: mbgextio.c:9218
int mbgextio_get_pos(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, POS *p_pos)
Read the current receiver position as POS structure.
Definition: mbgextio.c:6152
int mbgextio_get_ip4_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IP4_SETTINGS *p)
Read the current lan ipv4 state IP4_SETTINGS format.
Definition: mbgextio.c:9120
int mbgextio_get_led_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LED_LIMITS *p)
Read the MBG_LED_LIMITS to check how many LEDs are provided.
Definition: mbgextio.c:13711
Structure for monitoring event info.
Definition: gpsdefs.h:21915
int mbgextio_set_ptp_v1_parent_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V1_PARENT_DATASET *p)
Send PTPv1 parent dataset to a device in MBG_PTP_V1_PARENT_DATASET format.
Definition: mbgextio.c:9560
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_tlv_api
Check if a device supports the TLV API.
Definition: mbgextio.c:3987
int mbgextio_dev_has_irig_rx(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3692
int mbgextio_find_lan_devices(MBG_LAN_DEV_LIST **list, uint16_t timeout_ms)
Sets up a list of all available Meinberg LAN devices in the network.
int mbgextio_get_led_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LED_INFO_IDX *p, uint16_t idx)
Read the current settings and features of a particular LED.
Definition: mbgextio.c:13745
Settings for receivers of user captures via network.
Definition: gpsdefs.h:12560
int mbgextio_set_tzcode(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TZCODE *p)
Set the local time conversion configuration in TZCODE format.
Definition: mbgextio.c:8209
Device power control.
Definition: gpsdefs.h:19192
void mbgextio_register_async_data_callback(MBG_MSG_CTL *pmctl, MBG_ASYNC_DATA_HANDLER_FNC *fnc)
Register an asynchronous data handler callback function.
Definition: mbgextio.c:3080
Configuration settings specifiying how to query a PTP unicast master.
Definition: gpsdefs.h:14274
int mbgextio_get_opt_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_OPT_INFO *p)
Read current optional settings and supported options.
Definition: mbgextio.c:7343
int mbgextio_get_monitoring_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_MONITORING_LIMITS *p)
Read the monitoring limits in MBG_MONITORING_LIMITS format.
Definition: mbgextio.c:10143
int mbgextio_set_ntp_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_GLB_SETTINGS *p)
Send the NTP global configuration.
Definition: mbgextio.c:11337
#define MBG_FRAMING_STRS
An initializer for a table of known framing strings.
Definition: gpsdefs.h:3361
int mbgextio_time_mon_get_target_ext_data_set_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_TIME_MON_TARGET_EXT_DATA_SET_IDX *p, uint16_t idx)
One of several sets of satellite information for a particular GNSS type.
Definition: gpsdefs.h:10773
int mbgextio_get_iono(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IONO *p)
Read the ionospheric correction parameters from a device.
Definition: mbgextio.c:12962
int mbgextio_get_net_dns_srch_dom_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_NAME_IDX *p, uint16_t idx)
Read the network DNS search domain in MBG_NET_NAME_IDX format.
Definition: mbgextio.c:12229
int mbgextio_get_svc_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SERVICE_INFO_IDX *p, uint16_t idx)
Read the service info with the given index in MBG_SERVICE_INFO_IDX format.
Definition: mbgextio.c:14033
the number of known baud rates
Definition: gpsdefs.h:3246
int MBG_TIME_MON_TARGET_SETTINGS
Definition: gpsserio.h:676
Time zone / daylight saving parameters.
Definition: gpsdefs.h:2940
int mbgextio_set_snmp_v12_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SNMP_V12_SETTINGS *p, uint16_t idx)
Write SNMP v1 or v2 settings in MBG_SNMP_V12_SETTINGS format.
Definition: mbgextio.c:10288
int mbgextio_get_port_parm(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PORT_PARM *p)
Read serial port parameters in PORT_PARM format.
Definition: mbgextio.c:6266
int mbgextio_set_pos_lla(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const LLA lla)
Set the device&#39;s position by sending an LLA array.
Definition: mbgextio.c:6038
void mbgextio_set_msg_rcv_timeout(MBG_MSG_CTL *pmctl, ulong new_timeout)
Set message receive timeout value.
Definition: mbgextio.c:3283
int mbgextio_get_ptp_v1_port_dataset_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V1_PORT_DATASET_IDX *p, uint16_t idx)
Read the PTPv1 port dataset with the appropriate index in MBG_PTP_V1_PORT_DATASET_IDX format...
Definition: mbgextio.c:9673
Peer settings for NTP devices.
Definition: gpsdefs.h:16393
int mbgextio_set_ims_fdm_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_IMS_FDM_SETTINGS *p)
Write a MBG_IMS_FDM_SETTINGS parameter structure to a device.
Definition: mbgextio.c:13400
Synthesizer configuration parameters.
Definition: gpsdefs.h:2856
int mbgextio_set_time(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const TTM *p)
Set the device&#39;s time by sending a TTM strucure.
Definition: mbgextio.c:6002
int mbgextio_set_irig_tx_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IRIG_SETTINGS *p)
Send new configuration settings for the device&#39;s IRIG output.
Definition: mbgextio.c:7095
int mbgextio_get_user_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_USER_STATUS_IDX *p, uint16_t idx)
Read the user status with the given index in MBG_USER_STATUS_IDX format.
Definition: mbgextio.c:6848
Generic state of an IMS sensor, with sensor index.
Definition: gpsdefs.h:9863
ulong mbgextio_get_dev_poll_timeout(const MBG_MSG_CTL *pmctl)
Get device poll timeout.
Definition: mbgextio.c:3264
Reference source capabilities and current configuration for a specific priority level.
Definition: gpsdefs.h:6839
int mbgextio_get_lne_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LNE_LIMITS *p)
Read a MBG_IMS_FDM_STATE parameter structure from a device. ::TODO ###.
Definition: mbgextio.c:13537
int mbgextio_set_fdm_tdev(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NANO_TIME_64 *p)
Set time deviation of powerline time in relation to the current reference time.
Definition: mbgextio.c:13474
int mbgextio_get_xbp_node_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XBP_NODE_LIMITS *p)
Read the XBP_NODE_LIMITS to check how many ports are provided.
Definition: mbgextio.c:12767
Network host or domain name.
Definition: gpsdefs.h:11986
A geographic position represented in different formats.
Definition: mbggeo.h:113
A buffer used to read raw IRIG data bits from an IRIG receiver.
Definition: gpsdefs.h:5423
int mbgextio_dev_has_gpio(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3659
int mbgextio_get_sw_rev(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SW_REV *p)
Read the software revision.
Definition: mbgextio.c:5845
PTPv1 default dataset containing global information about the device.
Definition: gpsdefs.h:14581
int mbgextio_set_gpio_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_GPIO_SETTINGS *p, uint16_t idx)
Send configuration settings for a specific GPIO.
Definition: mbgextio.c:7748
int mbgextio_get_ims_sensor_state_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_SENSOR_STATE_IDX *p, uint16_t idx)
Read sensor values from a specified sensor on the device.
Definition: mbgextio.c:8060
int MBG_LAN_DEV_CFG
Definition: mbgextio.h:554
int mbgextio_set_port_parm(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const PORT_PARM *p)
Send serial port parameters in PORT_PARM format.
Definition: mbgextio.c:6300
int mbgextio_set_pwr_ctl(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PWR_CTL *p)
Write a MBG_PWR_CTL parameter structure to a device.
Definition: mbgextio.c:13646
int mbgextio_get_pwr_ctl(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PWR_CTL *p)
Read a MBG_PWR_CTL parameter structure from a device.
Definition: mbgextio.c:13676
int MBG_TIME_MON_TARGET_STATUS_IDX
Definition: gpsserio.h:679
Server settings of an NTP device.
Definition: gpsdefs.h:16413
int SSH_DATA
Definition: gpsserio.h:594
int mbgextio_set_syslog_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SYSLOG_SETTINGS *p, uint16_t idx)
Write syslog server information in MBG_SYSLOG_SETTINGS_IDX format.
Definition: mbgextio.c:10854
int mbgextio_dev_has_tzdl(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3617
PZF correlation status info.
Definition: pcpsdefs.h:1562
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_legacy
Check if a device is a legacy device.
Definition: mbgextio.c:3335
int mbgextio_get_holdover_interval_counter(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMR_HOLDOVER_INTV *p)
Read the XMR holdover interval counter.
Definition: mbgextio.c:8125
int mbgextio_cmd_save_cfg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr)
Send a command to let the device save it&#39;s current configuration as default.
Definition: mbgextio.c:13509
int mbgextio_get_irig_tx_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, IRIG_INFO *p)
Read configuration info and supported features of the device&#39;s IRIG output.
Definition: mbgextio.c:7062
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_up_conv
Check if the device has an L1 frequency up converter.
Definition: mbgextio.c:3756
int mbgextio_dev_has_prog_pulses(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3670
An SV number plus the SV&#39;s almanac data.
Definition: gpsserio.h:1273
int mbgextio_get_fw_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_FW_GLB_INFO *p)
Read the firmware global information in MBG_FW_GLB_INFO format.
Definition: mbgextio.c:10901
Reference source configuration settings.
Definition: gpsdefs.h:6720
A buffer for a message header plus data part.
Definition: gpsserio.h:1710
int mbgextio_open_usb_ldev(libusb_device *ldev, MBG_MSG_CTL **ppmctl)
Open a binary communication channel using direct USB I/O.
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_ufu
Check if a device supports a UFU (Unified Firmware Update) via TLV.
Definition: mbgextio.c:4252
void mbgextio_register_nack_callback(MBG_MSG_CTL *pmctl, MBG_NACK_HANDLER_FNC *fnc)
Register a NACK message handler callback function.
Definition: mbgextio.c:3031
int mbgextio_get_lan_if_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, LAN_IF_INFO *p)
Read the lan interface configuration LAN_IF_INFO format.
Definition: mbgextio.c:9019
uint16_t SVNO
the number of an SV (Space Vehicle, i.e. satellite)
Definition: gpsdefs.h:696
int mbgextio_get_net_stat_intf_route_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_ROUTE_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_ROUTE_INFO_IDX from the status with the given index.
Definition: mbgextio.c:12705
Satellite receiver status information.
Definition: gpsdefs.h:10591
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_file_req
Check if a device supports file request via TLV.
Definition: mbgextio.c:4066
int mbgextio_get_ims_fdm_output_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_FDM_OUTPUT_INFO_IDX *p, uint16_t idx)
Read a MBG_IMS_FDM_OUTPUT_INFO_IDX parameter structure from a device.
Definition: mbgextio.c:13305
int mbgextio_get_user_mngmnt_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_USER_MNGMNT_INFO *p)
Read the user management info in MBG_USER_MNGMNT_INFO format.
Definition: mbgextio.c:6634
int mbgextio_get_ntp_sys_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_SYS_STATE *p)
Read the current system state of ntp device NTP_SYS_STATE format.
Definition: mbgextio.c:11982
int mbgextio_open_serial_force_default(const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing)
Open a binary communication channel forcing default serial parameters.
Software revision information.
Definition: gpsdefs.h:732
int mbgextio_get_syslog_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SYSLOG_INFO_IDX *p, uint16_t idx)
Read syslog server information in MBG_SYSLOG_INFO_IDX format.
Definition: mbgextio.c:10818
int mbgextio_dev_has_bvar_stat(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3714
A structure used to report XBP features and limits.
Definition: gpsdefs.h:17875
int mbgextio_set_user_level_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_USER_SETTINGS *p, uint16_t idx)
Write user level settings in MBG_USER_SETTINGS_IDX format.
Definition: mbgextio.c:6810
int mbgextio_set_ptp_v2_time_properties_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V2_TIME_PROPERTIES_DATASET *p)
Send PTPv2 time properties dataset to a device in MBG_PTP_V2_TIME_PROPERTIES_DATASET format...
Definition: mbgextio.c:10001
Current settings and general capabilities of a specific serial port.
Definition: gpsdefs.h:3677
int mbgextio_set_ntp_peer_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const NTP_PEER_SETTINGS *p, uint16_t idx)
Send configuration settings for a specific NTP peer.
Definition: mbgextio.c:11788
int mbgextio_set_opt_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_OPT_SETTINGS *p)
Send new optional settings flags.
Definition: mbgextio.c:7371
int mbgextio_get_snmp_v12_trap_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SNMP_V12_TRAP_INFO_IDX *p, uint16_t idx)
Read SNMP v1 or v2 trap info in MBG_SNMP_V12_TRAP_INFO_IDX format.
Definition: mbgextio.c:10330
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_ext_sys_info
Check if a device has MBG_XFEATURE_EXT_SYS_INFO.
Definition: mbgextio.c:4383
int mbgextio_get_ptp_v1_current_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V1_CURRENT_DATASET *p)
Read the PTPv1 current dataset in MBG_PTP_V1_CURRENT_DATASET format.
Definition: mbgextio.c:9453
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_ptp
Check if a device supports the PTP API.
Definition: mbgextio.c:3886
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_led_api
Check if a device supports the LED API.
Definition: mbgextio.c:4317
int mbgextio_time_mon_get_inst_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_TIME_MON_INST_INFO *p)
int mbgextio_dev_has_time_ttm(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3362
int libusb_device
Definition: mbgextio.h:451
int mbgextio_get_database_glb_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_DATABASE_GLB_INFO *p)
Read global database information in MBG_DATABASE_GLB_INFO format.
Definition: mbgextio.c:11121
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_is_gps
Check if a device can receive the GPS satellite system.
Definition: mbgextio.c:3477
int mbgextio_get_utc_parm(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, UTC *p)
Read a UTC parameter structure from a device.
Definition: mbgextio.c:12992
double LLA[N_LLA]
A geographic position based on latitude, longitude, and altitude.
Definition: gpsdefs.h:2764
int mbgextio_get_ptp_v2_time_properties_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V2_TIME_PROPERTIES_DATASET *p)
Read the PTPv2 time properties dataset in MBG_PTP_V2_TIME_PROPERTIES_DATASET format.
Definition: mbgextio.c:9967
int mbgextio_setup_receiver_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, RECEIVER_INFO *p)
Setup a receiver info structure.
Definition: mbgextio.c:5716
int mbgextio_get_gnss_sv_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GNSS_SV_STATUS_IDX *p, uint16_t idx)
::TODO
Definition: mbgextio.c:8564
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_scu_stat
Check if the device supports the SCU_STAT structures.
Definition: mbgextio.c:3780
int mbgextio_set_ptp_v2_port_dataset_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V2_PORT_DATASET *p, uint16_t idx)
Send PTPv2 port dataset with the appropriate index to a device in MBG_PTP_V2_PORT_DATASET format...
Definition: mbgextio.c:10076
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_lan_ip4
Check if a device supports the old LAN_IP4 API.
Definition: mbgextio.c:3830
Configuration settings of an IRIG input or output.
Definition: gpsdefs.h:4999
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_supp_tlv_fw_rollback
Check if a device supports a factory reset via TLV.
Definition: mbgextio.c:4110
int mbgextio_get_str_type_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, STR_TYPE_INFO_IDX *p, uint16_t idx)
Read information on a specific supported string format.
Definition: mbgextio.c:7406
int mbgextio_set_snmp_v12_trap_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_SNMP_V12_TRAP_SETTINGS *p, uint16_t idx)
Write SNMP v1 or v2 trap settings in MBG_SNMP_V12_TRAP_SETTINGS format.
Definition: mbgextio.c:10366
int mbgextio_get_next_evt_log_entry(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_EVT_LOG_ENTRY *p)
Return the next entry from the on-board event log.
Definition: mbgextio.c:7993
int mbgextio_get_ant_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, ANT_INFO *p)
Read the GPS antenna info structure.
Definition: mbgextio.c:6402
int mbgextio_open_serial_raw(const char *dev, MBG_MSG_CTL **ppmctl, uint32_t baud_rate, const char *framing)
Network interface route specific settings.
Definition: gpsdefs.h:12264
#define _MBG_API
Definition: mbg_tgt.h:1020
General info to be read from an LNE device.
Definition: gpsdefs.h:18974
int mbgextio_get_xmr_status_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMULTI_REF_STATUS_IDX *p, uint16_t idx)
Read XMULTI_REF_STATUS_IDX for a specific XMR source.
Definition: mbgextio.c:8818
int mbgextio_get_ntp_symm_key_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_SYMM_KEY_INFO_IDX *p, uint16_t idx)
Read the NTP symmetric key info with the given index in NTP_SYMM_KEY_INFO_IDX format.
Definition: mbgextio.c:11411
int mbgextio_get_xmulti_ref_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMULTI_REF_INFO_IDX *p)
Read the multi ref info from a device.
Definition: mbgextio.c:8149
Query MBG_NET_INTF_ADDR_INFO by its index.
Definition: gpsdefs.h:12244
int mbgextio_get_debug_status(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_DEBUG_STATUS *p)
Read current debug status.
Definition: mbgextio.c:7315
int mbgextio_get_ims_fdm_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_IMS_FDM_LIMITS *p)
Read a MBG_IMS_FDM_LIMITS parameter structure from a device.
Definition: mbgextio.c:13273
int mbgextio_set_hq_tx_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const HAVEQUICK_SETTINGS *p)
Send new configuration settings for the device&#39;s HAVEQUICK output.
Definition: mbgextio.c:8246
int mbgextio_get_tainted_cfg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_TAINTED_CFG *p)
Read MBG_TAINTED_CFG structure from a device.
Definition: mbgextio.c:13843
int mbgextio_get_fw_ufu_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_FW_UFU_INFO_IDX *p, uint8_t fw_idx, uint8_t ufu_idx)
Read the firmware ufu info of the given firmware with the also given index in MBG_FW_UFU_INFO_IDX for...
Definition: mbgextio.c:11042
Current settings and general capabilities of an LED, plus index.
Definition: gpsdefs.h:18936
int mbgextio_set_ptp_v1_current_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_PTP_V1_CURRENT_DATASET *p)
Send PTPv1 current dataset to a device in MBG_PTP_V1_CURRENT_DATASET format.
Definition: mbgextio.c:9487
RECEIVER_INFO * mbgextio_get_receiver_info_addr(MBG_MSG_CTL *pmctl)
Retrieve address of the RECEIVER_INFO read from the device.
Definition: mbgextio.c:3128
Configuration settings for a single LNE port, plus index.
Definition: gpsdefs.h:19061
Configuration settings for a single LED, plus index.
Definition: gpsdefs.h:18883
int mbgextio_get_net_intf_link_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_LINK_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_LINK_INFO_IDX from the config with the given index.
Definition: mbgextio.c:12376
#define _ext
Definition: mbgextio.h:412
const char * mbgextio_get_cmd_name(GPS_CMD cmd_code)
Definition: mbgextio.c:768
int mbgextio_dev_has_ims(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3637
int mbgextio_set_ptp_uc_master_settings_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const PTP_UC_MASTER_SETTINGS *p, uint16_t idx)
Send PTP unicast master configuration settings for a PTP unicast slave mode device.
Definition: mbgextio.c:9340
An XBP address specifier.
Definition: gpsdefs.h:17861
int mbgextio_socket_write_default(MBG_MSG_CTL *pmctl, const void *buf, size_t len)
Function, which can be used to write data to a standard LAN socket.
int mbgextio_get_event_value_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint16_t eidx, uint8_t vtype, MBG_EVENT_VALUE_IDX *p, uint16_t vidx)
Read monitoring event status in MBG_EVENT_STATUS_IDX format.
Definition: mbgextio.c:10691
Specific output settings and limits, plus index.
Definition: gpsdefs.h:10066
int mbgextio_rcv_msg(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size)
Generic reception of a binary message.
Definition: mbgextio.c:4981
int mbgextio_get_gps_stat_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, STAT_INFO *p)
Read GPS status info.
Definition: mbgextio.c:6950
int mbgextio_get_xmr_ext_source_stats_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMR_STATS_IDX *p, uint16_t idx)
Read XMR_STATS_IDX for a specific XMR source.
Definition: mbgextio.c:8892
FDM device settings.
Definition: gpsdefs.h:10262
int mbgextio_get_num_evt_log_entries(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NUM_EVT_LOG_ENTRIES *p)
Read the current number of entries in the on-board event log.
Definition: mbgextio.c:7915
int mbgextio_set_ip4_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IP4_SETTINGS *p)
Save the current ipv4 settings IP4_SETTINGS format.
Definition: mbgextio.c:9083
int mbgextio_set_irig_rx_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const IRIG_SETTINGS *p)
Send new configuration settings for the device&#39;s IRIG input.
Definition: mbgextio.c:7166
Antenna status and error at reconnect information.
Definition: gpsdefs.h:3100
int mbgextio_get_database_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_DATABASE_INFO_IDX *p, uint8_t idx)
Read a database info with given index in MBG_DATABASE_INFO_IDX format.
Definition: mbgextio.c:11159
int mbgextio_dev_has_irig_tx(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3681
int mbgextio_dev_has_clk_res_info(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3426
int mbgextio_delete_fw(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint16_t idx)
Delete the firmware with the given index.
Definition: mbgextio.c:11005
int mbgextio_get_enable_flags(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, ENABLE_FLAGS *p)
Read the enable flags controlling when output signals are enabled.
Definition: mbgextio.c:6881
int mbgextio_dev_has_enable_flags(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3597
int mbgextio_get_svc_mgmt_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_SERVICE_MGMT_INFO *p)
Read service management info in MBG_SERVICE_MGMT_INFO format.
Definition: mbgextio.c:13997
int mbgextio_get_time(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TTM *p)
Read the current time as TTM strucure.
Definition: mbgextio.c:5970
int MBG_LAN_DEV_LIST
Definition: mbgextio.h:555
the number of known framings
Definition: gpsdefs.h:3346
int mbgextio_req_data(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, GPS_CMD cmd, void *buf, size_t buf_size)
Transmit a message without a single ushort (16 bit) parameter.
Definition: mbgextio.c:5280
int mbgextio_get_tzcode(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, TZCODE *p)
Read the local time conversion configuration in TZCODE format.
Definition: mbgextio.c:8177
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_gnss_mode
Check if a device supports GNSS mode feature All GNSS receivers support this feature by default...
Definition: mbgextio.c:4538
Server settings info of an NTP device.
Definition: gpsdefs.h:16437
int mbgextio_get_xmr_holdover_status(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, XMR_HOLDOVER_STATUS *p)
Read XMR_HOLDOVER_STATUS.
Definition: mbgextio.c:8733
int mbgextio_set_time_scale_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_TIME_SCALE_SETTINGS *p)
Send new time scale configuration settings.
Definition: mbgextio.c:7846
General NTP symmetric key limits to be read from a device.
Definition: gpsdefs.h:15859
MBGEXTIO_CHK_SUPP_FNC mbgextio_dev_has_reboot
Check if a device has MBG_XFEATURE_REBOOT.
Definition: mbgextio.c:4427
Current settings and general capabilities of an LNE port, plus index.
Definition: gpsdefs.h:19116
int mbgextio_get_ptp_v2_default_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V2_DEFAULT_DATASET *p)
Read the PTPv2 default dataset in MBG_PTP_V2_DEFAULT_DATASET format.
Definition: mbgextio.c:9748
int mbgextio_get_scu_stat_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, SCU_STAT_INFO *p)
Read SCU_STAT_INFO from the device.
Definition: mbgextio.c:13056
int mbgextio_set_net_dns_srvr_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_IP_ADDR *p, uint16_t idx)
Send the network DNS server address in MBG_IP_ADDR format.
Definition: mbgextio.c:12188
unsigned long ulong
Definition: words.h:292
int MBG_TIME_MON_INST_INFO
Definition: gpsserio.h:674
int mbgextio_get_ntp_clnt_mode_info(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_CLNT_MODE_INFO *p)
Read the ntp global information NTP_CLNT_MODE_INFO format.
Definition: mbgextio.c:11676
A structure used to identify a device type and supported features.
Definition: gpsdefs.h:873
int MBG_USB_DEV_INFO
Definition: mbgextio.h:450
Global configuration settings of an NTP device (client/server)
Definition: gpsdefs.h:15220
PTPv2 current dataset.
Definition: gpsdefs.h:14901
uint16_t TZCODE
Type of variable to hold a TZ code.
Definition: gpsserio.h:1302
int mbgextio_get_net_stat_intf_link_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_LINK_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_LINK_INFO_IDX from the status with the given index.
Definition: mbgextio.c:12633
Output state of FDM device plus index.
Definition: gpsdefs.h:9987
Global current network settings and supported features.
Definition: gpsdefs.h:11869
int mbgextio_set_gnss_mode_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const MBG_GNSS_MODE_SETTINGS *p)
Write GNSS mode settings.
Definition: mbgextio.c:8406
int mbgextio_get_ptp_v1_parent_dataset(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_PTP_V1_PARENT_DATASET *p)
Read the PTPv1 parent dataset in MBG_PTP_V1_PARENT_DATASET format.
Definition: mbgextio.c:9526
Network interface address specific settings, flags and supported features.
Definition: gpsdefs.h:12164
General NTP misc limits to be read from a device.
Definition: gpsdefs.h:16101
int mbgextio_get_ntp_symm_key_limits(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_SYMM_KEY_LIMITS *p)
Read the NTP symmetric key limits in NTP_SYMM_KEY_LIMITS format.
Definition: mbgextio.c:11376
uint32_t MBG_DEBUG_STATUS
A data type used to read the board&#39;s debug status.
Definition: gpsdefs.h:5204
Simple LAN interface information.
Definition: gpsdefs.h:11274
ulong mbgextio_get_msg_rcv_timeout(const MBG_MSG_CTL *pmctl)
Get message receive timeout value.
Definition: mbgextio.c:3303
int mbgextio_get_ntp_refclk_state_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, NTP_REFCLK_STATE_IDX *p, uint16_t idx)
Read the NTP refclock state of current idx in NTP_REFCLK_STATE format.
Definition: mbgextio.c:12050
int mbgextio_get_net_intf_addr_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_NET_INTF_ADDR_INFO_IDX *p, uint16_t idx)
Read MBG_NET_INTF_ADDR_INFO_IDX from the config with the given index.
Definition: mbgextio.c:12451
int mbgextio_get_ptp_state(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, PTP_STATE *p)
Read the current state of PTP device PTP_STATE format.
Definition: mbgextio.c:9152
A structure controlling when output signals are enabled.
Definition: gpsdefs.h:3142
Current settings and general capabilities of a specific programmable pulse output.
Definition: gpsdefs.h:6351
int mbgextio_set_ptp_cfg_settings(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const PTP_CFG_SETTINGS *p)
Send configuration settings for PTP.
Definition: mbgextio.c:9298
int mbgextio_get_lne_port_info_idx(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, MBG_LNE_PORT_INFO_IDX *p, uint16_t idx)
Read a MBG_LNE_PORT_INFO_IDX parameter structure from a device.
Definition: mbgextio.c:13563
Configuration settings for a single LED.
Definition: gpsdefs.h:18859
Output settings of FDM device.
Definition: gpsdefs.h:10008
void mbgextio_register_async_msg_callback(MBG_MSG_CTL *pmctl, MBG_ASYNC_MSG_HANDLER_FNC *fnc)
Register an asynchronous message handler callback function.
Definition: mbgextio.c:3055
int mbgextio_set_active_fw(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, uint16_t idx)
Activate the firmware with the given index.
Definition: mbgextio.c:10973
long mbgextio_force_conn_serial_ftdi(int device_num)
Try to force a serial connection to a device via the FTDI API.
int mbgextio_set_synth(MBG_MSG_CTL *pmctl, const XBP_ADDR *p_addr, const SYNTH *p)
Write the frequency synthesizer settings.
Definition: mbgextio.c:6366
uint32_t u32
Definition: lan_util.c:100
int mbgextio_dev_has_serouts(const MBG_MSG_CTL *pmctl)
Definition: mbgextio.c:3703