@@ -60,6 +60,12 @@ typedef struct _wippersnapper_gps_GPGGAResponse {
60
60
char geoid_height [10 ]; /* * Diff between geoid height and WGS84 height * */
61
61
} wippersnapper_gps_GPGGAResponse ;
62
62
63
+ /* * GPSEvent represents a collection of GPS event responses, including RMC and GGA data. * */
64
+ typedef struct _wippersnapper_gps_GPSEvent {
65
+ pb_callback_t rmc_responses ; /* * List of RMC responses * */
66
+ pb_callback_t gga_responses ; /* * List of GGA responses * */
67
+ } wippersnapper_gps_GPSEvent ;
68
+
63
69
64
70
#ifdef __cplusplus
65
71
extern "C" {
@@ -70,10 +76,12 @@ extern "C" {
70
76
#define wippersnapper_gps_GPSDateTime_init_default {0, 0, 0, 0, 0, 0, 0}
71
77
#define wippersnapper_gps_GPSRMCResponse_init_default {false, wippersnapper_gps_GPSDateTime_init_default, "", "", "", "", "", "", ""}
72
78
#define wippersnapper_gps_GPGGAResponse_init_default {false, wippersnapper_gps_GPSDateTime_init_default, "", "", "", "", 0, 0, "", "", ""}
79
+ #define wippersnapper_gps_GPSEvent_init_default {{{NULL}, NULL}, {{NULL}, NULL}}
73
80
#define wippersnapper_gps_GPSConfig_init_zero {0, {"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""}, 0}
74
81
#define wippersnapper_gps_GPSDateTime_init_zero {0, 0, 0, 0, 0, 0, 0}
75
82
#define wippersnapper_gps_GPSRMCResponse_init_zero {false, wippersnapper_gps_GPSDateTime_init_zero, "", "", "", "", "", "", ""}
76
83
#define wippersnapper_gps_GPGGAResponse_init_zero {false, wippersnapper_gps_GPSDateTime_init_zero, "", "", "", "", 0, 0, "", "", ""}
84
+ #define wippersnapper_gps_GPSEvent_init_zero {{{NULL}, NULL}, {{NULL}, NULL}}
77
85
78
86
/* Field tags (for use in manual encoding/decoding) */
79
87
#define wippersnapper_gps_GPSConfig_commands_tag 1
@@ -103,6 +111,8 @@ extern "C" {
103
111
#define wippersnapper_gps_GPGGAResponse_hdop_tag 10
104
112
#define wippersnapper_gps_GPGGAResponse_altitude_tag 11
105
113
#define wippersnapper_gps_GPGGAResponse_geoid_height_tag 12
114
+ #define wippersnapper_gps_GPSEvent_rmc_responses_tag 1
115
+ #define wippersnapper_gps_GPSEvent_gga_responses_tag 2
106
116
107
117
/* Struct field encoding specification for nanopb */
108
118
#define wippersnapper_gps_GPSConfig_FIELDLIST (X , a ) \
@@ -150,18 +160,29 @@ X(a, STATIC, SINGULAR, STRING, geoid_height, 12)
150
160
#define wippersnapper_gps_GPGGAResponse_DEFAULT NULL
151
161
#define wippersnapper_gps_GPGGAResponse_datetime_MSGTYPE wippersnapper_gps_GPSDateTime
152
162
163
+ #define wippersnapper_gps_GPSEvent_FIELDLIST (X , a ) \
164
+ X(a, CALLBACK, REPEATED, MESSAGE, rmc_responses, 1) \
165
+ X(a, CALLBACK, REPEATED, MESSAGE, gga_responses, 2)
166
+ #define wippersnapper_gps_GPSEvent_CALLBACK pb_default_field_callback
167
+ #define wippersnapper_gps_GPSEvent_DEFAULT NULL
168
+ #define wippersnapper_gps_GPSEvent_rmc_responses_MSGTYPE wippersnapper_gps_GPSRMCResponse
169
+ #define wippersnapper_gps_GPSEvent_gga_responses_MSGTYPE wippersnapper_gps_GPGGAResponse
170
+
153
171
extern const pb_msgdesc_t wippersnapper_gps_GPSConfig_msg ;
154
172
extern const pb_msgdesc_t wippersnapper_gps_GPSDateTime_msg ;
155
173
extern const pb_msgdesc_t wippersnapper_gps_GPSRMCResponse_msg ;
156
174
extern const pb_msgdesc_t wippersnapper_gps_GPGGAResponse_msg ;
175
+ extern const pb_msgdesc_t wippersnapper_gps_GPSEvent_msg ;
157
176
158
177
/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
159
178
#define wippersnapper_gps_GPSConfig_fields &wippersnapper_gps_GPSConfig_msg
160
179
#define wippersnapper_gps_GPSDateTime_fields &wippersnapper_gps_GPSDateTime_msg
161
180
#define wippersnapper_gps_GPSRMCResponse_fields &wippersnapper_gps_GPSRMCResponse_msg
162
181
#define wippersnapper_gps_GPGGAResponse_fields &wippersnapper_gps_GPGGAResponse_msg
182
+ #define wippersnapper_gps_GPSEvent_fields &wippersnapper_gps_GPSEvent_msg
163
183
164
184
/* Maximum encoded size of messages (where known) */
185
+ /* wippersnapper_gps_GPSEvent_size depends on runtime parameters */
165
186
#define WIPPERSNAPPER_GPS_GPS_PB_H_MAX_SIZE wippersnapper_gps_GPSConfig_size
166
187
#define wippersnapper_gps_GPGGAResponse_size 168
167
188
#define wippersnapper_gps_GPSConfig_size 1467
0 commit comments