Update nanopb to 0.2.5 and fix max string length options.
[apps/low-level-can-service.git] / gen / cpp / openxc.pb.h
1 /* Automatically generated nanopb header */
2 /* Generated by nanopb-0.2.5 at Fri Jan 17 14:02:23 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 _openxc_RawMessage {
29     bool has_bus;
30     int32_t bus;
31     bool has_message_id;
32     uint32_t message_id;
33     bool has_data;
34     uint64_t data;
35 } openxc_RawMessage;
36
37 typedef struct _openxc_TranslatedMessage {
38     bool has_type;
39     openxc_TranslatedMessage_Type type;
40     bool has_name;
41     char name[100];
42     bool has_string_value;
43     char string_value[100];
44     bool has_numeric_value;
45     double numeric_value;
46     bool has_boolean_value;
47     bool boolean_value;
48     bool has_string_event;
49     char string_event[100];
50     bool has_numeric_event;
51     double numeric_event;
52     bool has_boolean_event;
53     bool boolean_event;
54 } openxc_TranslatedMessage;
55
56 typedef struct _openxc_VehicleMessage {
57     bool has_type;
58     openxc_VehicleMessage_Type type;
59     bool has_raw_message;
60     openxc_RawMessage raw_message;
61     bool has_translated_message;
62     openxc_TranslatedMessage translated_message;
63 } openxc_VehicleMessage;
64
65 /* Default values for struct fields */
66
67 /* Field tags (for use in manual encoding/decoding) */
68 #define openxc_RawMessage_bus_tag                1
69 #define openxc_RawMessage_message_id_tag         2
70 #define openxc_RawMessage_data_tag               3
71 #define openxc_TranslatedMessage_type_tag        1
72 #define openxc_TranslatedMessage_name_tag        2
73 #define openxc_TranslatedMessage_string_value_tag 3
74 #define openxc_TranslatedMessage_numeric_value_tag 4
75 #define openxc_TranslatedMessage_boolean_value_tag 5
76 #define openxc_TranslatedMessage_string_event_tag 6
77 #define openxc_TranslatedMessage_numeric_event_tag 7
78 #define openxc_TranslatedMessage_boolean_event_tag 8
79 #define openxc_VehicleMessage_type_tag           1
80 #define openxc_VehicleMessage_raw_message_tag    2
81 #define openxc_VehicleMessage_translated_message_tag 3
82
83 /* Struct field encoding specification for nanopb */
84 extern const pb_field_t openxc_VehicleMessage_fields[4];
85 extern const pb_field_t openxc_RawMessage_fields[4];
86 extern const pb_field_t openxc_TranslatedMessage_fields[9];
87
88 /* Maximum encoded size of messages (where known) */
89 #define openxc_VehicleMessage_size               373
90 #define openxc_RawMessage_size                   28
91 #define openxc_TranslatedMessage_size            334
92
93 #ifdef __cplusplus
94 } /* extern "C" */
95 #endif
96
97 #endif