555a672e8a7cac38f9e1df66e18beb9435dc5c02
[apps/low-level-can-service.git] / gen / cpp / openxc.pb.h
1 /* Automatically generated nanopb header */
2 /* Generated by nanopb-0.3.1 at Sat Sep 20 21:59:09 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_RAW = 1,
19     openxc_VehicleMessage_Type_TRANSLATED = 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_ControlCommand_Type {
26     openxc_ControlCommand_Type_VERSION = 1,
27     openxc_ControlCommand_Type_DEVICE_ID = 2,
28     openxc_ControlCommand_Type_DIAGNOSTIC = 3,
29     openxc_ControlCommand_Type_PASSTHROUGH = 4
30 } openxc_ControlCommand_Type;
31
32 typedef enum _openxc_DiagnosticControlCommand_Action {
33     openxc_DiagnosticControlCommand_Action_ADD = 1,
34     openxc_DiagnosticControlCommand_Action_CANCEL = 2
35 } openxc_DiagnosticControlCommand_Action;
36
37 typedef enum _openxc_PassthroughModeControlCommand_PassthroughMode {
38     openxc_PassthroughModeControlCommand_PassthroughMode_OFF = 1,
39     openxc_PassthroughModeControlCommand_PassthroughMode_FILTERED = 2,
40     openxc_PassthroughModeControlCommand_PassthroughMode_UNFILTERED = 3
41 } openxc_PassthroughModeControlCommand_PassthroughMode;
42
43 typedef enum _openxc_DiagnosticRequest_DecodedType {
44     openxc_DiagnosticRequest_DecodedType_NONE = 1,
45     openxc_DiagnosticRequest_DecodedType_OBD2 = 2
46 } openxc_DiagnosticRequest_DecodedType;
47
48 typedef enum _openxc_DynamicField_Type {
49     openxc_DynamicField_Type_STRING = 1,
50     openxc_DynamicField_Type_NUM = 2,
51     openxc_DynamicField_Type_BOOL = 3
52 } openxc_DynamicField_Type;
53
54 typedef enum _openxc_TranslatedMessage_Type {
55     openxc_TranslatedMessage_Type_STRING = 1,
56     openxc_TranslatedMessage_Type_NUM = 2,
57     openxc_TranslatedMessage_Type_BOOL = 3,
58     openxc_TranslatedMessage_Type_EVENTED_STRING = 4,
59     openxc_TranslatedMessage_Type_EVENTED_NUM = 5,
60     openxc_TranslatedMessage_Type_EVENTED_BOOL = 6
61 } openxc_TranslatedMessage_Type;
62
63 /* Struct definitions */
64 typedef struct _openxc_CommandResponse {
65     bool has_type;
66     openxc_ControlCommand_Type type;
67     bool has_message;
68     char message[128];
69     bool has_status;
70     bool status;
71 } openxc_CommandResponse;
72
73 typedef PB_BYTES_ARRAY_T(8) openxc_DiagnosticRequest_payload_t;
74
75 typedef struct _openxc_DiagnosticRequest {
76     bool has_bus;
77     int32_t bus;
78     bool has_message_id;
79     uint32_t message_id;
80     bool has_mode;
81     uint32_t mode;
82     bool has_pid;
83     uint32_t pid;
84     bool has_payload;
85     openxc_DiagnosticRequest_payload_t payload;
86     bool has_multiple_responses;
87     bool multiple_responses;
88     bool has_frequency;
89     double frequency;
90     bool has_name;
91     char name[10];
92     bool has_decoded_type;
93     openxc_DiagnosticRequest_DecodedType decoded_type;
94 } openxc_DiagnosticRequest;
95
96 typedef PB_BYTES_ARRAY_T(8) openxc_DiagnosticResponse_payload_t;
97
98 typedef struct _openxc_DiagnosticResponse {
99     bool has_bus;
100     int32_t bus;
101     bool has_message_id;
102     uint32_t message_id;
103     bool has_mode;
104     uint32_t mode;
105     bool has_pid;
106     uint32_t pid;
107     bool has_success;
108     bool success;
109     bool has_negative_response_code;
110     uint32_t negative_response_code;
111     bool has_payload;
112     openxc_DiagnosticResponse_payload_t payload;
113     bool has_value;
114     double value;
115 } openxc_DiagnosticResponse;
116
117 typedef struct _openxc_DynamicField {
118     bool has_type;
119     openxc_DynamicField_Type type;
120     bool has_string_value;
121     char string_value[100];
122     bool has_numeric_value;
123     double numeric_value;
124     bool has_boolean_value;
125     bool boolean_value;
126 } openxc_DynamicField;
127
128 typedef struct _openxc_PassthroughModeControlCommand {
129     bool has_bus;
130     int32_t bus;
131     bool has_mode;
132     openxc_PassthroughModeControlCommand_PassthroughMode mode;
133 } openxc_PassthroughModeControlCommand;
134
135 typedef PB_BYTES_ARRAY_T(8) openxc_RawMessage_data_t;
136
137 typedef struct _openxc_RawMessage {
138     bool has_bus;
139     int32_t bus;
140     bool has_message_id;
141     uint32_t message_id;
142     bool has_data;
143     openxc_RawMessage_data_t data;
144 } openxc_RawMessage;
145
146 typedef struct _openxc_DiagnosticControlCommand {
147     bool has_request;
148     openxc_DiagnosticRequest request;
149     bool has_action;
150     openxc_DiagnosticControlCommand_Action action;
151 } openxc_DiagnosticControlCommand;
152
153 typedef struct _openxc_TranslatedMessage {
154     bool has_type;
155     openxc_TranslatedMessage_Type type;
156     bool has_name;
157     char name[100];
158     bool has_value;
159     openxc_DynamicField value;
160     bool has_event;
161     openxc_DynamicField event;
162 } openxc_TranslatedMessage;
163
164 typedef struct _openxc_ControlCommand {
165     bool has_type;
166     openxc_ControlCommand_Type type;
167     bool has_diagnostic_request;
168     openxc_DiagnosticControlCommand diagnostic_request;
169     bool has_passthrough_mode_request;
170     openxc_PassthroughModeControlCommand passthrough_mode_request;
171 } openxc_ControlCommand;
172
173 typedef struct _openxc_VehicleMessage {
174     bool has_type;
175     openxc_VehicleMessage_Type type;
176     bool has_raw_message;
177     openxc_RawMessage raw_message;
178     bool has_translated_message;
179     openxc_TranslatedMessage translated_message;
180     bool has_diagnostic_response;
181     openxc_DiagnosticResponse diagnostic_response;
182     bool has_control_command;
183     openxc_ControlCommand control_command;
184     bool has_command_response;
185     openxc_CommandResponse command_response;
186 } openxc_VehicleMessage;
187
188 /* Default values for struct fields */
189
190 /* Initializer values for message structs */
191 #define openxc_VehicleMessage_init_default       {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_default, false, openxc_TranslatedMessage_init_default, false, openxc_DiagnosticResponse_init_default, false, openxc_ControlCommand_init_default, false, openxc_CommandResponse_init_default}
192 #define openxc_RawMessage_init_default           {false, 0, false, 0, false, {0, {0}}}
193 #define openxc_ControlCommand_init_default       {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_default, false, openxc_PassthroughModeControlCommand_init_default}
194 #define openxc_DiagnosticControlCommand_init_default {false, openxc_DiagnosticRequest_init_default, false, (openxc_DiagnosticControlCommand_Action)0}
195 #define openxc_PassthroughModeControlCommand_init_default {false, 0, false, (openxc_PassthroughModeControlCommand_PassthroughMode)0}
196 #define openxc_CommandResponse_init_default      {false, (openxc_ControlCommand_Type)0, false, "", false, 0}
197 #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}
198 #define openxc_DiagnosticResponse_init_default   {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
199 #define openxc_DynamicField_init_default         {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
200 #define openxc_TranslatedMessage_init_default    {false, (openxc_TranslatedMessage_Type)0, false, "", false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
201 #define openxc_VehicleMessage_init_zero          {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_zero, false, openxc_TranslatedMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero}
202 #define openxc_RawMessage_init_zero              {false, 0, false, 0, false, {0, {0}}}
203 #define openxc_ControlCommand_init_zero          {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_zero, false, openxc_PassthroughModeControlCommand_init_zero}
204 #define openxc_DiagnosticControlCommand_init_zero {false, openxc_DiagnosticRequest_init_zero, false, (openxc_DiagnosticControlCommand_Action)0}
205 #define openxc_PassthroughModeControlCommand_init_zero {false, 0, false, (openxc_PassthroughModeControlCommand_PassthroughMode)0}
206 #define openxc_CommandResponse_init_zero         {false, (openxc_ControlCommand_Type)0, false, "", false, 0}
207 #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}
208 #define openxc_DiagnosticResponse_init_zero      {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0}
209 #define openxc_DynamicField_init_zero            {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
210 #define openxc_TranslatedMessage_init_zero       {false, (openxc_TranslatedMessage_Type)0, false, "", false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
211
212 /* Field tags (for use in manual encoding/decoding) */
213 #define openxc_CommandResponse_type_tag          1
214 #define openxc_CommandResponse_message_tag       2
215 #define openxc_CommandResponse_status_tag        3
216 #define openxc_DiagnosticRequest_bus_tag         1
217 #define openxc_DiagnosticRequest_message_id_tag  2
218 #define openxc_DiagnosticRequest_mode_tag        3
219 #define openxc_DiagnosticRequest_pid_tag         4
220 #define openxc_DiagnosticRequest_payload_tag     5
221 #define openxc_DiagnosticRequest_multiple_responses_tag 6
222 #define openxc_DiagnosticRequest_frequency_tag   7
223 #define openxc_DiagnosticRequest_name_tag        8
224 #define openxc_DiagnosticRequest_decoded_type_tag 9
225 #define openxc_DiagnosticResponse_bus_tag        1
226 #define openxc_DiagnosticResponse_message_id_tag 2
227 #define openxc_DiagnosticResponse_mode_tag       3
228 #define openxc_DiagnosticResponse_pid_tag        4
229 #define openxc_DiagnosticResponse_success_tag    5
230 #define openxc_DiagnosticResponse_negative_response_code_tag 6
231 #define openxc_DiagnosticResponse_payload_tag    7
232 #define openxc_DiagnosticResponse_value_tag      8
233 #define openxc_DynamicField_type_tag             1
234 #define openxc_DynamicField_string_value_tag     2
235 #define openxc_DynamicField_numeric_value_tag    3
236 #define openxc_DynamicField_boolean_value_tag    4
237 #define openxc_PassthroughModeControlCommand_bus_tag 1
238 #define openxc_PassthroughModeControlCommand_mode_tag 2
239 #define openxc_RawMessage_bus_tag                1
240 #define openxc_RawMessage_message_id_tag         2
241 #define openxc_RawMessage_data_tag               3
242 #define openxc_DiagnosticControlCommand_request_tag 1
243 #define openxc_DiagnosticControlCommand_action_tag 2
244 #define openxc_TranslatedMessage_type_tag        1
245 #define openxc_TranslatedMessage_name_tag        2
246 #define openxc_TranslatedMessage_value_tag       3
247 #define openxc_TranslatedMessage_event_tag       4
248 #define openxc_ControlCommand_type_tag           1
249 #define openxc_ControlCommand_diagnostic_request_tag 2
250 #define openxc_ControlCommand_passthrough_mode_request_tag 3
251 #define openxc_VehicleMessage_type_tag           1
252 #define openxc_VehicleMessage_raw_message_tag    2
253 #define openxc_VehicleMessage_translated_message_tag 3
254 #define openxc_VehicleMessage_diagnostic_response_tag 4
255 #define openxc_VehicleMessage_control_command_tag 5
256 #define openxc_VehicleMessage_command_response_tag 6
257
258 /* Struct field encoding specification for nanopb */
259 extern const pb_field_t openxc_VehicleMessage_fields[7];
260 extern const pb_field_t openxc_RawMessage_fields[4];
261 extern const pb_field_t openxc_ControlCommand_fields[4];
262 extern const pb_field_t openxc_DiagnosticControlCommand_fields[3];
263 extern const pb_field_t openxc_PassthroughModeControlCommand_fields[3];
264 extern const pb_field_t openxc_CommandResponse_fields[4];
265 extern const pb_field_t openxc_DiagnosticRequest_fields[10];
266 extern const pb_field_t openxc_DiagnosticResponse_fields[9];
267 extern const pb_field_t openxc_DynamicField_fields[5];
268 extern const pb_field_t openxc_TranslatedMessage_fields[5];
269
270 /* Maximum encoded size of messages (where known) */
271 #define openxc_VehicleMessage_size               693
272 #define openxc_RawMessage_size                   27
273 #define openxc_ControlCommand_size               103
274 #define openxc_DiagnosticControlCommand_size     76
275 #define openxc_PassthroughModeControlCommand_size 17
276 #define openxc_CommandResponse_size              139
277 #define openxc_DiagnosticRequest_size            68
278 #define openxc_DiagnosticResponse_size           56
279 #define openxc_DynamicField_size                 119
280 #define openxc_TranslatedMessage_size            350
281
282 #ifdef __cplusplus
283 } /* extern "C" */
284 #endif
285
286 #endif