Skip to content

Commit 2f73368

Browse files
committed
Add new message
1 parent aa82848 commit 2f73368

File tree

50 files changed

+4769
-211
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+4769
-211
lines changed

c/include/libsbp/cpp/message_traits.h

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6438,6 +6438,44 @@ struct MessageTraits<sbp_msg_ssr_code_phase_biases_bounds_t> {
64386438
}
64396439
};
64406440

6441+
template <>
6442+
struct MessageTraits<sbp_msg_ssr_flag_high_level_dep_a_t> {
6443+
static constexpr sbp_msg_type_t id = SbpMsgSsrFlagHighLevelDepA;
6444+
static constexpr const char *name = "MSG_SSR_FLAG_HIGH_LEVEL_DEP_A";
6445+
static const sbp_msg_ssr_flag_high_level_dep_a_t &get(const sbp_msg_t &msg) {
6446+
return msg.ssr_flag_high_level_dep_a;
6447+
}
6448+
static sbp_msg_ssr_flag_high_level_dep_a_t &get(sbp_msg_t &msg) {
6449+
return msg.ssr_flag_high_level_dep_a;
6450+
}
6451+
static void to_sbp_msg(const sbp_msg_ssr_flag_high_level_dep_a_t &msg,
6452+
sbp_msg_t *sbp_msg) {
6453+
sbp_msg->ssr_flag_high_level_dep_a = msg;
6454+
}
6455+
static sbp_msg_t to_sbp_msg(const sbp_msg_ssr_flag_high_level_dep_a_t &msg) {
6456+
sbp_msg_t sbp_msg;
6457+
sbp_msg.ssr_flag_high_level_dep_a = msg;
6458+
return sbp_msg;
6459+
}
6460+
static s8 send(sbp_state_t *state, u16 sender_id,
6461+
const sbp_msg_ssr_flag_high_level_dep_a_t &msg,
6462+
sbp_write_fn_t write) {
6463+
return sbp_msg_ssr_flag_high_level_dep_a_send(state, sender_id, &msg,
6464+
write);
6465+
}
6466+
static s8 encode(uint8_t *buf, uint8_t len, uint8_t *n_written,
6467+
const sbp_msg_ssr_flag_high_level_dep_a_t &msg) {
6468+
return sbp_msg_ssr_flag_high_level_dep_a_encode(buf, len, n_written, &msg);
6469+
}
6470+
static s8 decode(const uint8_t *buf, uint8_t len, uint8_t *n_read,
6471+
sbp_msg_ssr_flag_high_level_dep_a_t *msg) {
6472+
return sbp_msg_ssr_flag_high_level_dep_a_decode(buf, len, n_read, msg);
6473+
}
6474+
static size_t encoded_len(const sbp_msg_ssr_flag_high_level_dep_a_t &msg) {
6475+
return sbp_msg_ssr_flag_high_level_dep_a_encoded_len(&msg);
6476+
}
6477+
};
6478+
64416479
template <>
64426480
struct MessageTraits<sbp_msg_ssr_flag_high_level_t> {
64436481
static constexpr sbp_msg_type_t id = SbpMsgSsrFlagHighLevel;

c/include/libsbp/integrity.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
#include <libsbp/integrity/IntegritySSRHeader.h>
2121
#include <libsbp/integrity/MSG_ACKNOWLEDGE.h>
2222
#include <libsbp/integrity/MSG_SSR_FLAG_HIGH_LEVEL.h>
23+
#include <libsbp/integrity/MSG_SSR_FLAG_HIGH_LEVEL_DEP_A.h>
2324
#include <libsbp/integrity/MSG_SSR_FLAG_IONO_GRID_POINTS.h>
2425
#include <libsbp/integrity/MSG_SSR_FLAG_IONO_GRID_POINT_SAT_LOS.h>
2526
#include <libsbp/integrity/MSG_SSR_FLAG_IONO_TILE_SAT_LOS.h>

c/include/libsbp/integrity/MSG_SSR_FLAG_HIGH_LEVEL.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,14 @@ typedef struct {
7272
sbp_gps_time_sec_t obs_time;
7373

7474
/**
75-
* GNSS reference time of the correction associated to the flag.
75+
* GNSS reference time of the ionospheric correction associated to the flag.
7676
*/
77-
sbp_gps_time_sec_t corr_time;
77+
sbp_gps_time_sec_t iono_corr_time;
78+
79+
/**
80+
* GNSS reference time of the satellite correction associated to the flag.
81+
*/
82+
sbp_gps_time_sec_t sat_corr_time;
7883

7984
/**
8085
* SSR Solution ID.
Lines changed: 254 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,254 @@
1+
/*
2+
* Copyright (C) 2015-2021 Swift Navigation Inc.
3+
* Contact: https://support.swiftnav.com
4+
*
5+
* This source is subject to the license found in the file 'LICENSE' which must
6+
* be distributed together with this source. All other rights reserved.
7+
*
8+
* THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
9+
* EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
10+
* WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
11+
*/
12+
13+
/*****************************************************************************
14+
* Automatically generated from yaml/swiftnav/sbp/integrity.yaml
15+
* with generate.py. Please do not hand edit!
16+
*****************************************************************************/
17+
18+
#ifndef LIBSBP_INTEGRITY_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A_H
19+
#define LIBSBP_INTEGRITY_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A_H
20+
21+
#include <math.h>
22+
#include <stdarg.h>
23+
#include <stdbool.h>
24+
#include <stddef.h>
25+
#include <stdint.h>
26+
#include <string.h>
27+
28+
#include <libsbp/common.h>
29+
#include <libsbp/gnss/GPSTimeSec.h>
30+
#include <libsbp/integrity_macros.h>
31+
#include <libsbp/string/sbp_string.h>
32+
33+
#ifdef __cplusplus
34+
extern "C" {
35+
#endif
36+
37+
/******************************************************************************
38+
*
39+
* SBP_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A
40+
*
41+
*****************************************************************************/
42+
/** Deprecated
43+
*
44+
* Deprecated.
45+
*/
46+
typedef struct {
47+
/**
48+
* GNSS reference time of the observation used to generate the flag.
49+
*/
50+
sbp_gps_time_sec_t obs_time;
51+
52+
/**
53+
* GNSS reference time of the correction associated to the flag.
54+
*/
55+
sbp_gps_time_sec_t corr_time;
56+
57+
/**
58+
* SSR Solution ID.
59+
*/
60+
u8 ssr_sol_id;
61+
62+
/**
63+
* Unique identifier of the set this tile belongs to.
64+
*/
65+
u16 tile_set_id;
66+
67+
/**
68+
* Unique identifier of this tile in the tile set.
69+
*/
70+
u16 tile_id;
71+
72+
/**
73+
* Chain and type of flag.
74+
*/
75+
u8 chain_id;
76+
77+
/**
78+
* Use GPS satellites.
79+
*/
80+
u8 use_gps_sat;
81+
82+
/**
83+
* Use GAL satellites.
84+
*/
85+
u8 use_gal_sat;
86+
87+
/**
88+
* Use BDS satellites.
89+
*/
90+
u8 use_bds_sat;
91+
92+
/**
93+
* Use QZSS satellites.
94+
*/
95+
u8 use_qzss_sat;
96+
97+
/**
98+
* Reserved
99+
*/
100+
u8 reserved[SBP_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A_RESERVED_MAX];
101+
102+
/**
103+
* Use tropo grid points.
104+
*/
105+
u8 use_tropo_grid_points;
106+
107+
/**
108+
* Use iono grid points.
109+
*/
110+
u8 use_iono_grid_points;
111+
112+
/**
113+
* Use iono tile satellite LoS.
114+
*/
115+
u8 use_iono_tile_sat_los;
116+
117+
/**
118+
* Use iono grid point satellite LoS.
119+
*/
120+
u8 use_iono_grid_point_sat_los;
121+
} sbp_msg_ssr_flag_high_level_dep_a_t;
122+
123+
/**
124+
* Get encoded size of an instance of sbp_msg_ssr_flag_high_level_dep_a_t
125+
*
126+
* @param msg sbp_msg_ssr_flag_high_level_dep_a_t instance
127+
* @return Length of on-wire representation
128+
*/
129+
static inline size_t sbp_msg_ssr_flag_high_level_dep_a_encoded_len(
130+
const sbp_msg_ssr_flag_high_level_dep_a_t *msg) {
131+
(void)msg;
132+
return SBP_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A_ENCODED_LEN;
133+
}
134+
135+
/**
136+
* Encode an instance of sbp_msg_ssr_flag_high_level_dep_a_t to wire
137+
* representation
138+
*
139+
* This function encodes the given instance in to the user provided buffer. The
140+
* buffer provided to this function must be large enough to store the encoded
141+
* message otherwise it will return SBP_ENCODE_ERROR without writing anything to
142+
* the buffer.
143+
*
144+
* Specify the length of the destination buffer in the \p len parameter. If
145+
* non-null the number of bytes written to the buffer will be returned in \p
146+
* n_written.
147+
*
148+
* @param buf Destination buffer
149+
* @param len Length of \p buf
150+
* @param n_written If not null, on success will be set to the number of bytes
151+
* written to \p buf
152+
* @param msg Instance of sbp_msg_ssr_flag_high_level_dep_a_t to encode
153+
* @return SBP_OK on success, or other libsbp error code
154+
*/
155+
SBP_EXPORT s8 sbp_msg_ssr_flag_high_level_dep_a_encode(
156+
uint8_t *buf, uint8_t len, uint8_t *n_written,
157+
const sbp_msg_ssr_flag_high_level_dep_a_t *msg);
158+
159+
/**
160+
* Decode an instance of sbp_msg_ssr_flag_high_level_dep_a_t from wire
161+
* representation
162+
*
163+
* This function decodes the wire representation of a
164+
* sbp_msg_ssr_flag_high_level_dep_a_t message to the given instance. The caller
165+
* must specify the length of the buffer in the \p len parameter. If non-null
166+
* the number of bytes read from the buffer will be returned in \p n_read.
167+
*
168+
* @param buf Wire representation of the sbp_msg_ssr_flag_high_level_dep_a_t
169+
* instance
170+
* @param len Length of \p buf
171+
* @param n_read If not null, on success will be set to the number of bytes read
172+
* from \p buf
173+
* @param msg Destination
174+
* @return SBP_OK on success, or other libsbp error code
175+
*/
176+
SBP_EXPORT s8 sbp_msg_ssr_flag_high_level_dep_a_decode(
177+
const uint8_t *buf, uint8_t len, uint8_t *n_read,
178+
sbp_msg_ssr_flag_high_level_dep_a_t *msg);
179+
/**
180+
* Send an instance of sbp_msg_ssr_flag_high_level_dep_a_t with the given write
181+
* function
182+
*
183+
* An equivalent of #sbp_message_send which operates specifically on
184+
* sbp_msg_ssr_flag_high_level_dep_a_t
185+
*
186+
* The given message will be encoded to wire representation and passed in to the
187+
* given write function callback. The write callback will be called several
188+
* times for each invocation of this function.
189+
*
190+
* @param s SBP state
191+
* @param sender_id SBP sender id
192+
* @param msg Message to send
193+
* @param write Write function
194+
* @return SBP_OK on success, or other libsbp error code
195+
*/
196+
SBP_EXPORT s8 sbp_msg_ssr_flag_high_level_dep_a_send(
197+
sbp_state_t *s, u16 sender_id,
198+
const sbp_msg_ssr_flag_high_level_dep_a_t *msg, sbp_write_fn_t write);
199+
200+
/**
201+
* Compare two instances of sbp_msg_ssr_flag_high_level_dep_a_t
202+
*
203+
* The two instances will be compared and a value returned consistent with the
204+
* return codes of comparison functions from the C standard library
205+
*
206+
* 0 will be returned if \p a and \p b are considered equal
207+
* A value less than 0 will be returned if \p a is considered to be less than \p
208+
* b A value greater than 0 will be returned if \p b is considered to be greater
209+
* than \p b
210+
*
211+
* @param a sbp_msg_ssr_flag_high_level_dep_a_t instance
212+
* @param b sbp_msg_ssr_flag_high_level_dep_a_t instance
213+
* @return 0, <0, >0
214+
*/
215+
SBP_EXPORT int sbp_msg_ssr_flag_high_level_dep_a_cmp(
216+
const sbp_msg_ssr_flag_high_level_dep_a_t *a,
217+
const sbp_msg_ssr_flag_high_level_dep_a_t *b);
218+
219+
#ifdef __cplusplus
220+
}
221+
222+
static inline bool operator==(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
223+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
224+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) == 0;
225+
}
226+
227+
static inline bool operator!=(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
228+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
229+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) != 0;
230+
}
231+
232+
static inline bool operator<(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
233+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
234+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) < 0;
235+
}
236+
237+
static inline bool operator<=(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
238+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
239+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) <= 0;
240+
}
241+
242+
static inline bool operator>(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
243+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
244+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) > 0;
245+
}
246+
247+
static inline bool operator>=(const sbp_msg_ssr_flag_high_level_dep_a_t &lhs,
248+
const sbp_msg_ssr_flag_high_level_dep_a_t &rhs) {
249+
return sbp_msg_ssr_flag_high_level_dep_a_cmp(&lhs, &rhs) >= 0;
250+
}
251+
252+
#endif // ifdef __cplusplus
253+
254+
#endif /* LIBSBP_INTEGRITY_MSG_SSR_FLAG_HIGH_LEVEL_DEP_A_H */

0 commit comments

Comments
 (0)