summaryrefslogtreecommitdiffstats
path: root/gen/cpp
diff options
context:
space:
mode:
authorChristopher Peplin <chris.peplin@rhubarbtech.com>2013-10-23 09:02:33 -0400
committerChristopher Peplin <chris.peplin@rhubarbtech.com>2014-01-07 13:18:10 -0500
commitda1d41840879bc75a9df06972e1ec191bbfd3691 (patch)
treed25f57f7872963396f83ca0f10f2aa4c73b29d04 /gen/cpp
parent4904749890b1f2570f9197da99a07a76471e8400 (diff)
Switch back to many subtypes for binary messages.
Some protobuf libraries don't support checking if a field exists (they always return a default value), so although this style has more code it is easier to support.
Diffstat (limited to 'gen/cpp')
-rw-r--r--gen/cpp/openxc.pb54
-rw-r--r--gen/cpp/openxc.pb.c62
-rw-r--r--gen/cpp/openxc.pb.h136
3 files changed, 186 insertions, 66 deletions
diff --git a/gen/cpp/openxc.pb b/gen/cpp/openxc.pb
index d4356e1c..7efe870c 100644
--- a/gen/cpp/openxc.pb
+++ b/gen/cpp/openxc.pb
@@ -1,27 +1,49 @@
-à
- openxc.protoopenxc"¼
+Ú
+ openxc.protoopenxc"š
VehicleMessage)
type (2.openxc.VehicleMessage.Type'
- raw_message ( 2.openxc.RawMessage5
-translated_message ( 2.openxc.TranslatedMessage"
+ raw_message ( 2.openxc.RawMessage-
+string_message ( 2.openxc.StringMessage/
+numeric_message ( 2.openxc.NumericMessage/
+boolean_message ( 2.openxc.BooleanMessage<
+evented_string_message ( 2.openxc.EventedStringMessage>
+evented_boolean_message ( 2.openxc.EventedBooleanMessage>
+evented_numeric_message ( 2.openxc.EventedNumericMessage"e
Type
-RAW
+RAW
-TRANSLATED";
+STRING
+BOOL
+NUM
+ EVENTED_NUM
+EVENTED_STRING
+ EVENTED_BOOL"-
RawMessage
bus (
-message_id ( 
-data ("­
-TranslatedMessage
-name ( 
- string_value ( 
-numerical_value (
- boolean_value (
- string_event ( 
-numerical_event (
- boolean_event (B
+message_id ( ",
+ StringMessage
+name ( 
+value ( "-
+NumericMessage
+name ( 
+value ("-
+BooleanMessage
+name ( 
+value ("B
+EventedStringMessage
+name ( 
+value ( 
+event ( "C
+EventedBooleanMessage
+name ( 
+value ( 
+event ("C
+EventedNumericMessage
+name ( 
+value ( 
+event (B
com.openxcBBinaryMessages \ No newline at end of file
diff --git a/gen/cpp/openxc.pb.c b/gen/cpp/openxc.pb.c
index 91667bf3..541c6b0c 100644
--- a/gen/cpp/openxc.pb.c
+++ b/gen/cpp/openxc.pb.c
@@ -1,43 +1,75 @@
/* Automatically generated nanopb constant definitions */
-/* Generated by nanopb-0.2.4-dev at Wed Oct 9 14:26:13 2013. */
+/* Generated by nanopb-0.2.4-dev at Wed Oct 23 08:59:20 2013. */
#include "openxc.pb.h"
-const pb_field_t openxc_VehicleMessage_fields[4] = {
+const pb_field_t openxc_VehicleMessage_fields[9] = {
PB_FIELD2( 1, ENUM , OPTIONAL, STATIC, FIRST, openxc_VehicleMessage, type, type, 0),
PB_FIELD2( 2, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, raw_message, type, &openxc_RawMessage_fields),
- PB_FIELD2( 3, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, translated_message, raw_message, &openxc_TranslatedMessage_fields),
+ PB_FIELD2( 3, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, string_message, raw_message, &openxc_StringMessage_fields),
+ PB_FIELD2( 4, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, numeric_message, string_message, &openxc_NumericMessage_fields),
+ PB_FIELD2( 5, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, boolean_message, numeric_message, &openxc_BooleanMessage_fields),
+ PB_FIELD2( 6, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, evented_string_message, boolean_message, &openxc_EventedStringMessage_fields),
+ PB_FIELD2( 7, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, evented_boolean_message, evented_string_message, &openxc_EventedBooleanMessage_fields),
+ PB_FIELD2( 8, MESSAGE , OPTIONAL, STATIC, OTHER, openxc_VehicleMessage, evented_numeric_message, evented_boolean_message, &openxc_EventedNumericMessage_fields),
PB_LAST_FIELD
};
-const pb_field_t openxc_RawMessage_fields[4] = {
+const pb_field_t openxc_RawMessage_fields[3] = {
PB_FIELD2( 1, INT32 , OPTIONAL, STATIC, FIRST, openxc_RawMessage, bus, bus, 0),
PB_FIELD2( 2, UINT32 , OPTIONAL, STATIC, OTHER, openxc_RawMessage, message_id, bus, 0),
- PB_FIELD2( 3, UINT64 , OPTIONAL, STATIC, OTHER, openxc_RawMessage, data, message_id, 0),
PB_LAST_FIELD
};
-const pb_field_t openxc_TranslatedMessage_fields[8] = {
- PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_TranslatedMessage, name, name, 0),
- PB_FIELD2( 2, STRING , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, string_value, name, 0),
- PB_FIELD2( 3, DOUBLE , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, numerical_value, string_value, 0),
- PB_FIELD2( 4, BOOL , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, boolean_value, numerical_value, 0),
- PB_FIELD2( 5, STRING , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, string_event, boolean_value, 0),
- PB_FIELD2( 6, DOUBLE , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, numerical_event, string_event, 0),
- PB_FIELD2( 7, BOOL , OPTIONAL, STATIC, OTHER, openxc_TranslatedMessage, boolean_event, numerical_event, 0),
+const pb_field_t openxc_StringMessage_fields[3] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_StringMessage, name, name, 0),
+ PB_FIELD2( 2, STRING , OPTIONAL, STATIC, OTHER, openxc_StringMessage, value, name, 0),
+ PB_LAST_FIELD
+};
+
+const pb_field_t openxc_NumericMessage_fields[3] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_NumericMessage, name, name, 0),
+ PB_FIELD2( 2, DOUBLE , OPTIONAL, STATIC, OTHER, openxc_NumericMessage, value, name, 0),
+ PB_LAST_FIELD
+};
+
+const pb_field_t openxc_BooleanMessage_fields[3] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_BooleanMessage, name, name, 0),
+ PB_FIELD2( 2, BOOL , OPTIONAL, STATIC, OTHER, openxc_BooleanMessage, value, name, 0),
+ PB_LAST_FIELD
+};
+
+const pb_field_t openxc_EventedStringMessage_fields[4] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_EventedStringMessage, name, name, 0),
+ PB_FIELD2( 2, STRING , OPTIONAL, STATIC, OTHER, openxc_EventedStringMessage, value, name, 0),
+ PB_FIELD2( 3, STRING , OPTIONAL, STATIC, OTHER, openxc_EventedStringMessage, event, value, 0),
+ PB_LAST_FIELD
+};
+
+const pb_field_t openxc_EventedBooleanMessage_fields[4] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_EventedBooleanMessage, name, name, 0),
+ PB_FIELD2( 2, STRING , OPTIONAL, STATIC, OTHER, openxc_EventedBooleanMessage, value, name, 0),
+ PB_FIELD2( 3, BOOL , OPTIONAL, STATIC, OTHER, openxc_EventedBooleanMessage, event, value, 0),
+ PB_LAST_FIELD
+};
+
+const pb_field_t openxc_EventedNumericMessage_fields[4] = {
+ PB_FIELD2( 1, STRING , OPTIONAL, STATIC, FIRST, openxc_EventedNumericMessage, name, name, 0),
+ PB_FIELD2( 2, STRING , OPTIONAL, STATIC, OTHER, openxc_EventedNumericMessage, value, name, 0),
+ PB_FIELD2( 3, DOUBLE , OPTIONAL, STATIC, OTHER, openxc_EventedNumericMessage, event, value, 0),
PB_LAST_FIELD
};
/* Check that field information fits in pb_field_t */
#if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT)
-STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 256 && pb_membersize(openxc_VehicleMessage, translated_message) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_TranslatedMessage)
+STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 256 && pb_membersize(openxc_VehicleMessage, string_message) < 256 && pb_membersize(openxc_VehicleMessage, numeric_message) < 256 && pb_membersize(openxc_VehicleMessage, boolean_message) < 256 && pb_membersize(openxc_VehicleMessage, evented_string_message) < 256 && pb_membersize(openxc_VehicleMessage, evented_boolean_message) < 256 && pb_membersize(openxc_VehicleMessage, evented_numeric_message) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_StringMessage_openxc_NumericMessage_openxc_BooleanMessage_openxc_EventedStringMessage_openxc_EventedBooleanMessage_openxc_EventedNumericMessage)
#endif
#if !defined(PB_FIELD_32BIT)
-STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && pb_membersize(openxc_VehicleMessage, translated_message) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_TranslatedMessage)
+STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && pb_membersize(openxc_VehicleMessage, string_message) < 65536 && pb_membersize(openxc_VehicleMessage, numeric_message) < 65536 && pb_membersize(openxc_VehicleMessage, boolean_message) < 65536 && pb_membersize(openxc_VehicleMessage, evented_string_message) < 65536 && pb_membersize(openxc_VehicleMessage, evented_boolean_message) < 65536 && pb_membersize(openxc_VehicleMessage, evented_numeric_message) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_StringMessage_openxc_NumericMessage_openxc_BooleanMessage_openxc_EventedStringMessage_openxc_EventedBooleanMessage_openxc_EventedNumericMessage)
#endif
/* On some platforms (such as AVR), double is really float.
diff --git a/gen/cpp/openxc.pb.h b/gen/cpp/openxc.pb.h
index d278c681..389c09c9 100644
--- a/gen/cpp/openxc.pb.h
+++ b/gen/cpp/openxc.pb.h
@@ -1,5 +1,5 @@
/* Automatically generated nanopb header */
-/* Generated by nanopb-0.2.4-dev at Wed Oct 9 14:26:13 2013. */
+/* Generated by nanopb-0.2.4-dev at Wed Oct 23 08:59:20 2013. */
#ifndef _PB_OPENXC_PB_H_
#define _PB_OPENXC_PB_H_
@@ -12,71 +12,137 @@ extern "C" {
/* Enum definitions */
typedef enum _openxc_VehicleMessage_Type {
openxc_VehicleMessage_Type_RAW = 1,
- openxc_VehicleMessage_Type_TRANSLATED = 2
+ openxc_VehicleMessage_Type_STRING = 2,
+ openxc_VehicleMessage_Type_BOOL = 3,
+ openxc_VehicleMessage_Type_NUM = 4,
+ openxc_VehicleMessage_Type_EVENTED_NUM = 5,
+ openxc_VehicleMessage_Type_EVENTED_STRING = 6,
+ openxc_VehicleMessage_Type_EVENTED_BOOL = 7
} openxc_VehicleMessage_Type;
/* Struct definitions */
+typedef struct _openxc_BooleanMessage {
+ bool has_name;
+ char name[100];
+ bool has_value;
+ bool value;
+} openxc_BooleanMessage;
+
+typedef struct _openxc_EventedBooleanMessage {
+ bool has_name;
+ char name[100];
+ bool has_value;
+ char value[100];
+ bool has_event;
+ bool event;
+} openxc_EventedBooleanMessage;
+
+typedef struct _openxc_EventedNumericMessage {
+ bool has_name;
+ char name[100];
+ bool has_value;
+ char value[100];
+ bool has_event;
+ double event;
+} openxc_EventedNumericMessage;
+
+typedef struct _openxc_EventedStringMessage {
+ bool has_name;
+ char name[100];
+ bool has_value;
+ char value[100];
+ bool has_event;
+ char event[100];
+} openxc_EventedStringMessage;
+
+typedef struct _openxc_NumericMessage {
+ bool has_name;
+ char name[100];
+ bool has_value;
+ double value;
+} openxc_NumericMessage;
+
typedef struct _openxc_RawMessage {
bool has_bus;
int32_t bus;
bool has_message_id;
uint32_t message_id;
- bool has_data;
- uint64_t data;
} openxc_RawMessage;
-typedef struct _openxc_TranslatedMessage {
+typedef struct _openxc_StringMessage {
bool has_name;
char name[100];
- bool has_string_value;
- char string_value[100];
- bool has_numerical_value;
- double numerical_value;
- bool has_boolean_value;
- bool boolean_value;
- bool has_string_event;
- char string_event[100];
- bool has_numerical_event;
- double numerical_event;
- bool has_boolean_event;
- bool boolean_event;
-} openxc_TranslatedMessage;
+ bool has_value;
+ char value[100];
+} openxc_StringMessage;
typedef struct _openxc_VehicleMessage {
bool has_type;
openxc_VehicleMessage_Type type;
bool has_raw_message;
openxc_RawMessage raw_message;
- bool has_translated_message;
- openxc_TranslatedMessage translated_message;
+ bool has_string_message;
+ openxc_StringMessage string_message;
+ bool has_numeric_message;
+ openxc_NumericMessage numeric_message;
+ bool has_boolean_message;
+ openxc_BooleanMessage boolean_message;
+ bool has_evented_string_message;
+ openxc_EventedStringMessage evented_string_message;
+ bool has_evented_boolean_message;
+ openxc_EventedBooleanMessage evented_boolean_message;
+ bool has_evented_numeric_message;
+ openxc_EventedNumericMessage evented_numeric_message;
} openxc_VehicleMessage;
/* Default values for struct fields */
/* Field tags (for use in manual encoding/decoding) */
+#define openxc_BooleanMessage_name_tag 1
+#define openxc_BooleanMessage_value_tag 2
+#define openxc_EventedBooleanMessage_name_tag 1
+#define openxc_EventedBooleanMessage_value_tag 2
+#define openxc_EventedBooleanMessage_event_tag 3
+#define openxc_EventedNumericMessage_name_tag 1
+#define openxc_EventedNumericMessage_value_tag 2
+#define openxc_EventedNumericMessage_event_tag 3
+#define openxc_EventedStringMessage_name_tag 1
+#define openxc_EventedStringMessage_value_tag 2
+#define openxc_EventedStringMessage_event_tag 3
+#define openxc_NumericMessage_name_tag 1
+#define openxc_NumericMessage_value_tag 2
#define openxc_RawMessage_bus_tag 1
#define openxc_RawMessage_message_id_tag 2
-#define openxc_RawMessage_data_tag 3
-#define openxc_TranslatedMessage_name_tag 1
-#define openxc_TranslatedMessage_string_value_tag 2
-#define openxc_TranslatedMessage_numerical_value_tag 3
-#define openxc_TranslatedMessage_boolean_value_tag 4
-#define openxc_TranslatedMessage_string_event_tag 5
-#define openxc_TranslatedMessage_numerical_event_tag 6
-#define openxc_TranslatedMessage_boolean_event_tag 7
+#define openxc_StringMessage_name_tag 1
+#define openxc_StringMessage_value_tag 2
#define openxc_VehicleMessage_type_tag 1
#define openxc_VehicleMessage_raw_message_tag 2
-#define openxc_VehicleMessage_translated_message_tag 3
+#define openxc_VehicleMessage_string_message_tag 3
+#define openxc_VehicleMessage_numeric_message_tag 4
+#define openxc_VehicleMessage_boolean_message_tag 5
+#define openxc_VehicleMessage_evented_string_message_tag 6
+#define openxc_VehicleMessage_evented_boolean_message_tag 7
+#define openxc_VehicleMessage_evented_numeric_message_tag 8
/* Struct field encoding specification for nanopb */
-extern const pb_field_t openxc_VehicleMessage_fields[4];
-extern const pb_field_t openxc_RawMessage_fields[4];
-extern const pb_field_t openxc_TranslatedMessage_fields[8];
+extern const pb_field_t openxc_VehicleMessage_fields[9];
+extern const pb_field_t openxc_RawMessage_fields[3];
+extern const pb_field_t openxc_StringMessage_fields[3];
+extern const pb_field_t openxc_NumericMessage_fields[3];
+extern const pb_field_t openxc_BooleanMessage_fields[3];
+extern const pb_field_t openxc_EventedStringMessage_fields[4];
+extern const pb_field_t openxc_EventedBooleanMessage_fields[4];
+extern const pb_field_t openxc_EventedNumericMessage_fields[4];
/* Maximum encoded size of messages (where known) */
-#define openxc_VehicleMessage_size 362
-#define openxc_RawMessage_size 23
-#define openxc_TranslatedMessage_size 328
+#define openxc_VehicleMessage_size 1180
+#define openxc_RawMessage_size 12
+#define openxc_StringMessage_size 204
+#define openxc_NumericMessage_size 111
+#define openxc_BooleanMessage_size 104
+#define openxc_EventedStringMessage_size 306
+#define openxc_EventedBooleanMessage_size 206
+#define openxc_EventedNumericMessage_size 213
#ifdef __cplusplus
} /* extern "C" */