From e3162f7da4b6b5ad422bccdb9b2a4e1b144ab9c9 Mon Sep 17 00:00:00 2001 From: Christopher Peplin Date: Sat, 27 Sep 2014 19:56:21 -0400 Subject: Add a command to change message format while running. --- gen/cpp/openxc.pb | 19 ++++++++++++++----- gen/cpp/openxc.pb.c | 15 +++++++++++---- gen/cpp/openxc.pb.h | 36 +++++++++++++++++++++++++++++------- 3 files changed, 54 insertions(+), 16 deletions(-) (limited to 'gen/cpp') diff --git a/gen/cpp/openxc.pb b/gen/cpp/openxc.pb index c4000c36..dfad822b 100644 --- a/gen/cpp/openxc.pb +++ b/gen/cpp/openxc.pb @@ -1,5 +1,5 @@ -Á +œ openxc.protoopenxc"” VehicleMessage) type (2.openxc.VehicleMessage.Type' @@ -21,19 +21,21 @@ RawMessage bus ( message_id (  -data ( "ö +data ( "È ControlCommand) type (2.openxc.ControlCommand.Type< diagnostic_request ( 2 .openxc.DiagnosticControlCommandG passthrough_mode_request ( 2%.openxc.PassthroughModeControlCommandO - acceptance_filter_bypass_command ( 2%.openxc.AcceptanceFilterBypassCommand"a + acceptance_filter_bypass_command ( 2%.openxc.AcceptanceFilterBypassCommand< +message_format_command ( 2.openxc.MessageFormatCommand"u Type VERSION DEVICE_ID DIAGNOSTIC PASSTHROUGH -ACCEPTANCE_FILTER_BYPASS"ž +ACCEPTANCE_FILTER_BYPASS +MESSAGE_FORMAT"ž DiagnosticControlCommand* request ( 2.openxc.DiagnosticRequest7 action (2'.openxc.DiagnosticControlCommand.Action" @@ -46,7 +48,14 @@ DIAGNOSTIC enabled ("< AcceptanceFilterBypassCommand bus ( -bypass ("] +bypass ("† +MessageFormatCommand +bus (: +format (2*.openxc.MessageFormatCommand.MessageFormat"% + MessageFormat +JSON + +BINARY"] CommandResponse) type (2.openxc.ControlCommand.Type message (  diff --git a/gen/cpp/openxc.pb.c b/gen/cpp/openxc.pb.c index 39c6a348..3fd1b4ab 100644 --- a/gen/cpp/openxc.pb.c +++ b/gen/cpp/openxc.pb.c @@ -1,5 +1,5 @@ /* Automatically generated nanopb constant definitions */ -/* Generated by nanopb-0.3.1 at Sat Sep 27 19:43:38 2014. */ +/* Generated by nanopb-0.3.1 at Sat Sep 27 19:56:19 2014. */ #include "openxc.pb.h" @@ -26,11 +26,12 @@ const pb_field_t openxc_RawMessage_fields[4] = { PB_LAST_FIELD }; -const pb_field_t openxc_ControlCommand_fields[5] = { +const pb_field_t openxc_ControlCommand_fields[6] = { PB_FIELD( 1, ENUM , OPTIONAL, STATIC , FIRST, openxc_ControlCommand, type, type, 0), PB_FIELD( 2, MESSAGE , OPTIONAL, STATIC , OTHER, openxc_ControlCommand, diagnostic_request, type, &openxc_DiagnosticControlCommand_fields), PB_FIELD( 3, MESSAGE , OPTIONAL, STATIC , OTHER, openxc_ControlCommand, passthrough_mode_request, diagnostic_request, &openxc_PassthroughModeControlCommand_fields), PB_FIELD( 4, MESSAGE , OPTIONAL, STATIC , OTHER, openxc_ControlCommand, acceptance_filter_bypass_command, passthrough_mode_request, &openxc_AcceptanceFilterBypassCommand_fields), + PB_FIELD( 5, MESSAGE , OPTIONAL, STATIC , OTHER, openxc_ControlCommand, message_format_command, acceptance_filter_bypass_command, &openxc_MessageFormatCommand_fields), PB_LAST_FIELD }; @@ -52,6 +53,12 @@ const pb_field_t openxc_AcceptanceFilterBypassCommand_fields[3] = { PB_LAST_FIELD }; +const pb_field_t openxc_MessageFormatCommand_fields[3] = { + PB_FIELD( 1, INT32 , OPTIONAL, STATIC , FIRST, openxc_MessageFormatCommand, bus, bus, 0), + PB_FIELD( 2, ENUM , OPTIONAL, STATIC , OTHER, openxc_MessageFormatCommand, format, bus, 0), + PB_LAST_FIELD +}; + const pb_field_t openxc_CommandResponse_fields[4] = { PB_FIELD( 1, ENUM , OPTIONAL, STATIC , FIRST, openxc_CommandResponse, type, type, 0), PB_FIELD( 2, STRING , OPTIONAL, STATIC , OTHER, openxc_CommandResponse, message, type, 0), @@ -110,7 +117,7 @@ const pb_field_t openxc_TranslatedMessage_fields[5] = { * numbers or field sizes that are larger than what can fit in 8 or 16 bit * field descriptors. */ -PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && pb_membersize(openxc_VehicleMessage, translated_message) < 65536 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 65536 && pb_membersize(openxc_VehicleMessage, control_command) < 65536 && pb_membersize(openxc_VehicleMessage, command_response) < 65536 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 65536 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 65536 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 65536 && pb_membersize(openxc_DiagnosticControlCommand, request) < 65536 && pb_membersize(openxc_TranslatedMessage, value) < 65536 && pb_membersize(openxc_TranslatedMessage, event) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage) +PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && pb_membersize(openxc_VehicleMessage, translated_message) < 65536 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 65536 && pb_membersize(openxc_VehicleMessage, control_command) < 65536 && pb_membersize(openxc_VehicleMessage, command_response) < 65536 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 65536 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 65536 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 65536 && pb_membersize(openxc_ControlCommand, message_format_command) < 65536 && pb_membersize(openxc_DiagnosticControlCommand, request) < 65536 && pb_membersize(openxc_TranslatedMessage, value) < 65536 && pb_membersize(openxc_TranslatedMessage, event) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_MessageFormatCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage) #endif #if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT) @@ -121,7 +128,7 @@ PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 65536 && p * numbers or field sizes that are larger than what can fit in the default * 8 bit descriptors. */ -PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 256 && pb_membersize(openxc_VehicleMessage, translated_message) < 256 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 256 && pb_membersize(openxc_VehicleMessage, control_command) < 256 && pb_membersize(openxc_VehicleMessage, command_response) < 256 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 256 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 256 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 256 && pb_membersize(openxc_DiagnosticControlCommand, request) < 256 && pb_membersize(openxc_TranslatedMessage, value) < 256 && pb_membersize(openxc_TranslatedMessage, event) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage) +PB_STATIC_ASSERT((pb_membersize(openxc_VehicleMessage, raw_message) < 256 && pb_membersize(openxc_VehicleMessage, translated_message) < 256 && pb_membersize(openxc_VehicleMessage, diagnostic_response) < 256 && pb_membersize(openxc_VehicleMessage, control_command) < 256 && pb_membersize(openxc_VehicleMessage, command_response) < 256 && pb_membersize(openxc_ControlCommand, diagnostic_request) < 256 && pb_membersize(openxc_ControlCommand, passthrough_mode_request) < 256 && pb_membersize(openxc_ControlCommand, acceptance_filter_bypass_command) < 256 && pb_membersize(openxc_ControlCommand, message_format_command) < 256 && pb_membersize(openxc_DiagnosticControlCommand, request) < 256 && pb_membersize(openxc_TranslatedMessage, value) < 256 && pb_membersize(openxc_TranslatedMessage, event) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_openxc_VehicleMessage_openxc_RawMessage_openxc_ControlCommand_openxc_DiagnosticControlCommand_openxc_PassthroughModeControlCommand_openxc_AcceptanceFilterBypassCommand_openxc_MessageFormatCommand_openxc_CommandResponse_openxc_DiagnosticRequest_openxc_DiagnosticResponse_openxc_DynamicField_openxc_TranslatedMessage) #endif diff --git a/gen/cpp/openxc.pb.h b/gen/cpp/openxc.pb.h index 85b711d5..792aa935 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.3.1 at Sat Sep 27 19:43:38 2014. */ +/* Generated by nanopb-0.3.1 at Sat Sep 27 19:56:19 2014. */ #ifndef PB_OPENXC_PB_H_INCLUDED #define PB_OPENXC_PB_H_INCLUDED @@ -27,7 +27,8 @@ typedef enum _openxc_ControlCommand_Type { openxc_ControlCommand_Type_DEVICE_ID = 2, openxc_ControlCommand_Type_DIAGNOSTIC = 3, openxc_ControlCommand_Type_PASSTHROUGH = 4, - openxc_ControlCommand_Type_ACCEPTANCE_FILTER_BYPASS = 5 + openxc_ControlCommand_Type_ACCEPTANCE_FILTER_BYPASS = 5, + openxc_ControlCommand_Type_MESSAGE_FORMAT = 6 } openxc_ControlCommand_Type; typedef enum _openxc_DiagnosticControlCommand_Action { @@ -35,6 +36,11 @@ typedef enum _openxc_DiagnosticControlCommand_Action { openxc_DiagnosticControlCommand_Action_CANCEL = 2 } openxc_DiagnosticControlCommand_Action; +typedef enum _openxc_MessageFormatCommand_MessageFormat { + openxc_MessageFormatCommand_MessageFormat_JSON = 1, + openxc_MessageFormatCommand_MessageFormat_BINARY = 2 +} openxc_MessageFormatCommand_MessageFormat; + typedef enum _openxc_DiagnosticRequest_DecodedType { openxc_DiagnosticRequest_DecodedType_NONE = 1, openxc_DiagnosticRequest_DecodedType_OBD2 = 2 @@ -127,6 +133,13 @@ typedef struct _openxc_DynamicField { bool boolean_value; } openxc_DynamicField; +typedef struct _openxc_MessageFormatCommand { + bool has_bus; + int32_t bus; + bool has_format; + openxc_MessageFormatCommand_MessageFormat format; +} openxc_MessageFormatCommand; + typedef struct _openxc_PassthroughModeControlCommand { bool has_bus; int32_t bus; @@ -172,6 +185,8 @@ typedef struct _openxc_ControlCommand { openxc_PassthroughModeControlCommand passthrough_mode_request; bool has_acceptance_filter_bypass_command; openxc_AcceptanceFilterBypassCommand acceptance_filter_bypass_command; + bool has_message_format_command; + openxc_MessageFormatCommand message_format_command; } openxc_ControlCommand; typedef struct _openxc_VehicleMessage { @@ -194,10 +209,11 @@ typedef struct _openxc_VehicleMessage { /* Initializer values for message structs */ #define openxc_VehicleMessage_init_default {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_default, false, openxc_TranslatedMessage_init_default, false, openxc_DiagnosticResponse_init_default, false, openxc_ControlCommand_init_default, false, openxc_CommandResponse_init_default} #define openxc_RawMessage_init_default {false, 0, false, 0, false, {0, {0}}} -#define openxc_ControlCommand_init_default {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_default, false, openxc_PassthroughModeControlCommand_init_default, false, openxc_AcceptanceFilterBypassCommand_init_default} +#define openxc_ControlCommand_init_default {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_default, false, openxc_PassthroughModeControlCommand_init_default, false, openxc_AcceptanceFilterBypassCommand_init_default, false, openxc_MessageFormatCommand_init_default} #define openxc_DiagnosticControlCommand_init_default {false, openxc_DiagnosticRequest_init_default, false, (openxc_DiagnosticControlCommand_Action)0} #define openxc_PassthroughModeControlCommand_init_default {false, 0, false, 0} #define openxc_AcceptanceFilterBypassCommand_init_default {false, 0, false, 0} +#define openxc_MessageFormatCommand_init_default {false, 0, false, (openxc_MessageFormatCommand_MessageFormat)0} #define openxc_CommandResponse_init_default {false, (openxc_ControlCommand_Type)0, false, "", false, 0} #define openxc_DiagnosticRequest_init_default {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0} #define openxc_DiagnosticResponse_init_default {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0} @@ -205,10 +221,11 @@ typedef struct _openxc_VehicleMessage { #define openxc_TranslatedMessage_init_default {false, (openxc_TranslatedMessage_Type)0, false, "", false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default} #define openxc_VehicleMessage_init_zero {false, (openxc_VehicleMessage_Type)0, false, openxc_RawMessage_init_zero, false, openxc_TranslatedMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero} #define openxc_RawMessage_init_zero {false, 0, false, 0, false, {0, {0}}} -#define openxc_ControlCommand_init_zero {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_zero, false, openxc_PassthroughModeControlCommand_init_zero, false, openxc_AcceptanceFilterBypassCommand_init_zero} +#define openxc_ControlCommand_init_zero {false, (openxc_ControlCommand_Type)0, false, openxc_DiagnosticControlCommand_init_zero, false, openxc_PassthroughModeControlCommand_init_zero, false, openxc_AcceptanceFilterBypassCommand_init_zero, false, openxc_MessageFormatCommand_init_zero} #define openxc_DiagnosticControlCommand_init_zero {false, openxc_DiagnosticRequest_init_zero, false, (openxc_DiagnosticControlCommand_Action)0} #define openxc_PassthroughModeControlCommand_init_zero {false, 0, false, 0} #define openxc_AcceptanceFilterBypassCommand_init_zero {false, 0, false, 0} +#define openxc_MessageFormatCommand_init_zero {false, 0, false, (openxc_MessageFormatCommand_MessageFormat)0} #define openxc_CommandResponse_init_zero {false, (openxc_ControlCommand_Type)0, false, "", false, 0} #define openxc_DiagnosticRequest_init_zero {false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0, false, 0, false, "", false, (openxc_DiagnosticRequest_DecodedType)0} #define openxc_DiagnosticResponse_init_zero {false, 0, false, 0, false, 0, false, 0, false, 0, false, 0, false, {0, {0}}, false, 0} @@ -242,6 +259,8 @@ typedef struct _openxc_VehicleMessage { #define openxc_DynamicField_string_value_tag 2 #define openxc_DynamicField_numeric_value_tag 3 #define openxc_DynamicField_boolean_value_tag 4 +#define openxc_MessageFormatCommand_bus_tag 1 +#define openxc_MessageFormatCommand_format_tag 2 #define openxc_PassthroughModeControlCommand_bus_tag 1 #define openxc_PassthroughModeControlCommand_enabled_tag 2 #define openxc_RawMessage_bus_tag 1 @@ -257,6 +276,7 @@ typedef struct _openxc_VehicleMessage { #define openxc_ControlCommand_diagnostic_request_tag 2 #define openxc_ControlCommand_passthrough_mode_request_tag 3 #define openxc_ControlCommand_acceptance_filter_bypass_command_tag 4 +#define openxc_ControlCommand_message_format_command_tag 5 #define openxc_VehicleMessage_type_tag 1 #define openxc_VehicleMessage_raw_message_tag 2 #define openxc_VehicleMessage_translated_message_tag 3 @@ -267,10 +287,11 @@ typedef struct _openxc_VehicleMessage { /* Struct field encoding specification for nanopb */ extern const pb_field_t openxc_VehicleMessage_fields[7]; extern const pb_field_t openxc_RawMessage_fields[4]; -extern const pb_field_t openxc_ControlCommand_fields[5]; +extern const pb_field_t openxc_ControlCommand_fields[6]; extern const pb_field_t openxc_DiagnosticControlCommand_fields[3]; extern const pb_field_t openxc_PassthroughModeControlCommand_fields[3]; extern const pb_field_t openxc_AcceptanceFilterBypassCommand_fields[3]; +extern const pb_field_t openxc_MessageFormatCommand_fields[3]; extern const pb_field_t openxc_CommandResponse_fields[4]; extern const pb_field_t openxc_DiagnosticRequest_fields[10]; extern const pb_field_t openxc_DiagnosticResponse_fields[9]; @@ -278,12 +299,13 @@ extern const pb_field_t openxc_DynamicField_fields[5]; extern const pb_field_t openxc_TranslatedMessage_fields[5]; /* Maximum encoded size of messages (where known) */ -#define openxc_VehicleMessage_size 704 +#define openxc_VehicleMessage_size 724 #define openxc_RawMessage_size 27 -#define openxc_ControlCommand_size 114 +#define openxc_ControlCommand_size 133 #define openxc_DiagnosticControlCommand_size 76 #define openxc_PassthroughModeControlCommand_size 13 #define openxc_AcceptanceFilterBypassCommand_size 13 +#define openxc_MessageFormatCommand_size 17 #define openxc_CommandResponse_size 139 #define openxc_DiagnosticRequest_size 68 #define openxc_DiagnosticResponse_size 56 -- cgit 1.2.3-korg