Minimize the number of separate protobuf types.
[apps/low-level-can-service.git] / gen / cpp / openxc.pb.h
index 9c50569..81a0779 100644 (file)
@@ -1,5 +1,5 @@
 /* Automatically generated nanopb header */
-/* Generated by nanopb-0.2.4-dev at Tue Oct  1 16:51:23 2013. */
+/* Generated by nanopb-0.2.4-dev at Thu Oct 24 10:06:38 2013. */
 
 #ifndef _PB_OPENXC_PB_H_
 #define _PB_OPENXC_PB_H_
@@ -12,11 +12,18 @@ extern "C" {
 /* Enum definitions */
 typedef enum _openxc_VehicleMessage_Type {
     openxc_VehicleMessage_Type_RAW = 1,
-    openxc_VehicleMessage_Type_STRING = 2,
-    openxc_VehicleMessage_Type_NUM = 3,
-    openxc_VehicleMessage_Type_BOOL = 4
+    openxc_VehicleMessage_Type_TRANSLATED = 2
 } openxc_VehicleMessage_Type;
 
+typedef enum _openxc_TranslatedMessage_Type {
+    openxc_TranslatedMessage_Type_STRING = 1,
+    openxc_TranslatedMessage_Type_NUM = 2,
+    openxc_TranslatedMessage_Type_BOOL = 3,
+    openxc_TranslatedMessage_Type_EVENTED_STRING = 4,
+    openxc_TranslatedMessage_Type_EVENTED_NUM = 5,
+    openxc_TranslatedMessage_Type_EVENTED_BOOL = 6
+} openxc_TranslatedMessage_Type;
+
 /* Struct definitions */
 typedef struct _openxc_RawMessage {
     bool has_bus;
@@ -24,41 +31,35 @@ typedef struct _openxc_RawMessage {
     bool has_message_id;
     uint32_t message_id;
     bool has_data;
-    int64_t data;
+    uint64_t data;
 } openxc_RawMessage;
 
-typedef struct _openxc_TranslatedBooleanMessage {
-    bool has_name;
-    char name[100];
-    bool has_value;
-    bool value;
-} openxc_TranslatedBooleanMessage;
-
-typedef struct _openxc_TranslatedNumericMessage {
-    bool has_name;
-    char name[100];
-    bool has_value;
-    double value;
-} openxc_TranslatedNumericMessage;
-
-typedef struct _openxc_TranslatedStringMessage {
+typedef struct _openxc_TranslatedMessage {
+    bool has_type;
+    openxc_TranslatedMessage_Type type;
     bool has_name;
     char name[100];
-    bool has_value;
-    char value[100];
-} openxc_TranslatedStringMessage;
+    bool has_string_value;
+    char string_value[100];
+    bool has_numeric_value;
+    double numeric_value;
+    bool has_boolean_value;
+    bool boolean_value;
+    bool has_string_event;
+    char string_event[100];
+    bool has_numeric_event;
+    double numeric_event;
+    bool has_boolean_event;
+    bool boolean_event;
+} openxc_TranslatedMessage;
 
 typedef struct _openxc_VehicleMessage {
     bool has_type;
     openxc_VehicleMessage_Type type;
     bool has_raw_message;
     openxc_RawMessage raw_message;
-    bool has_string_message;
-    openxc_TranslatedStringMessage string_message;
-    bool has_numerical_message;
-    openxc_TranslatedNumericMessage numerical_message;
-    bool has_boolean_message;
-    openxc_TranslatedBooleanMessage boolean_message;
+    bool has_translated_message;
+    openxc_TranslatedMessage translated_message;
 } openxc_VehicleMessage;
 
 /* Default values for struct fields */
@@ -67,31 +68,27 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_RawMessage_bus_tag                1
 #define openxc_RawMessage_message_id_tag         2
 #define openxc_RawMessage_data_tag               3
-#define openxc_TranslatedBooleanMessage_name_tag 1
-#define openxc_TranslatedBooleanMessage_value_tag 2
-#define openxc_TranslatedNumericMessage_name_tag 1
-#define openxc_TranslatedNumericMessage_value_tag 2
-#define openxc_TranslatedStringMessage_name_tag  1
-#define openxc_TranslatedStringMessage_value_tag 2
+#define openxc_TranslatedMessage_type_tag        1
+#define openxc_TranslatedMessage_name_tag        2
+#define openxc_TranslatedMessage_string_value_tag 3
+#define openxc_TranslatedMessage_numeric_value_tag 4
+#define openxc_TranslatedMessage_boolean_value_tag 5
+#define openxc_TranslatedMessage_string_event_tag 6
+#define openxc_TranslatedMessage_numeric_event_tag 7
+#define openxc_TranslatedMessage_boolean_event_tag 8
 #define openxc_VehicleMessage_type_tag           1
 #define openxc_VehicleMessage_raw_message_tag    2
-#define openxc_VehicleMessage_string_message_tag 3
-#define openxc_VehicleMessage_numerical_message_tag 4
-#define openxc_VehicleMessage_boolean_message_tag 5
+#define openxc_VehicleMessage_translated_message_tag 3
 
 /* Struct field encoding specification for nanopb */
-extern const pb_field_t openxc_VehicleMessage_fields[6];
+extern const pb_field_t openxc_VehicleMessage_fields[4];
 extern const pb_field_t openxc_RawMessage_fields[4];
-extern const pb_field_t openxc_TranslatedStringMessage_fields[3];
-extern const pb_field_t openxc_TranslatedNumericMessage_fields[3];
-extern const pb_field_t openxc_TranslatedBooleanMessage_fields[3];
+extern const pb_field_t openxc_TranslatedMessage_fields[9];
 
 /* Maximum encoded size of messages (where known) */
-#define openxc_VehicleMessage_size               457
+#define openxc_VehicleMessage_size               368
 #define openxc_RawMessage_size                   23
-#define openxc_TranslatedStringMessage_size      204
-#define openxc_TranslatedNumericMessage_size     111
-#define openxc_TranslatedBooleanMessage_size     104
+#define openxc_TranslatedMessage_size            334
 
 #ifdef __cplusplus
 } /* extern "C" */