Store diagnostic response payload as a byte array in protobuf.
[apps/agl-service-can-low-level.git] / gen / cpp / openxc.pb.h
1 /* Automatically generated nanopb header */
2 /* Generated by nanopb-0.2.5 at Fri Jan 17 14:31:26 2014. */
3
4 #ifndef _PB_OPENXC_PB_H_
5 #define _PB_OPENXC_PB_H_
6 #include <pb.h>
7
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11
12 /* Enum definitions */
13 typedef enum _openxc_VehicleMessage_Type {
14     openxc_VehicleMessage_Type_RAW = 1,
15     openxc_VehicleMessage_Type_TRANSLATED = 2
16 } openxc_VehicleMessage_Type;
17
18 typedef enum _openxc_TranslatedMessage_Type {
19     openxc_TranslatedMessage_Type_STRING = 1,
20     openxc_TranslatedMessage_Type_NUM = 2,
21     openxc_TranslatedMessage_Type_BOOL = 3,
22     openxc_TranslatedMessage_Type_EVENTED_STRING = 4,
23     openxc_TranslatedMessage_Type_EVENTED_NUM = 5,
24     openxc_TranslatedMessage_Type_EVENTED_BOOL = 6
25 } openxc_TranslatedMessage_Type;
26
27 /* Struct definitions */
28 typedef struct {
29     size_t size;
30     uint8_t bytes[8];
31 } openxc_DiagnosticMessage_payload_t;
32
33 typedef struct _openxc_DiagnosticMessage {
34     bool has_bus;
35     int32_t bus;
36     bool has_message_id;
37     uint32_t message_id;
38     bool has_mode;
39     uint32_t mode;
40     bool has_pid;
41     uint32_t pid;
42     bool has_success;
43     bool success;
44     bool has_negative_response_code;
45     uint32_t negative_response_code;
46     bool has_payload;
47     openxc_DiagnosticMessage_payload_t payload;
48 } openxc_DiagnosticMessage;
49
50 typedef struct _openxc_RawMessage {
51     bool has_bus;
52     int32_t bus;
53     bool has_message_id;
54     uint32_t message_id;
55     bool has_data;
56     uint64_t data;
57 } openxc_RawMessage;
58
59 typedef struct _openxc_TranslatedMessage {
60     bool has_type;
61     openxc_TranslatedMessage_Type type;
62     bool has_name;
63     char name[100];
64     bool has_string_value;
65     char string_value[100];
66     bool has_numeric_value;
67     double numeric_value;
68     bool has_boolean_value;
69     bool boolean_value;
70     bool has_string_event;
71     char string_event[100];
72     bool has_numeric_event;
73     double numeric_event;
74     bool has_boolean_event;
75     bool boolean_event;
76 } openxc_TranslatedMessage;
77
78 typedef struct _openxc_VehicleMessage {
79     bool has_type;
80     openxc_VehicleMessage_Type type;
81     bool has_raw_message;
82     openxc_RawMessage raw_message;
83     bool has_translated_message;
84     openxc_TranslatedMessage translated_message;
85 } openxc_VehicleMessage;
86
87 /* Default values for struct fields */
88
89 /* Field tags (for use in manual encoding/decoding) */
90 #define openxc_DiagnosticMessage_bus_tag         1
91 #define openxc_DiagnosticMessage_message_id_tag  2
92 #define openxc_DiagnosticMessage_mode_tag        3
93 #define openxc_DiagnosticMessage_pid_tag         4
94 #define openxc_DiagnosticMessage_success_tag     5
95 #define openxc_DiagnosticMessage_negative_response_code_tag 6
96 #define openxc_DiagnosticMessage_payload_tag     7
97 #define openxc_RawMessage_bus_tag                1
98 #define openxc_RawMessage_message_id_tag         2
99 #define openxc_RawMessage_data_tag               3
100 #define openxc_TranslatedMessage_type_tag        1
101 #define openxc_TranslatedMessage_name_tag        2
102 #define openxc_TranslatedMessage_string_value_tag 3
103 #define openxc_TranslatedMessage_numeric_value_tag 4
104 #define openxc_TranslatedMessage_boolean_value_tag 5
105 #define openxc_TranslatedMessage_string_event_tag 6
106 #define openxc_TranslatedMessage_numeric_event_tag 7
107 #define openxc_TranslatedMessage_boolean_event_tag 8
108 #define openxc_VehicleMessage_type_tag           1
109 #define openxc_VehicleMessage_raw_message_tag    2
110 #define openxc_VehicleMessage_translated_message_tag 3
111
112 /* Struct field encoding specification for nanopb */
113 extern const pb_field_t openxc_VehicleMessage_fields[4];
114 extern const pb_field_t openxc_RawMessage_fields[4];
115 extern const pb_field_t openxc_DiagnosticMessage_fields[8];
116 extern const pb_field_t openxc_TranslatedMessage_fields[9];
117
118 /* Maximum encoded size of messages (where known) */
119 #define openxc_VehicleMessage_size               373
120 #define openxc_RawMessage_size                   28
121 #define openxc_DiagnosticMessage_size            47
122 #define openxc_TranslatedMessage_size            334
123
124 #ifdef __cplusplus
125 } /* extern "C" */
126 #endif
127
128 #endif