Remove redundant 'type' field from binary SimpleVehicleMessage.
authorChristopher Peplin <chris.peplin@rhubarbtech.com>
Tue, 7 Oct 2014 03:25:13 +0000 (23:25 -0400)
committerChristopher Peplin <chris.peplin@rhubarbtech.com>
Tue, 7 Oct 2014 03:25:13 +0000 (23:25 -0400)
You can figure out the type based on the value and event DynamicFields.

Fixed #19.

gen/cpp/openxc.pb
gen/cpp/openxc.pb.c
gen/cpp/openxc.pb.h
gen/java/com/openxc/BinaryMessages.java
gen/python/openxc_pb2.py
openxc.proto

index 88993ab..a4716ce 100644 (file)
@@ -1,5 +1,5 @@
 
-\80\14
\12
 \fopenxc.proto\12\ 6openxc"\88\ 3
 \ eVehicleMessage\12)
 \ 4type\18\ 1 \ 1(\ e2\e.openxc.VehicleMessage.Type\12'
@@ -99,19 +99,10 @@ message_id\18\ 2 \ 1(\r\12
 
 \ 6STRING\10\ 1\12\a
 \ 3NUM\10\ 2\12\b
-\ 4BOOL\10\ 3\ 1
-\rSimpleMessage\12(
-\ 4type\18\ 1 \ 1(\ e2\1a.openxc.SimpleMessage.Type\12\f
-\ 4name\18\ 2 \ 1(     \12#
-\ 5value\18\ 3 \ 1(\v2\14.openxc.DynamicField\12#
-\ 5event\18\ 4 \ 1(\v2\14.openxc.DynamicField"\
-\ 4Type\12
-
-\ 6STRING\10\ 1\12\a
-\ 3NUM\10\ 2\12\b
-\ 4BOOL\10\ 3\12\12
-\ eEVENTED_STRING\10\ 4\12\ f
-\vEVENTED_NUM\10\ 5\12\10
-\fEVENTED_BOOL\10\ 6B\1c
+\ 4BOOL\10\ 3"g
+\rSimpleMessage\12\f
+\ 4name\18\ 1 \ 1(     \12#
+\ 5value\18\ 2 \ 1(\v2\14.openxc.DynamicField\12#
+\ 5event\18\ 3 \ 1(\v2\14.openxc.DynamicFieldB\1c
 
 com.openxcB\ eBinaryMessages
\ No newline at end of file
index b9d6d95..ccde431 100644 (file)
@@ -1,5 +1,5 @@
 /* Automatically generated nanopb constant definitions */
-/* Generated by nanopb-0.3.1 at Mon Oct  6 23:12:27 2014. */
+/* Generated by nanopb-0.3.1 at Mon Oct  6 23:25:12 2014. */
 
 #include "openxc.pb.h"
 
@@ -105,11 +105,10 @@ const pb_field_t openxc_DynamicField_fields[5] = {
     PB_LAST_FIELD
 };
 
-const pb_field_t openxc_SimpleMessage_fields[5] = {
-    PB_FIELD(  1, ENUM    , OPTIONAL, STATIC  , FIRST, openxc_SimpleMessage, type, type, 0),
-    PB_FIELD(  2, STRING  , OPTIONAL, CALLBACK, OTHER, openxc_SimpleMessage, name, type, 0),
-    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, value, name, &openxc_DynamicField_fields),
-    PB_FIELD(  4, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, event, value, &openxc_DynamicField_fields),
+const pb_field_t openxc_SimpleMessage_fields[4] = {
+    PB_FIELD(  1, STRING  , OPTIONAL, CALLBACK, FIRST, openxc_SimpleMessage, name, name, 0),
+    PB_FIELD(  2, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, value, name, &openxc_DynamicField_fields),
+    PB_FIELD(  3, MESSAGE , OPTIONAL, STATIC  , OTHER, openxc_SimpleMessage, event, value, &openxc_DynamicField_fields),
     PB_LAST_FIELD
 };
 
index 38107b3..5b36bd4 100644 (file)
@@ -1,5 +1,5 @@
 /* Automatically generated nanopb header */
-/* Generated by nanopb-0.3.1 at Mon Oct  6 23:12:27 2014. */
+/* Generated by nanopb-0.3.1 at Mon Oct  6 23:25:12 2014. */
 
 #ifndef PB_OPENXC_PB_H_INCLUDED
 #define PB_OPENXC_PB_H_INCLUDED
@@ -58,15 +58,6 @@ typedef enum _openxc_DynamicField_Type {
     openxc_DynamicField_Type_BOOL = 3
 } openxc_DynamicField_Type;
 
-typedef enum _openxc_SimpleMessage_Type {
-    openxc_SimpleMessage_Type_STRING = 1,
-    openxc_SimpleMessage_Type_NUM = 2,
-    openxc_SimpleMessage_Type_BOOL = 3,
-    openxc_SimpleMessage_Type_EVENTED_STRING = 4,
-    openxc_SimpleMessage_Type_EVENTED_NUM = 5,
-    openxc_SimpleMessage_Type_EVENTED_BOOL = 6
-} openxc_SimpleMessage_Type;
-
 /* Struct definitions */
 typedef struct _openxc_AcceptanceFilterBypassCommand {
     bool has_bus;
@@ -174,8 +165,6 @@ typedef struct _openxc_DiagnosticControlCommand {
 } openxc_DiagnosticControlCommand;
 
 typedef struct _openxc_SimpleMessage {
-    bool has_type;
-    openxc_SimpleMessage_Type type;
     pb_callback_t name;
     bool has_value;
     openxc_DynamicField value;
@@ -228,7 +217,7 @@ typedef struct _openxc_VehicleMessage {
 #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}
 #define openxc_DynamicField_init_default         {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
-#define openxc_SimpleMessage_init_default        {false, (openxc_SimpleMessage_Type)0, {{NULL}, NULL}, false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
+#define openxc_SimpleMessage_init_default        {{{NULL}, NULL}, false, openxc_DynamicField_init_default, false, openxc_DynamicField_init_default}
 #define openxc_VehicleMessage_init_zero          {false, (openxc_VehicleMessage_Type)0, false, openxc_CanMessage_init_zero, false, openxc_SimpleMessage_init_zero, false, openxc_DiagnosticResponse_init_zero, false, openxc_ControlCommand_init_zero, false, openxc_CommandResponse_init_zero}
 #define openxc_CanMessage_init_zero              {false, 0, false, 0, {{NULL}, NULL}, false, (openxc_CanMessage_FrameFormat)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, false, openxc_PayloadFormatCommand_init_zero, false, openxc_PredefinedObd2RequestsCommand_init_zero}
@@ -241,7 +230,7 @@ typedef struct _openxc_VehicleMessage {
 #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}
 #define openxc_DynamicField_init_zero            {false, (openxc_DynamicField_Type)0, false, "", false, 0, false, 0}
-#define openxc_SimpleMessage_init_zero           {false, (openxc_SimpleMessage_Type)0, {{NULL}, NULL}, false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
+#define openxc_SimpleMessage_init_zero           {{{NULL}, NULL}, false, openxc_DynamicField_init_zero, false, openxc_DynamicField_init_zero}
 
 /* Field tags (for use in manual encoding/decoding) */
 #define openxc_AcceptanceFilterBypassCommand_bus_tag 1
@@ -280,10 +269,9 @@ typedef struct _openxc_VehicleMessage {
 #define openxc_PredefinedObd2RequestsCommand_enabled_tag 1
 #define openxc_DiagnosticControlCommand_request_tag 1
 #define openxc_DiagnosticControlCommand_action_tag 2
-#define openxc_SimpleMessage_type_tag            1
-#define openxc_SimpleMessage_name_tag            2
-#define openxc_SimpleMessage_value_tag           3
-#define openxc_SimpleMessage_event_tag           4
+#define openxc_SimpleMessage_name_tag            1
+#define openxc_SimpleMessage_value_tag           2
+#define openxc_SimpleMessage_event_tag           3
 #define openxc_ControlCommand_type_tag           1
 #define openxc_ControlCommand_diagnostic_request_tag 2
 #define openxc_ControlCommand_passthrough_mode_request_tag 3
@@ -310,7 +298,7 @@ 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];
 extern const pb_field_t openxc_DynamicField_fields[5];
-extern const pb_field_t openxc_SimpleMessage_fields[5];
+extern const pb_field_t openxc_SimpleMessage_fields[4];
 
 /* Maximum encoded size of messages (where known) */
 #define openxc_ControlCommand_size               126
index cb49929..c495c7a 100644 (file)
@@ -9941,56 +9941,46 @@ public final class BinaryMessages {
   public interface SimpleMessageOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
 
-    // optional .openxc.SimpleMessage.Type type = 1;
+    // optional string name = 1;
     /**
-     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-     */
-    boolean hasType();
-    /**
-     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-     */
-    com.openxc.BinaryMessages.SimpleMessage.Type getType();
-
-    // optional string name = 2;
-    /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     boolean hasName();
     /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     java.lang.String getName();
     /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     com.google.protobuf.ByteString
         getNameBytes();
 
-    // optional .openxc.DynamicField value = 3;
+    // optional .openxc.DynamicField value = 2;
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     boolean hasValue();
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     com.openxc.BinaryMessages.DynamicField getValue();
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     com.openxc.BinaryMessages.DynamicFieldOrBuilder getValueOrBuilder();
 
-    // optional .openxc.DynamicField event = 4;
+    // optional .openxc.DynamicField event = 3;
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     boolean hasEvent();
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     com.openxc.BinaryMessages.DynamicField getEvent();
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     com.openxc.BinaryMessages.DynamicFieldOrBuilder getEventOrBuilder();
   }
@@ -10045,25 +10035,14 @@ public final class BinaryMessages {
               }
               break;
             }
-            case 8: {
-              int rawValue = input.readEnum();
-              com.openxc.BinaryMessages.SimpleMessage.Type value = com.openxc.BinaryMessages.SimpleMessage.Type.valueOf(rawValue);
-              if (value == null) {
-                unknownFields.mergeVarintField(1, rawValue);
-              } else {
-                bitField0_ |= 0x00000001;
-                type_ = value;
-              }
-              break;
-            }
-            case 18: {
-              bitField0_ |= 0x00000002;
+            case 10: {
+              bitField0_ |= 0x00000001;
               name_ = input.readBytes();
               break;
             }
-            case 26: {
+            case 18: {
               com.openxc.BinaryMessages.DynamicField.Builder subBuilder = null;
-              if (((bitField0_ & 0x00000004) == 0x00000004)) {
+              if (((bitField0_ & 0x00000002) == 0x00000002)) {
                 subBuilder = value_.toBuilder();
               }
               value_ = input.readMessage(com.openxc.BinaryMessages.DynamicField.PARSER, extensionRegistry);
@@ -10071,12 +10050,12 @@ public final class BinaryMessages {
                 subBuilder.mergeFrom(value_);
                 value_ = subBuilder.buildPartial();
               }
-              bitField0_ |= 0x00000004;
+              bitField0_ |= 0x00000002;
               break;
             }
-            case 34: {
+            case 26: {
               com.openxc.BinaryMessages.DynamicField.Builder subBuilder = null;
-              if (((bitField0_ & 0x00000008) == 0x00000008)) {
+              if (((bitField0_ & 0x00000004) == 0x00000004)) {
                 subBuilder = event_.toBuilder();
               }
               event_ = input.readMessage(com.openxc.BinaryMessages.DynamicField.PARSER, extensionRegistry);
@@ -10084,7 +10063,7 @@ public final class BinaryMessages {
                 subBuilder.mergeFrom(event_);
                 event_ = subBuilder.buildPartial();
               }
-              bitField0_ |= 0x00000008;
+              bitField0_ |= 0x00000004;
               break;
             }
           }
@@ -10126,152 +10105,18 @@ public final class BinaryMessages {
       return PARSER;
     }
 
-    /**
-     * Protobuf enum {@code openxc.SimpleMessage.Type}
-     */
-    public enum Type
-        implements com.google.protobuf.ProtocolMessageEnum {
-      /**
-       * <code>STRING = 1;</code>
-       */
-      STRING(0, 1),
-      /**
-       * <code>NUM = 2;</code>
-       */
-      NUM(1, 2),
-      /**
-       * <code>BOOL = 3;</code>
-       */
-      BOOL(2, 3),
-      /**
-       * <code>EVENTED_STRING = 4;</code>
-       */
-      EVENTED_STRING(3, 4),
-      /**
-       * <code>EVENTED_NUM = 5;</code>
-       */
-      EVENTED_NUM(4, 5),
-      /**
-       * <code>EVENTED_BOOL = 6;</code>
-       */
-      EVENTED_BOOL(5, 6),
-      ;
-
-      /**
-       * <code>STRING = 1;</code>
-       */
-      public static final int STRING_VALUE = 1;
-      /**
-       * <code>NUM = 2;</code>
-       */
-      public static final int NUM_VALUE = 2;
-      /**
-       * <code>BOOL = 3;</code>
-       */
-      public static final int BOOL_VALUE = 3;
-      /**
-       * <code>EVENTED_STRING = 4;</code>
-       */
-      public static final int EVENTED_STRING_VALUE = 4;
-      /**
-       * <code>EVENTED_NUM = 5;</code>
-       */
-      public static final int EVENTED_NUM_VALUE = 5;
-      /**
-       * <code>EVENTED_BOOL = 6;</code>
-       */
-      public static final int EVENTED_BOOL_VALUE = 6;
-
-
-      public final int getNumber() { return value; }
-
-      public static Type valueOf(int value) {
-        switch (value) {
-          case 1: return STRING;
-          case 2: return NUM;
-          case 3: return BOOL;
-          case 4: return EVENTED_STRING;
-          case 5: return EVENTED_NUM;
-          case 6: return EVENTED_BOOL;
-          default: return null;
-        }
-      }
-
-      public static com.google.protobuf.Internal.EnumLiteMap<Type>
-          internalGetValueMap() {
-        return internalValueMap;
-      }
-      private static com.google.protobuf.Internal.EnumLiteMap<Type>
-          internalValueMap =
-            new com.google.protobuf.Internal.EnumLiteMap<Type>() {
-              public Type findValueByNumber(int number) {
-                return Type.valueOf(number);
-              }
-            };
-
-      public final com.google.protobuf.Descriptors.EnumValueDescriptor
-          getValueDescriptor() {
-        return getDescriptor().getValues().get(index);
-      }
-      public final com.google.protobuf.Descriptors.EnumDescriptor
-          getDescriptorForType() {
-        return getDescriptor();
-      }
-      public static final com.google.protobuf.Descriptors.EnumDescriptor
-          getDescriptor() {
-        return com.openxc.BinaryMessages.SimpleMessage.getDescriptor().getEnumTypes().get(0);
-      }
-
-      private static final Type[] VALUES = values();
-
-      public static Type valueOf(
-          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
-        if (desc.getType() != getDescriptor()) {
-          throw new java.lang.IllegalArgumentException(
-            "EnumValueDescriptor is not for this type.");
-        }
-        return VALUES[desc.getIndex()];
-      }
-
-      private final int index;
-      private final int value;
-
-      private Type(int index, int value) {
-        this.index = index;
-        this.value = value;
-      }
-
-      // @@protoc_insertion_point(enum_scope:openxc.SimpleMessage.Type)
-    }
-
     private int bitField0_;
-    // optional .openxc.SimpleMessage.Type type = 1;
-    public static final int TYPE_FIELD_NUMBER = 1;
-    private com.openxc.BinaryMessages.SimpleMessage.Type type_;
-    /**
-     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-     */
-    public boolean hasType() {
-      return ((bitField0_ & 0x00000001) == 0x00000001);
-    }
-    /**
-     * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-     */
-    public com.openxc.BinaryMessages.SimpleMessage.Type getType() {
-      return type_;
-    }
-
-    // optional string name = 2;
-    public static final int NAME_FIELD_NUMBER = 2;
+    // optional string name = 1;
+    public static final int NAME_FIELD_NUMBER = 1;
     private java.lang.Object name_;
     /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     public boolean hasName() {
-      return ((bitField0_ & 0x00000002) == 0x00000002);
+      return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     public java.lang.String getName() {
       java.lang.Object ref = name_;
@@ -10288,7 +10133,7 @@ public final class BinaryMessages {
       }
     }
     /**
-     * <code>optional string name = 2;</code>
+     * <code>optional string name = 1;</code>
      */
     public com.google.protobuf.ByteString
         getNameBytes() {
@@ -10304,52 +10149,51 @@ public final class BinaryMessages {
       }
     }
 
-    // optional .openxc.DynamicField value = 3;
-    public static final int VALUE_FIELD_NUMBER = 3;
+    // optional .openxc.DynamicField value = 2;
+    public static final int VALUE_FIELD_NUMBER = 2;
     private com.openxc.BinaryMessages.DynamicField value_;
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     public boolean hasValue() {
-      return ((bitField0_ & 0x00000004) == 0x00000004);
+      return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     public com.openxc.BinaryMessages.DynamicField getValue() {
       return value_;
     }
     /**
-     * <code>optional .openxc.DynamicField value = 3;</code>
+     * <code>optional .openxc.DynamicField value = 2;</code>
      */
     public com.openxc.BinaryMessages.DynamicFieldOrBuilder getValueOrBuilder() {
       return value_;
     }
 
-    // optional .openxc.DynamicField event = 4;
-    public static final int EVENT_FIELD_NUMBER = 4;
+    // optional .openxc.DynamicField event = 3;
+    public static final int EVENT_FIELD_NUMBER = 3;
     private com.openxc.BinaryMessages.DynamicField event_;
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     public boolean hasEvent() {
-      return ((bitField0_ & 0x00000008) == 0x00000008);
+      return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     public com.openxc.BinaryMessages.DynamicField getEvent() {
       return event_;
     }
     /**
-     * <code>optional .openxc.DynamicField event = 4;</code>
+     * <code>optional .openxc.DynamicField event = 3;</code>
      */
     public com.openxc.BinaryMessages.DynamicFieldOrBuilder getEventOrBuilder() {
       return event_;
     }
 
     private void initFields() {
-      type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
       name_ = "";
       value_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
       event_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
@@ -10367,16 +10211,13 @@ public final class BinaryMessages {
                         throws java.io.IOException {
       getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, type_.getNumber());
+        output.writeBytes(1, getNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeBytes(2, getNameBytes());
+        output.writeMessage(2, value_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, value_);
-      }
-      if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeMessage(4, event_);
+        output.writeMessage(3, event_);
       }
       getUnknownFields().writeTo(output);
     }
@@ -10389,19 +10230,15 @@ public final class BinaryMessages {
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, type_.getNumber());
+          .computeBytesSize(1, getNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeBytesSize(2, getNameBytes());
+          .computeMessageSize(2, value_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, value_);
-      }
-      if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, event_);
+          .computeMessageSize(3, event_);
       }
       size += getUnknownFields().getSerializedSize();
       memoizedSerializedSize = size;
@@ -10521,22 +10358,20 @@ public final class BinaryMessages {
 
       public Builder clear() {
         super.clear();
-        type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
-        bitField0_ = (bitField0_ & ~0x00000001);
         name_ = "";
-        bitField0_ = (bitField0_ & ~0x00000002);
+        bitField0_ = (bitField0_ & ~0x00000001);
         if (valueBuilder_ == null) {
           value_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
         } else {
           valueBuilder_.clear();
         }
-        bitField0_ = (bitField0_ & ~0x00000004);
+        bitField0_ = (bitField0_ & ~0x00000002);
         if (eventBuilder_ == null) {
           event_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
         } else {
           eventBuilder_.clear();
         }
-        bitField0_ = (bitField0_ & ~0x00000008);
+        bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
 
@@ -10568,21 +10403,17 @@ public final class BinaryMessages {
         if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
           to_bitField0_ |= 0x00000001;
         }
-        result.type_ = type_;
+        result.name_ = name_;
         if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
           to_bitField0_ |= 0x00000002;
         }
-        result.name_ = name_;
-        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
-          to_bitField0_ |= 0x00000004;
-        }
         if (valueBuilder_ == null) {
           result.value_ = value_;
         } else {
           result.value_ = valueBuilder_.build();
         }
-        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
-          to_bitField0_ |= 0x00000008;
+        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
+          to_bitField0_ |= 0x00000004;
         }
         if (eventBuilder_ == null) {
           result.event_ = event_;
@@ -10605,11 +10436,8 @@ public final class BinaryMessages {
 
       public Builder mergeFrom(com.openxc.BinaryMessages.SimpleMessage other) {
         if (other == com.openxc.BinaryMessages.SimpleMessage.getDefaultInstance()) return this;
-        if (other.hasType()) {
-          setType(other.getType());
-        }
         if (other.hasName()) {
-          bitField0_ |= 0x00000002;
+          bitField0_ |= 0x00000001;
           name_ = other.name_;
           onChanged();
         }
@@ -10646,52 +10474,16 @@ public final class BinaryMessages {
       }
       private int bitField0_;
 
-      // optional .openxc.SimpleMessage.Type type = 1;
-      private com.openxc.BinaryMessages.SimpleMessage.Type type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
-      /**
-       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-       */
-      public boolean hasType() {
-        return ((bitField0_ & 0x00000001) == 0x00000001);
-      }
-      /**
-       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-       */
-      public com.openxc.BinaryMessages.SimpleMessage.Type getType() {
-        return type_;
-      }
-      /**
-       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-       */
-      public Builder setType(com.openxc.BinaryMessages.SimpleMessage.Type value) {
-        if (value == null) {
-          throw new NullPointerException();
-        }
-        bitField0_ |= 0x00000001;
-        type_ = value;
-        onChanged();
-        return this;
-      }
-      /**
-       * <code>optional .openxc.SimpleMessage.Type type = 1;</code>
-       */
-      public Builder clearType() {
-        bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = com.openxc.BinaryMessages.SimpleMessage.Type.STRING;
-        onChanged();
-        return this;
-      }
-
-      // optional string name = 2;
+      // optional string name = 1;
       private java.lang.Object name_ = "";
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public boolean hasName() {
-        return ((bitField0_ & 0x00000002) == 0x00000002);
+        return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public java.lang.String getName() {
         java.lang.Object ref = name_;
@@ -10705,7 +10497,7 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public com.google.protobuf.ByteString
           getNameBytes() {
@@ -10721,53 +10513,53 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public Builder setName(
           java.lang.String value) {
         if (value == null) {
     throw new NullPointerException();
   }
-  bitField0_ |= 0x00000002;
+  bitField0_ |= 0x00000001;
         name_ = value;
         onChanged();
         return this;
       }
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public Builder clearName() {
-        bitField0_ = (bitField0_ & ~0x00000002);
+        bitField0_ = (bitField0_ & ~0x00000001);
         name_ = getDefaultInstance().getName();
         onChanged();
         return this;
       }
       /**
-       * <code>optional string name = 2;</code>
+       * <code>optional string name = 1;</code>
        */
       public Builder setNameBytes(
           com.google.protobuf.ByteString value) {
         if (value == null) {
     throw new NullPointerException();
   }
-  bitField0_ |= 0x00000002;
+  bitField0_ |= 0x00000001;
         name_ = value;
         onChanged();
         return this;
       }
 
-      // optional .openxc.DynamicField value = 3;
+      // optional .openxc.DynamicField value = 2;
       private com.openxc.BinaryMessages.DynamicField value_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           com.openxc.BinaryMessages.DynamicField, com.openxc.BinaryMessages.DynamicField.Builder, com.openxc.BinaryMessages.DynamicFieldOrBuilder> valueBuilder_;
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public boolean hasValue() {
-        return ((bitField0_ & 0x00000004) == 0x00000004);
+        return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public com.openxc.BinaryMessages.DynamicField getValue() {
         if (valueBuilder_ == null) {
@@ -10777,7 +10569,7 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public Builder setValue(com.openxc.BinaryMessages.DynamicField value) {
         if (valueBuilder_ == null) {
@@ -10789,11 +10581,11 @@ public final class BinaryMessages {
         } else {
           valueBuilder_.setMessage(value);
         }
-        bitField0_ |= 0x00000004;
+        bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public Builder setValue(
           com.openxc.BinaryMessages.DynamicField.Builder builderForValue) {
@@ -10803,15 +10595,15 @@ public final class BinaryMessages {
         } else {
           valueBuilder_.setMessage(builderForValue.build());
         }
-        bitField0_ |= 0x00000004;
+        bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public Builder mergeValue(com.openxc.BinaryMessages.DynamicField value) {
         if (valueBuilder_ == null) {
-          if (((bitField0_ & 0x00000004) == 0x00000004) &&
+          if (((bitField0_ & 0x00000002) == 0x00000002) &&
               value_ != com.openxc.BinaryMessages.DynamicField.getDefaultInstance()) {
             value_ =
               com.openxc.BinaryMessages.DynamicField.newBuilder(value_).mergeFrom(value).buildPartial();
@@ -10822,11 +10614,11 @@ public final class BinaryMessages {
         } else {
           valueBuilder_.mergeFrom(value);
         }
-        bitField0_ |= 0x00000004;
+        bitField0_ |= 0x00000002;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public Builder clearValue() {
         if (valueBuilder_ == null) {
@@ -10835,19 +10627,19 @@ public final class BinaryMessages {
         } else {
           valueBuilder_.clear();
         }
-        bitField0_ = (bitField0_ & ~0x00000004);
+        bitField0_ = (bitField0_ & ~0x00000002);
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public com.openxc.BinaryMessages.DynamicField.Builder getValueBuilder() {
-        bitField0_ |= 0x00000004;
+        bitField0_ |= 0x00000002;
         onChanged();
         return getValueFieldBuilder().getBuilder();
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       public com.openxc.BinaryMessages.DynamicFieldOrBuilder getValueOrBuilder() {
         if (valueBuilder_ != null) {
@@ -10857,7 +10649,7 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional .openxc.DynamicField value = 3;</code>
+       * <code>optional .openxc.DynamicField value = 2;</code>
        */
       private com.google.protobuf.SingleFieldBuilder<
           com.openxc.BinaryMessages.DynamicField, com.openxc.BinaryMessages.DynamicField.Builder, com.openxc.BinaryMessages.DynamicFieldOrBuilder> 
@@ -10873,18 +10665,18 @@ public final class BinaryMessages {
         return valueBuilder_;
       }
 
-      // optional .openxc.DynamicField event = 4;
+      // optional .openxc.DynamicField event = 3;
       private com.openxc.BinaryMessages.DynamicField event_ = com.openxc.BinaryMessages.DynamicField.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           com.openxc.BinaryMessages.DynamicField, com.openxc.BinaryMessages.DynamicField.Builder, com.openxc.BinaryMessages.DynamicFieldOrBuilder> eventBuilder_;
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public boolean hasEvent() {
-        return ((bitField0_ & 0x00000008) == 0x00000008);
+        return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public com.openxc.BinaryMessages.DynamicField getEvent() {
         if (eventBuilder_ == null) {
@@ -10894,7 +10686,7 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public Builder setEvent(com.openxc.BinaryMessages.DynamicField value) {
         if (eventBuilder_ == null) {
@@ -10906,11 +10698,11 @@ public final class BinaryMessages {
         } else {
           eventBuilder_.setMessage(value);
         }
-        bitField0_ |= 0x00000008;
+        bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public Builder setEvent(
           com.openxc.BinaryMessages.DynamicField.Builder builderForValue) {
@@ -10920,15 +10712,15 @@ public final class BinaryMessages {
         } else {
           eventBuilder_.setMessage(builderForValue.build());
         }
-        bitField0_ |= 0x00000008;
+        bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public Builder mergeEvent(com.openxc.BinaryMessages.DynamicField value) {
         if (eventBuilder_ == null) {
-          if (((bitField0_ & 0x00000008) == 0x00000008) &&
+          if (((bitField0_ & 0x00000004) == 0x00000004) &&
               event_ != com.openxc.BinaryMessages.DynamicField.getDefaultInstance()) {
             event_ =
               com.openxc.BinaryMessages.DynamicField.newBuilder(event_).mergeFrom(value).buildPartial();
@@ -10939,11 +10731,11 @@ public final class BinaryMessages {
         } else {
           eventBuilder_.mergeFrom(value);
         }
-        bitField0_ |= 0x00000008;
+        bitField0_ |= 0x00000004;
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public Builder clearEvent() {
         if (eventBuilder_ == null) {
@@ -10952,19 +10744,19 @@ public final class BinaryMessages {
         } else {
           eventBuilder_.clear();
         }
-        bitField0_ = (bitField0_ & ~0x00000008);
+        bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public com.openxc.BinaryMessages.DynamicField.Builder getEventBuilder() {
-        bitField0_ |= 0x00000008;
+        bitField0_ |= 0x00000004;
         onChanged();
         return getEventFieldBuilder().getBuilder();
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       public com.openxc.BinaryMessages.DynamicFieldOrBuilder getEventOrBuilder() {
         if (eventBuilder_ != null) {
@@ -10974,7 +10766,7 @@ public final class BinaryMessages {
         }
       }
       /**
-       * <code>optional .openxc.DynamicField event = 4;</code>
+       * <code>optional .openxc.DynamicField event = 3;</code>
        */
       private com.google.protobuf.SingleFieldBuilder<
           com.openxc.BinaryMessages.DynamicField, com.openxc.BinaryMessages.DynamicField.Builder, com.openxc.BinaryMessages.DynamicFieldOrBuilder> 
@@ -11132,13 +10924,10 @@ public final class BinaryMessages {
       "nxc.DynamicField.Type\022\024\n\014string_value\030\002 " +
       "\001(\t\022\025\n\rnumeric_value\030\003 \001(\001\022\025\n\rboolean_va" +
       "lue\030\004 \001(\010\"%\n\004Type\022\n\n\006STRING\020\001\022\007\n\003NUM\020\002\022\010" +
-      "\n\004BOOL\020\003\"\357\001\n\rSimpleMessage\022(\n\004type\030\001 \001(\016" +
-      "2\032.openxc.SimpleMessage.Type\022\014\n\004name\030\002 \001" +
-      "(\t\022#\n\005value\030\003 \001(\0132\024.openxc.DynamicField\022",
-      "#\n\005event\030\004 \001(\0132\024.openxc.DynamicField\"\\\n\004" +
-      "Type\022\n\n\006STRING\020\001\022\007\n\003NUM\020\002\022\010\n\004BOOL\020\003\022\022\n\016E" +
-      "VENTED_STRING\020\004\022\017\n\013EVENTED_NUM\020\005\022\020\n\014EVEN" +
-      "TED_BOOL\020\006B\034\n\ncom.openxcB\016BinaryMessages"
+      "\n\004BOOL\020\003\"g\n\rSimpleMessage\022\014\n\004name\030\001 \001(\t\022" +
+      "#\n\005value\030\002 \001(\0132\024.openxc.DynamicField\022#\n\005" +
+      "event\030\003 \001(\0132\024.openxc.DynamicFieldB\034\n\ncom",
+      ".openxcB\016BinaryMessages"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
       new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
@@ -11222,7 +11011,7 @@ public final class BinaryMessages {
           internal_static_openxc_SimpleMessage_fieldAccessorTable = new
             com.google.protobuf.GeneratedMessage.FieldAccessorTable(
               internal_static_openxc_SimpleMessage_descriptor,
-              new java.lang.String[] { "Type", "Name", "Value", "Event", });
+              new java.lang.String[] { "Name", "Value", "Event", });
           return null;
         }
       };
index 8b1ee79..4c5ff5c 100644 (file)
@@ -13,7 +13,7 @@ from google.protobuf import descriptor_pb2
 DESCRIPTOR = _descriptor.FileDescriptor(
   name='openxc.proto',
   package='openxc',
-  serialized_pb='\n\x0copenxc.proto\x12\x06openxc\"\x88\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\"V\n\x04Type\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\x9c\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\")\n\x0b\x46rameFormat\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xb8\x04\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\"\x93\x01\n\x04Type\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\"\x9e\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\"\x1d\n\x06\x41\x63tion\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"{\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"\'\n\rPayloadFormat\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\xfd\x01\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"!\n\x0b\x44\x65\x63odedType\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xa1\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12\r\n\x05value\x18\x08 \x01(\x01\"\xa2\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"%\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"\xef\x01\n\rSimpleMessage\x12(\n\x04type\x18\x01 \x01(\x0e\x32\x1a.openxc.SimpleMessage.Type\x12\x0c\n\x04name\x18\x02 \x01(\t\x12#\n\x05value\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x04 \x01(\x0b\x32\x14.openxc.DynamicField\"\\\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\x12\x12\n\x0e\x45VENTED_STRING\x10\x04\x12\x0f\n\x0b\x45VENTED_NUM\x10\x05\x12\x10\n\x0c\x45VENTED_BOOL\x10\x06\x42\x1c\n\ncom.openxcB\x0e\x42inaryMessages')
+  serialized_pb='\n\x0copenxc.proto\x12\x06openxc\"\x88\x03\n\x0eVehicleMessage\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.VehicleMessage.Type\x12\'\n\x0b\x63\x61n_message\x18\x02 \x01(\x0b\x32\x12.openxc.CanMessage\x12-\n\x0esimple_message\x18\x03 \x01(\x0b\x32\x15.openxc.SimpleMessage\x12\x37\n\x13\x64iagnostic_response\x18\x04 \x01(\x0b\x32\x1a.openxc.DiagnosticResponse\x12/\n\x0f\x63ontrol_command\x18\x05 \x01(\x0b\x32\x16.openxc.ControlCommand\x12\x31\n\x10\x63ommand_response\x18\x06 \x01(\x0b\x32\x17.openxc.CommandResponse\"V\n\x04Type\x12\x07\n\x03\x43\x41N\x10\x01\x12\n\n\x06SIMPLE\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x13\n\x0f\x43ONTROL_COMMAND\x10\x04\x12\x14\n\x10\x43OMMAND_RESPONSE\x10\x05\"\x9c\x01\n\nCanMessage\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x34\n\x0c\x66rame_format\x18\x04 \x01(\x0e\x32\x1e.openxc.CanMessage.FrameFormat\")\n\x0b\x46rameFormat\x12\x0c\n\x08STANDARD\x10\x01\x12\x0c\n\x08\x45XTENDED\x10\x02\"\xb8\x04\n\x0e\x43ontrolCommand\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12<\n\x12\x64iagnostic_request\x18\x02 \x01(\x0b\x32 .openxc.DiagnosticControlCommand\x12G\n\x18passthrough_mode_request\x18\x03 \x01(\x0b\x32%.openxc.PassthroughModeControlCommand\x12O\n acceptance_filter_bypass_command\x18\x04 \x01(\x0b\x32%.openxc.AcceptanceFilterBypassCommand\x12<\n\x16payload_format_command\x18\x05 \x01(\x0b\x32\x1c.openxc.PayloadFormatCommand\x12O\n predefined_obd2_requests_command\x18\x06 \x01(\x0b\x32%.openxc.PredefinedObd2RequestsCommand\"\x93\x01\n\x04Type\x12\x0b\n\x07VERSION\x10\x01\x12\r\n\tDEVICE_ID\x10\x02\x12\x0e\n\nDIAGNOSTIC\x10\x03\x12\x0f\n\x0bPASSTHROUGH\x10\x04\x12\x1c\n\x18\x41\x43\x43\x45PTANCE_FILTER_BYPASS\x10\x05\x12\x12\n\x0ePAYLOAD_FORMAT\x10\x06\x12\x1c\n\x18PREDEFINED_OBD2_REQUESTS\x10\x07\"\x9e\x01\n\x18\x44iagnosticControlCommand\x12*\n\x07request\x18\x01 \x01(\x0b\x32\x19.openxc.DiagnosticRequest\x12\x37\n\x06\x61\x63tion\x18\x02 \x01(\x0e\x32\'.openxc.DiagnosticControlCommand.Action\"\x1d\n\x06\x41\x63tion\x12\x07\n\x03\x41\x44\x44\x10\x01\x12\n\n\x06\x43\x41NCEL\x10\x02\"=\n\x1dPassthroughModeControlCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"<\n\x1d\x41\x63\x63\x65ptanceFilterBypassCommand\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x0e\n\x06\x62ypass\x18\x02 \x01(\x08\"{\n\x14PayloadFormatCommand\x12:\n\x06\x66ormat\x18\x01 \x01(\x0e\x32*.openxc.PayloadFormatCommand.PayloadFormat\"\'\n\rPayloadFormat\x12\x08\n\x04JSON\x10\x01\x12\x0c\n\x08PROTOBUF\x10\x02\"0\n\x1dPredefinedObd2RequestsCommand\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\"]\n\x0f\x43ommandResponse\x12)\n\x04type\x18\x01 \x01(\x0e\x32\x1b.openxc.ControlCommand.Type\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x08\"\xfd\x01\n\x11\x44iagnosticRequest\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07payload\x18\x05 \x01(\x0c\x12\x1a\n\x12multiple_responses\x18\x06 \x01(\x08\x12\x11\n\tfrequency\x18\x07 \x01(\x01\x12\x0c\n\x04name\x18\x08 \x01(\t\x12;\n\x0c\x64\x65\x63oded_type\x18\t \x01(\x0e\x32%.openxc.DiagnosticRequest.DecodedType\"!\n\x0b\x44\x65\x63odedType\x12\x08\n\x04NONE\x10\x01\x12\x08\n\x04OBD2\x10\x02\"\xa1\x01\n\x12\x44iagnosticResponse\x12\x0b\n\x03\x62us\x18\x01 \x01(\x05\x12\x12\n\nmessage_id\x18\x02 \x01(\r\x12\x0c\n\x04mode\x18\x03 \x01(\r\x12\x0b\n\x03pid\x18\x04 \x01(\r\x12\x0f\n\x07success\x18\x05 \x01(\x08\x12\x1e\n\x16negative_response_code\x18\x06 \x01(\r\x12\x0f\n\x07payload\x18\x07 \x01(\x0c\x12\r\n\x05value\x18\x08 \x01(\x01\"\xa2\x01\n\x0c\x44ynamicField\x12\'\n\x04type\x18\x01 \x01(\x0e\x32\x19.openxc.DynamicField.Type\x12\x14\n\x0cstring_value\x18\x02 \x01(\t\x12\x15\n\rnumeric_value\x18\x03 \x01(\x01\x12\x15\n\rboolean_value\x18\x04 \x01(\x08\"%\n\x04Type\x12\n\n\x06STRING\x10\x01\x12\x07\n\x03NUM\x10\x02\x12\x08\n\x04\x42OOL\x10\x03\"g\n\rSimpleMessage\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x05value\x18\x02 \x01(\x0b\x32\x14.openxc.DynamicField\x12#\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x14.openxc.DynamicFieldB\x1c\n\ncom.openxcB\x0e\x42inaryMessages')
 
 
 
@@ -200,43 +200,6 @@ _DYNAMICFIELD_TYPE = _descriptor.EnumDescriptor(
   serialized_end=2288,
 )
 
-_SIMPLEMESSAGE_TYPE = _descriptor.EnumDescriptor(
-  name='Type',
-  full_name='openxc.SimpleMessage.Type',
-  filename=None,
-  file=DESCRIPTOR,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='STRING', index=0, number=1,
-      options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='NUM', index=1, number=2,
-      options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='BOOL', index=2, number=3,
-      options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='EVENTED_STRING', index=3, number=4,
-      options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='EVENTED_NUM', index=4, number=5,
-      options=None,
-      type=None),
-    _descriptor.EnumValueDescriptor(
-      name='EVENTED_BOOL', index=5, number=6,
-      options=None,
-      type=None),
-  ],
-  containing_type=None,
-  options=None,
-  serialized_start=2438,
-  serialized_end=2530,
-)
-
 
 _VEHICLEMESSAGE = _descriptor.Descriptor(
   name='VehicleMessage',
@@ -841,29 +804,22 @@ _SIMPLEMESSAGE = _descriptor.Descriptor(
   containing_type=None,
   fields=[
     _descriptor.FieldDescriptor(
-      name='type', full_name='openxc.SimpleMessage.type', index=0,
-      number=1, type=14, cpp_type=8, label=1,
-      has_default_value=False, default_value=1,
-      message_type=None, enum_type=None, containing_type=None,
-      is_extension=False, extension_scope=None,
-      options=None),
-    _descriptor.FieldDescriptor(
-      name='name', full_name='openxc.SimpleMessage.name', index=1,
-      number=2, type=9, cpp_type=9, label=1,
+      name='name', full_name='openxc.SimpleMessage.name', index=0,
+      number=1, type=9, cpp_type=9, label=1,
       has_default_value=False, default_value=unicode("", "utf-8"),
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='value', full_name='openxc.SimpleMessage.value', index=2,
-      number=3, type=11, cpp_type=10, label=1,
+      name='value', full_name='openxc.SimpleMessage.value', index=1,
+      number=2, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
       options=None),
     _descriptor.FieldDescriptor(
-      name='event', full_name='openxc.SimpleMessage.event', index=3,
-      number=4, type=11, cpp_type=10, label=1,
+      name='event', full_name='openxc.SimpleMessage.event', index=2,
+      number=3, type=11, cpp_type=10, label=1,
       has_default_value=False, default_value=None,
       message_type=None, enum_type=None, containing_type=None,
       is_extension=False, extension_scope=None,
@@ -873,13 +829,12 @@ _SIMPLEMESSAGE = _descriptor.Descriptor(
   ],
   nested_types=[],
   enum_types=[
-    _SIMPLEMESSAGE_TYPE,
   ],
   options=None,
   is_extendable=False,
   extension_ranges=[],
-  serialized_start=2291,
-  serialized_end=2530,
+  serialized_start=2290,
+  serialized_end=2393,
 )
 
 _VEHICLEMESSAGE.fields_by_name['type'].enum_type = _VEHICLEMESSAGE_TYPE
@@ -908,10 +863,8 @@ _DIAGNOSTICREQUEST.fields_by_name['decoded_type'].enum_type = _DIAGNOSTICREQUEST
 _DIAGNOSTICREQUEST_DECODEDTYPE.containing_type = _DIAGNOSTICREQUEST;
 _DYNAMICFIELD.fields_by_name['type'].enum_type = _DYNAMICFIELD_TYPE
 _DYNAMICFIELD_TYPE.containing_type = _DYNAMICFIELD;
-_SIMPLEMESSAGE.fields_by_name['type'].enum_type = _SIMPLEMESSAGE_TYPE
 _SIMPLEMESSAGE.fields_by_name['value'].message_type = _DYNAMICFIELD
 _SIMPLEMESSAGE.fields_by_name['event'].message_type = _DYNAMICFIELD
-_SIMPLEMESSAGE_TYPE.containing_type = _SIMPLEMESSAGE;
 DESCRIPTOR.message_types_by_name['VehicleMessage'] = _VEHICLEMESSAGE
 DESCRIPTOR.message_types_by_name['CanMessage'] = _CANMESSAGE
 DESCRIPTOR.message_types_by_name['ControlCommand'] = _CONTROLCOMMAND
index 3becaa5..252f214 100644 (file)
@@ -120,13 +120,9 @@ message DynamicField {
 }
 
 message SimpleMessage {
-    enum Type { STRING = 1; NUM = 2; BOOL = 3;
-        EVENTED_STRING = 4; EVENTED_NUM = 5; EVENTED_BOOL = 6;}
-
-    optional Type type = 1;
-    optional string name = 2;
-    optional DynamicField value = 3;
-    optional DynamicField event = 4;
+    optional string name = 1;
+    optional DynamicField value = 2;
+    optional DynamicField event = 3;
 }
 
 // TODO we should also consider having an enum type, having each specific