9e4c3a272e6ca0dbcb3b1a046ae55ea6c090488f
[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 Wed Feb 19 14:35:41 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_DIAGNOSTIC = 3
17 } openxc_VehicleMessage_Type;
18
19 typedef enum _openxc_TranslatedMessage_Type {
20     openxc_TranslatedMessage_Type_STRING = 1,
21     openxc_TranslatedMessage_Type_NUM = 2,
22     openxc_TranslatedMessage_Type_BOOL = 3,
23     openxc_TranslatedMessage_Type_EVENTED_STRING = 4,
24     openxc_TranslatedMessage_Type_EVENTED_NUM = 5,
25     openxc_TranslatedMessage_Type_EVENTED_BOOL = 6
26 } openxc_TranslatedMessage_Type;
27
28 /* Struct definitions */
29 typedef struct {
30     size_t size;
31     uint8_t bytes[8];
32 } openxc_DiagnosticMessage_payload_t;
33
34 typedef struct _openxc_DiagnosticMessage {
35     bool has_bus;
36     int32_t bus;
37     bool has_message_id;
38     uint32_t message_id;
39     bool has_mode;
40     uint32_t mode;
41     bool has_pid;
42     uint32_t pid;
43     bool has_success;
44     bool success;
45     bool has_negative_response_code;
46     uint32_t negative_response_code;
47     bool has_payload;
48     openxc_DiagnosticMessage_payload_t payload;
49     bool has_value;
50     double value;
51 } openxc_DiagnosticMessage;
52
53 typedef struct {
54     size_t size;
55     uint8_t bytes[8];
56 } openxc_RawMessage_data_t;
57
58 typedef struct _openxc_RawMessage {
59     bool has_bus;
60     int32_t bus;
61     bool has_message_id;
62     uint32_t message_id;
63     bool has_data;
64     openxc_RawMessage_data_t data;
65 } openxc_RawMessage;
66
67 typedef struct _openxc_TranslatedMessage {
68     bool has_type;
69     openxc_TranslatedMessage_Type type;
70     bool has_name;
71     char name[100];
72     bool has_string_value;
73     char string_value[100];
74     bool has_numeric_value;
75     double numeric_value;
76     bool has_boolean_value;
77     bool boolean_value;
78     bool has_string_event;
79     char string_event[100];
80     bool has_numeric_event;
81     double numeric_event;
82     bool has_boolean_event;
83     bool boolean_event;
84 } openxc_TranslatedMessage;
85
86 typedef struct _openxc_VehicleMessage {
87     bool has_type;
88     openxc_VehicleMessage_Type type;
89     bool has_raw_message;
90     openxc_RawMessage raw_message;
91     bool has_translated_message;
92     openxc_TranslatedMessage translated_message;
93     bool has_diagnostic_message;
94     openxc_DiagnosticMessage diagnostic_message;
95 } openxc_VehicleMessage;
96
97 /* Default values for struct fields */
98
99 /* Field tags (for use in manual encoding/decoding) */
100 #define openxc_DiagnosticMessage_bus_tag         1
101 #define openxc_DiagnosticMessage_message_id_tag  2
102 #define openxc_DiagnosticMessage_mode_tag        3
103 #define openxc_DiagnosticMessage_pid_tag         4
104 #define openxc_DiagnosticMessage_success_tag     5
105 #define openxc_DiagnosticMessage_negative_response_code_tag 6
106 #define openxc_DiagnosticMessage_payload_tag     7
107 #define openxc_DiagnosticMessage_value_tag       8
108 #define openxc_RawMessage_bus_tag                1
109 #define openxc_RawMessage_message_id_tag         2
110 #define openxc_RawMessage_data_tag               3
111 #define openxc_TranslatedMessage_type_tag        1
112 #define openxc_TranslatedMessage_name_tag        2
113 #define openxc_TranslatedMessage_string_value_tag 3
114 #define openxc_TranslatedMessage_numeric_value_tag 4
115 #define openxc_TranslatedMessage_boolean_value_tag 5
116 #define openxc_TranslatedMessage_string_event_tag 6
117 #define openxc_TranslatedMessage_numeric_event_tag 7
118 #define openxc_TranslatedMessage_boolean_event_tag 8
119 #define openxc_VehicleMessage_type_tag           1
120 #define openxc_VehicleMessage_raw_message_tag    2
121 #define openxc_VehicleMessage_translated_message_tag 3
122 #define openxc_VehicleMessage_diagnostic_message_tag 4
123
124 /* Struct field encoding specification for nanopb */
125 extern const pb_field_t openxc_VehicleMessage_fields[5];
126 extern const pb_field_t openxc_RawMessage_fields[4];
127 extern const pb_field_t openxc_DiagnosticMessage_fields[9];
128 extern const pb_field_t openxc_TranslatedMessage_fields[9];
129
130 /* Maximum encoded size of messages (where known) */
131 #define openxc_VehicleMessage_size               430
132 #define openxc_RawMessage_size                   27
133 #define openxc_DiagnosticMessage_size            56
134 #define openxc_TranslatedMessage_size            334
135
136 #ifdef __cplusplus
137 } /* extern "C" */
138 #endif
139
140 #endif