5b36bd4a362ae9f476c32921eb9da2aadb5179e0
[apps/low-level-can-service.git] / gen / cpp / openxc.pb.h
1 /* Automatically generated nanopb header */
2 /* Generated by nanopb-0.3.1 at Mon Oct  6 23:25:12 2014. */
3
4 #ifndef PB_OPENXC_PB_H_INCLUDED
5 #define PB_OPENXC_PB_H_INCLUDED
6 #include <pb.h>
7
8 #if PB_PROTO_HEADER_VERSION != 30
9 #error Regenerate this file with the current version of nanopb generator.
10 #endif
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 /* Enum definitions */
17 typedef enum _openxc_VehicleMessage_Type {
18     openxc_VehicleMessage_Type_CAN = 1,
19     openxc_VehicleMessage_Type_SIMPLE = 2,
20     openxc_VehicleMessage_Type_DIAGNOSTIC = 3,
21     openxc_VehicleMessage_Type_CONTROL_COMMAND = 4,
22     openxc_VehicleMessage_Type_COMMAND_RESPONSE = 5
23 } openxc_VehicleMessage_Type;
24
25 typedef enum _openxc_CanMessage_FrameFormat {
26     openxc_CanMessage_FrameFormat_STANDARD = 1,
27     openxc_CanMessage_FrameFormat_EXTENDED = 2
28 } openxc_CanMessage_FrameFormat;
29
30 typedef enum _openxc_ControlCommand_Type {
31     openxc_ControlCommand_Type_VERSION = 1,
32     openxc_ControlCommand_Type_DEVICE_ID = 2,
33     openxc_ControlCommand_Type_DIAGNOSTIC = 3,
34     openxc_ControlCommand_Type_PASSTHROUGH = 4,
35     openxc_ControlCommand_Type_ACCEPTANCE_FILTER_BYPASS = 5,
36     openxc_ControlCommand_Type_PAYLOAD_FORMAT = 6,
37     openxc_ControlCommand_Type_PREDEFINED_OBD2_REQUESTS = 7
38 } openxc_ControlCommand_Type;
39
40 typedef enum _openxc_DiagnosticControlCommand_Action {
41     openxc_DiagnosticControlCommand_Action_ADD = 1,
42     openxc_DiagnosticControlCommand_Action_CANCEL = 2
43 } openxc_DiagnosticControlCommand_Action;
44
45 typedef enum _openxc_PayloadFormatCommand_PayloadFormat {
46     openxc_PayloadFormatCommand_PayloadFormat_JSON = 1,
47     openxc_PayloadFormatCommand_PayloadFormat_PROTOBUF = 2
48 } openxc_PayloadFormatCommand_PayloadFormat;
49
50 typedef enum _openxc_DiagnosticRequest_DecodedType {
51     openxc_DiagnosticRequest_DecodedType_NONE = 1,
52     openxc_DiagnosticRequest_DecodedType_OBD2 = 2
53 } openxc_DiagnosticRequest_DecodedType;
54
55 typedef enum _openxc_DynamicField_Type {
56     openxc_DynamicField_Type_STRING = 1,
57     openxc_DynamicField_Type_NUM = 2,
58     openxc_DynamicField_Type_BOOL = 3
59 } openxc_DynamicField_Type;
60
61 /* Struct definitions */
62 typedef struct _openxc_AcceptanceFilterBypassCommand {
63     bool has_bus;
64     int32_t bus;
65     bool has_bypass;
66     bool bypass;
67 } openxc_AcceptanceFilterBypassCommand;
68
69 typedef struct _openxc_CanMessage {
70     bool has_bus;
71     int32_t bus;
72     bool has_message_id;
73     uint32_t message_id;
74     pb_callback_t data;
75     bool has_frame_format;
76     openxc_CanMessage_FrameFormat frame_format;
77 } openxc_CanMessage;
78
79 typedef struct _openxc_CommandResponse {
80     bool has_type;
81     openxc_ControlCommand_Type type;
82     bool has_message;
83     char message[128];
84     bool has_status;
85     bool status;
86 } openxc_CommandResponse;
87
88 typedef PB_BYTES_ARRAY_T(8) openxc_DiagnosticRequest_payload_t;
89
90 typedef struct _openxc_DiagnosticRequest {
91     bool has_bus;
92     int32_t bus;
93     bool has_message_id;
94     uint32_t message_id;
95     bool has_mode;
96     uint32_t mode;
97     bool has_pid;
98     uint32_t pid;
99     bool has_payload;
100     openxc_DiagnosticRequest_payload_t payload;
101     bool has_multiple_responses;
102     bool multiple_responses;
103     bool has_frequency;
104     double frequency;
105     bool has_name;
106     char name[10];
107     bool has_decoded_type;
108     openxc_DiagnosticRequest_DecodedType decoded_type;
109 } openxc_DiagnosticRequest;
110
111 typedef PB_BYTES_ARRAY_T(8) openxc_DiagnosticResponse_payload_t;
112
113 typedef struct _openxc_DiagnosticResponse {
114     bool has_bus;
115     int32_t bus;
116     bool has_message_id;
117     uint32_t message_id;
118     bool has_mode;
119     uint32_t mode;
120     bool has_pid;
121     uint32_t pid;
122     bool has_success;
123     bool success;
124     bool has_negative_response_code;
125     uint32_t negative_response_code;
126     bool has_payload;
127     openxc_DiagnosticResponse_payload_t payload;
128     bool has_value;
129     double value;
130 } openxc_DiagnosticResponse;
131
132 typedef struct _openxc_DynamicField {
133     bool has_type;
134     openxc_DynamicField_Type type;
135     bool has_string_value;
136     char string_value[100];
137     bool has_numeric_value;
138     double numeric_value;
139     bool has_boolean_value;
140     bool boolean_value;
141 } openxc_DynamicField;
142
143 typedef struct _openxc_PassthroughModeControlCommand {
144     bool has_bus;
145     int32_t bus;
146     bool has_enabled;
147     bool enabled;
148 } openxc_PassthroughModeControlCommand;
149
150 typedef struct _openxc_PayloadFormatCommand {
151     bool has_format;
152     openxc_PayloadFormatCommand_PayloadFormat format;
153 } openxc_PayloadFormatCommand;
154
155 typedef struct _openxc_PredefinedObd2RequestsCommand {
156     bool has_enabled;
157     bool enabled;
158 } openxc_PredefinedObd2RequestsCommand;
159
160 typedef struct _openxc_DiagnosticControlCommand {
161     bool has_request;
162     openxc_DiagnosticRequest request;
163     bool has_action;
164     openxc_DiagnosticControlCommand_Action action;
165 } openxc_DiagnosticControlCommand;
166
167 typedef struct _openxc_SimpleMessage {
168     pb_callback_t name;
169     bool has_value;
170     openxc_DynamicField value;
171     bool has_event;
172     openxc_DynamicField event;
173 } openxc_SimpleMessage;
174
175 typedef struct _openxc_ControlCommand {
176     bool has_type;
177     openxc_ControlCommand_Type type;
178     bool has_diagnostic_request;
179     openxc_DiagnosticControlCommand diagnostic_request;
180     bool has_passthrough_mode_request;
181     openxc_PassthroughModeControlCommand passthrough_mode_request;
182     bool has_acceptance_filter_bypass_command;
183     openxc_AcceptanceFilterBypassCommand acceptance_filter_bypass_command;
184     bool has_payload_format_command;
185     openxc_PayloadFormatCommand payload_format_command;
186     bool has_predefined_obd2_requests_command;
187     openxc_PredefinedObd2RequestsCommand predefined_obd2_requests_command;
188 } openxc_ControlCommand;
189
190 typedef struct _openxc_VehicleMessage {
191     bool has_type;
192     openxc_VehicleMessage_Type type;
193     bool has_can_message;
194     openxc_CanMessage can_message;
195     bool has_simple_message;
196     openxc_SimpleMessage simple_message;
197     bool has_diagnostic_response;
198     openxc_DiagnosticResponse diagnostic_response;
199     bool has_control_command;
200     openxc_ControlCommand control_command;
201     bool has_command_response;
202     openxc_CommandResponse command_response;
203 } openxc_VehicleMessage;
204
205 /* Default values for struct fields */
206
207 /* Initializer values for message structs */
208 #define openxc_VehicleMessage_init_default       {false, (openxc_VehicleMessage_Type)0, false, openxc_CanMessage_init_default, false, openxc_SimpleMessage_init_default, false, openxc_DiagnosticResponse_init_default, false, openxc_ControlCommand_init_default, false, openxc_CommandResponse_init_default}
209 #define openxc_CanMessage_init_default           {false, 0, false, 0, {{NULL}, NULL}, false, (openxc_CanMessage_FrameFormat)0}
210 #define openxc_ControlCommand_init_default       {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_default, false, openxc_PassthroughModeControlCommand_init_default, false, openxc_AcceptanceFilterBypassCommand_init_default, false, openxc_PayloadFormatCommand_init_default, false, openxc_PredefinedObd2RequestsCommand_init_default}
211 #define openxc_DiagnosticControlCommand_init_default {false, openxc_DiagnosticRequest_init_default, false, (openxc_DiagnosticControlCommand_Action)0}
212 #define openxc_PassthroughModeControlCommand_init_default {false, 0, false, 0}
213 #define openxc_AcceptanceFilterBypassCommand_init_default {false, 0, false, 0}
214 #define openxc_PayloadFormatCommand_init_default {false, (openxc_PayloadFormatCommand_PayloadFormat)0}
215 #define openxc_PredefinedObd2RequestsCommand_init_default {false, 0}
216 #define openxc_CommandResponse_init_default      {false, (openxc_ControlCommand_Type)0, false, "", false, 0}
217 #define openxc_DiagnosticRequest_init_default    {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0}
218 #define openxc_DiagnosticResponse_init_default   {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
219 #define openxc_DynamicField_init_default         {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
220 #define openxc_SimpleMessage_init_default        {{{NULL}, NULL}, false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
221 #define openxc_VehicleMessage_init_zero          {false, (openxc_VehicleMessage_Type)0, false, openxc_CanMessage_init_zero, false, openxc_SimpleMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero}
222 #define openxc_CanMessage_init_zero              {false, 0, false, 0, {{NULL}, NULL}, false, (openxc_CanMessage_FrameFormat)0}
223 #define openxc_ControlCommand_init_zero          {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_zero, false, openxc_PassthroughModeControlCommand_init_zero, false, openxc_AcceptanceFilterBypassCommand_init_zero, false, openxc_PayloadFormatCommand_init_zero, false, openxc_PredefinedObd2RequestsCommand_init_zero}
224 #define openxc_DiagnosticControlCommand_init_zero {false, openxc_DiagnosticRequest_init_zero, false, (openxc_DiagnosticControlCommand_Action)0}
225 #define openxc_PassthroughModeControlCommand_init_zero {false, 0, false, 0}
226 #define openxc_AcceptanceFilterBypassCommand_init_zero {false, 0, false, 0}
227 #define openxc_PayloadFormatCommand_init_zero    {false, (openxc_PayloadFormatCommand_PayloadFormat)0}
228 #define openxc_PredefinedObd2RequestsCommand_init_zero {false, 0}
229 #define openxc_CommandResponse_init_zero         {false, (openxc_ControlCommand_Type)0, false, "", false, 0}
230 #define openxc_DiagnosticRequest_init_zero       {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0}
231 #define openxc_DiagnosticResponse_init_zero      {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
232 #define openxc_DynamicField_init_zero            {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
233 #define openxc_SimpleMessage_init_zero           {{{NULL}, NULL}, false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
234
235 /* Field tags (for use in manual encoding/decoding) */
236 #define openxc_AcceptanceFilterBypassCommand_bus_tag 1
237 #define openxc_AcceptanceFilterBypassCommand_bypass_tag 2
238 #define openxc_CanMessage_bus_tag                1
239 #define openxc_CanMessage_message_id_tag         2
240 #define openxc_CanMessage_data_tag               3
241 #define openxc_CanMessage_frame_format_tag       4
242 #define openxc_CommandResponse_type_tag          1
243 #define openxc_CommandResponse_message_tag       2
244 #define openxc_CommandResponse_status_tag        3
245 #define openxc_DiagnosticRequest_bus_tag         1
246 #define openxc_DiagnosticRequest_message_id_tag  2
247 #define openxc_DiagnosticRequest_mode_tag        3
248 #define openxc_DiagnosticRequest_pid_tag         4
249 #define openxc_DiagnosticRequest_payload_tag     5
250 #define openxc_DiagnosticRequest_multiple_responses_tag 6
251 #define openxc_DiagnosticRequest_frequency_tag   7
252 #define openxc_DiagnosticRequest_name_tag        8
253 #define openxc_DiagnosticRequest_decoded_type_tag 9
254 #define openxc_DiagnosticResponse_bus_tag        1
255 #define openxc_DiagnosticResponse_message_id_tag 2
256 #define openxc_DiagnosticResponse_mode_tag       3
257 #define openxc_DiagnosticResponse_pid_tag        4
258 #define openxc_DiagnosticResponse_success_tag    5
259 #define openxc_DiagnosticResponse_negative_response_code_tag 6
260 #define openxc_DiagnosticResponse_payload_tag    7
261 #define openxc_DiagnosticResponse_value_tag      8
262 #define openxc_DynamicField_type_tag             1
263 #define openxc_DynamicField_string_value_tag     2
264 #define openxc_DynamicField_numeric_value_tag    3
265 #define openxc_DynamicField_boolean_value_tag    4
266 #define openxc_PassthroughModeControlCommand_bus_tag 1
267 #define openxc_PassthroughModeControlCommand_enabled_tag 2
268 #define openxc_PayloadFormatCommand_format_tag   1
269 #define openxc_PredefinedObd2RequestsCommand_enabled_tag 1
270 #define openxc_DiagnosticControlCommand_request_tag 1
271 #define openxc_DiagnosticControlCommand_action_tag 2
272 #define openxc_SimpleMessage_name_tag            1
273 #define openxc_SimpleMessage_value_tag           2
274 #define openxc_SimpleMessage_event_tag           3
275 #define openxc_ControlCommand_type_tag           1
276 #define openxc_ControlCommand_diagnostic_request_tag 2
277 #define openxc_ControlCommand_passthrough_mode_request_tag 3
278 #define openxc_ControlCommand_acceptance_filter_bypass_command_tag 4
279 #define openxc_ControlCommand_payload_format_command_tag 5
280 #define openxc_ControlCommand_predefined_obd2_requests_command_tag 6
281 #define openxc_VehicleMessage_type_tag           1
282 #define openxc_VehicleMessage_can_message_tag    2
283 #define openxc_VehicleMessage_simple_message_tag 3
284 #define openxc_VehicleMessage_diagnostic_response_tag 4
285 #define openxc_VehicleMessage_control_command_tag 5
286 #define openxc_VehicleMessage_command_response_tag 6
287
288 /* Struct field encoding specification for nanopb */
289 extern const pb_field_t openxc_VehicleMessage_fields[7];
290 extern const pb_field_t openxc_CanMessage_fields[5];
291 extern const pb_field_t openxc_ControlCommand_fields[7];
292 extern const pb_field_t openxc_DiagnosticControlCommand_fields[3];
293 extern const pb_field_t openxc_PassthroughModeControlCommand_fields[3];
294 extern const pb_field_t openxc_AcceptanceFilterBypassCommand_fields[3];
295 extern const pb_field_t openxc_PayloadFormatCommand_fields[2];
296 extern const pb_field_t openxc_PredefinedObd2RequestsCommand_fields[2];
297 extern const pb_field_t openxc_CommandResponse_fields[4];
298 extern const pb_field_t openxc_DiagnosticRequest_fields[10];
299 extern const pb_field_t openxc_DiagnosticResponse_fields[9];
300 extern const pb_field_t openxc_DynamicField_fields[5];
301 extern const pb_field_t openxc_SimpleMessage_fields[4];
302
303 /* Maximum encoded size of messages (where known) */
304 #define openxc_ControlCommand_size               126
305 #define openxc_DiagnosticControlCommand_size     76
306 #define openxc_PassthroughModeControlCommand_size 13
307 #define openxc_AcceptanceFilterBypassCommand_size 13
308 #define openxc_PayloadFormatCommand_size         6
309 #define openxc_PredefinedObd2RequestsCommand_size 2
310 #define openxc_CommandResponse_size              139
311 #define openxc_DiagnosticRequest_size            68
312 #define openxc_DiagnosticResponse_size           56
313 #define openxc_DynamicField_size                 119
314
315 #ifdef __cplusplus
316 } /* extern "C" */
317 #endif
318
319 #endif