// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: proto/processing/processingModule.proto

package ubii.processing;

public final class ProcessingModuleOuterClass {
  private ProcessingModuleOuterClass() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface ProcessingModeOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingMode)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    boolean hasFrequency();
    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getFrequency();
    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder getFrequencyOrBuilder();

    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    boolean hasLockstep();
    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getLockstep();
    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder getLockstepOrBuilder();

    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    boolean hasTriggerOnInput();
    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getTriggerOnInput();
    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder getTriggerOnInputOrBuilder();

    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.ModeCase getModeCase();
  }
  /**
   * Protobuf type {@code ubii.processing.ProcessingMode}
   */
  public  static final class ProcessingMode extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingMode)
      ProcessingModeOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProcessingMode.newBuilder() to construct.
    private ProcessingMode(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ProcessingMode() {
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProcessingMode(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder subBuilder = null;
              if (modeCase_ == 1) {
                subBuilder = ((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_).toBuilder();
              }
              mode_ =
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_);
                mode_ = subBuilder.buildPartial();
              }
              modeCase_ = 1;
              break;
            }
            case 18: {
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder subBuilder = null;
              if (modeCase_ == 2) {
                subBuilder = ((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_).toBuilder();
              }
              mode_ =
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_);
                mode_ = subBuilder.buildPartial();
              }
              modeCase_ = 2;
              break;
            }
            case 26: {
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder subBuilder = null;
              if (modeCase_ == 3) {
                subBuilder = ((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_).toBuilder();
              }
              mode_ =
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_);
                mode_ = subBuilder.buildPartial();
              }
              modeCase_ = 3;
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder.class);
    }

    public interface FrequencyOrBuilder extends
        // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingMode.Frequency)
        com.google.protobuf.MessageOrBuilder {

      /**
       * <code>int32 hertz = 1;</code>
       */
      int getHertz();
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingMode.Frequency}
     */
    public  static final class Frequency extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingMode.Frequency)
        FrequencyOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use Frequency.newBuilder() to construct.
      private Frequency(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private Frequency() {
        hertz_ = 0;
      }

      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private Frequency(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 8: {

                hertz_ = input.readInt32();
                break;
              }
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Frequency_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Frequency_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder.class);
      }

      public static final int HERTZ_FIELD_NUMBER = 1;
      private int hertz_;
      /**
       * <code>int32 hertz = 1;</code>
       */
      public int getHertz() {
        return hertz_;
      }

      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      @java.lang.Override
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (hertz_ != 0) {
          output.writeInt32(1, hertz_);
        }
        unknownFields.writeTo(output);
      }

      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;

        size = 0;
        if (hertz_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt32Size(1, hertz_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }

      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency)) {
          return super.equals(obj);
        }
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency other = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) obj;

        boolean result = true;
        result = result && (getHertz()
            == other.getHertz());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }

      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + HERTZ_FIELD_NUMBER;
        hash = (53 * hash) + getHertz();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }

      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      @java.lang.Override
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code ubii.processing.ProcessingMode.Frequency}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingMode.Frequency)
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Frequency_descriptor;
        }

        @java.lang.Override
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Frequency_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder.class);
        }

        // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          hertz_ = 0;

          return this;
        }

        @java.lang.Override
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Frequency_descriptor;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getDefaultInstanceForType() {
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency build() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency buildPartial() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency result = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency(this);
          result.hertz_ = hertz_;
          onBuilt();
          return result;
        }

        @java.lang.Override
        public Builder clone() {
          return (Builder) super.clone();
        }
        @java.lang.Override
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        @java.lang.Override
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        @java.lang.Override
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        @java.lang.Override
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        @java.lang.Override
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        @java.lang.Override
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) {
            return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency other) {
          if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance()) return this;
          if (other.getHertz() != 0) {
            setHertz(other.getHertz());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }

        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }

        @java.lang.Override
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }

        private int hertz_ ;
        /**
         * <code>int32 hertz = 1;</code>
         */
        public int getHertz() {
          return hertz_;
        }
        /**
         * <code>int32 hertz = 1;</code>
         */
        public Builder setHertz(int value) {
          
          hertz_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>int32 hertz = 1;</code>
         */
        public Builder clearHertz() {
          
          hertz_ = 0;
          onChanged();
          return this;
        }
        @java.lang.Override
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }

        @java.lang.Override
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }


        // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingMode.Frequency)
      }

      // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingMode.Frequency)
      private static final ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency();
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static final com.google.protobuf.Parser<Frequency>
          PARSER = new com.google.protobuf.AbstractParser<Frequency>() {
        @java.lang.Override
        public Frequency parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new Frequency(input, extensionRegistry);
        }
      };

      public static com.google.protobuf.Parser<Frequency> parser() {
        return PARSER;
      }

      @java.lang.Override
      public com.google.protobuf.Parser<Frequency> getParserForType() {
        return PARSER;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }

    }

    public interface LockstepOrBuilder extends
        // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingMode.Lockstep)
        com.google.protobuf.MessageOrBuilder {

      /**
       * <code>string process_request_endpoint = 1;</code>
       */
      java.lang.String getProcessRequestEndpoint();
      /**
       * <code>string process_request_endpoint = 1;</code>
       */
      com.google.protobuf.ByteString
          getProcessRequestEndpointBytes();
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingMode.Lockstep}
     */
    public  static final class Lockstep extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingMode.Lockstep)
        LockstepOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use Lockstep.newBuilder() to construct.
      private Lockstep(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private Lockstep() {
        processRequestEndpoint_ = "";
      }

      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private Lockstep(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();

                processRequestEndpoint_ = s;
                break;
              }
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Lockstep_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder.class);
      }

      public static final int PROCESS_REQUEST_ENDPOINT_FIELD_NUMBER = 1;
      private volatile java.lang.Object processRequestEndpoint_;
      /**
       * <code>string process_request_endpoint = 1;</code>
       */
      public java.lang.String getProcessRequestEndpoint() {
        java.lang.Object ref = processRequestEndpoint_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          processRequestEndpoint_ = s;
          return s;
        }
      }
      /**
       * <code>string process_request_endpoint = 1;</code>
       */
      public com.google.protobuf.ByteString
          getProcessRequestEndpointBytes() {
        java.lang.Object ref = processRequestEndpoint_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          processRequestEndpoint_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }

      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      @java.lang.Override
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getProcessRequestEndpointBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, processRequestEndpoint_);
        }
        unknownFields.writeTo(output);
      }

      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;

        size = 0;
        if (!getProcessRequestEndpointBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, processRequestEndpoint_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }

      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep)) {
          return super.equals(obj);
        }
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep other = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) obj;

        boolean result = true;
        result = result && getProcessRequestEndpoint()
            .equals(other.getProcessRequestEndpoint());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }

      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + PROCESS_REQUEST_ENDPOINT_FIELD_NUMBER;
        hash = (53 * hash) + getProcessRequestEndpoint().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }

      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      @java.lang.Override
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code ubii.processing.ProcessingMode.Lockstep}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingMode.Lockstep)
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor;
        }

        @java.lang.Override
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Lockstep_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder.class);
        }

        // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          processRequestEndpoint_ = "";

          return this;
        }

        @java.lang.Override
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getDefaultInstanceForType() {
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep build() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep buildPartial() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep result = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep(this);
          result.processRequestEndpoint_ = processRequestEndpoint_;
          onBuilt();
          return result;
        }

        @java.lang.Override
        public Builder clone() {
          return (Builder) super.clone();
        }
        @java.lang.Override
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        @java.lang.Override
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        @java.lang.Override
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        @java.lang.Override
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        @java.lang.Override
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        @java.lang.Override
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) {
            return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep other) {
          if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance()) return this;
          if (!other.getProcessRequestEndpoint().isEmpty()) {
            processRequestEndpoint_ = other.processRequestEndpoint_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }

        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }

        @java.lang.Override
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }

        private java.lang.Object processRequestEndpoint_ = "";
        /**
         * <code>string process_request_endpoint = 1;</code>
         */
        public java.lang.String getProcessRequestEndpoint() {
          java.lang.Object ref = processRequestEndpoint_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            processRequestEndpoint_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string process_request_endpoint = 1;</code>
         */
        public com.google.protobuf.ByteString
            getProcessRequestEndpointBytes() {
          java.lang.Object ref = processRequestEndpoint_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            processRequestEndpoint_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string process_request_endpoint = 1;</code>
         */
        public Builder setProcessRequestEndpoint(
            java.lang.String value) {
          if (value == null) {
    throw new NullPointerException();
  }
  
          processRequestEndpoint_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string process_request_endpoint = 1;</code>
         */
        public Builder clearProcessRequestEndpoint() {
          
          processRequestEndpoint_ = getDefaultInstance().getProcessRequestEndpoint();
          onChanged();
          return this;
        }
        /**
         * <code>string process_request_endpoint = 1;</code>
         */
        public Builder setProcessRequestEndpointBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
          
          processRequestEndpoint_ = value;
          onChanged();
          return this;
        }
        @java.lang.Override
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }

        @java.lang.Override
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }


        // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingMode.Lockstep)
      }

      // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingMode.Lockstep)
      private static final ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep();
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static final com.google.protobuf.Parser<Lockstep>
          PARSER = new com.google.protobuf.AbstractParser<Lockstep>() {
        @java.lang.Override
        public Lockstep parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new Lockstep(input, extensionRegistry);
        }
      };

      public static com.google.protobuf.Parser<Lockstep> parser() {
        return PARSER;
      }

      @java.lang.Override
      public com.google.protobuf.Parser<Lockstep> getParserForType() {
        return PARSER;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }

    }

    public interface TriggerOnInputOrBuilder extends
        // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingMode.TriggerOnInput)
        com.google.protobuf.MessageOrBuilder {

      /**
       * <code>int32 min_delay_ms = 1;</code>
       */
      int getMinDelayMs();

      /**
       * <code>bool all_inputs_need_update = 2;</code>
       */
      boolean getAllInputsNeedUpdate();
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingMode.TriggerOnInput}
     */
    public  static final class TriggerOnInput extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingMode.TriggerOnInput)
        TriggerOnInputOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use TriggerOnInput.newBuilder() to construct.
      private TriggerOnInput(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private TriggerOnInput() {
        minDelayMs_ = 0;
        allInputsNeedUpdate_ = false;
      }

      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private TriggerOnInput(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 8: {

                minDelayMs_ = input.readInt32();
                break;
              }
              case 16: {

                allInputsNeedUpdate_ = input.readBool();
                break;
              }
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_TriggerOnInput_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder.class);
      }

      public static final int MIN_DELAY_MS_FIELD_NUMBER = 1;
      private int minDelayMs_;
      /**
       * <code>int32 min_delay_ms = 1;</code>
       */
      public int getMinDelayMs() {
        return minDelayMs_;
      }

      public static final int ALL_INPUTS_NEED_UPDATE_FIELD_NUMBER = 2;
      private boolean allInputsNeedUpdate_;
      /**
       * <code>bool all_inputs_need_update = 2;</code>
       */
      public boolean getAllInputsNeedUpdate() {
        return allInputsNeedUpdate_;
      }

      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;

        memoizedIsInitialized = 1;
        return true;
      }

      @java.lang.Override
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (minDelayMs_ != 0) {
          output.writeInt32(1, minDelayMs_);
        }
        if (allInputsNeedUpdate_ != false) {
          output.writeBool(2, allInputsNeedUpdate_);
        }
        unknownFields.writeTo(output);
      }

      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;

        size = 0;
        if (minDelayMs_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeInt32Size(1, minDelayMs_);
        }
        if (allInputsNeedUpdate_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(2, allInputsNeedUpdate_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }

      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput)) {
          return super.equals(obj);
        }
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput other = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) obj;

        boolean result = true;
        result = result && (getMinDelayMs()
            == other.getMinDelayMs());
        result = result && (getAllInputsNeedUpdate()
            == other.getAllInputsNeedUpdate());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }

      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + MIN_DELAY_MS_FIELD_NUMBER;
        hash = (53 * hash) + getMinDelayMs();
        hash = (37 * hash) + ALL_INPUTS_NEED_UPDATE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getAllInputsNeedUpdate());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }

      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      @java.lang.Override
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }

      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code ubii.processing.ProcessingMode.TriggerOnInput}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingMode.TriggerOnInput)
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor;
        }

        @java.lang.Override
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_TriggerOnInput_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder.class);
        }

        // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }

        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          minDelayMs_ = 0;

          allInputsNeedUpdate_ = false;

          return this;
        }

        @java.lang.Override
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getDefaultInstanceForType() {
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput build() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }

        @java.lang.Override
        public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput buildPartial() {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput result = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput(this);
          result.minDelayMs_ = minDelayMs_;
          result.allInputsNeedUpdate_ = allInputsNeedUpdate_;
          onBuilt();
          return result;
        }

        @java.lang.Override
        public Builder clone() {
          return (Builder) super.clone();
        }
        @java.lang.Override
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        @java.lang.Override
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        @java.lang.Override
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        @java.lang.Override
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        @java.lang.Override
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        @java.lang.Override
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) {
            return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }

        public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput other) {
          if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance()) return this;
          if (other.getMinDelayMs() != 0) {
            setMinDelayMs(other.getMinDelayMs());
          }
          if (other.getAllInputsNeedUpdate() != false) {
            setAllInputsNeedUpdate(other.getAllInputsNeedUpdate());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }

        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }

        @java.lang.Override
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }

        private int minDelayMs_ ;
        /**
         * <code>int32 min_delay_ms = 1;</code>
         */
        public int getMinDelayMs() {
          return minDelayMs_;
        }
        /**
         * <code>int32 min_delay_ms = 1;</code>
         */
        public Builder setMinDelayMs(int value) {
          
          minDelayMs_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>int32 min_delay_ms = 1;</code>
         */
        public Builder clearMinDelayMs() {
          
          minDelayMs_ = 0;
          onChanged();
          return this;
        }

        private boolean allInputsNeedUpdate_ ;
        /**
         * <code>bool all_inputs_need_update = 2;</code>
         */
        public boolean getAllInputsNeedUpdate() {
          return allInputsNeedUpdate_;
        }
        /**
         * <code>bool all_inputs_need_update = 2;</code>
         */
        public Builder setAllInputsNeedUpdate(boolean value) {
          
          allInputsNeedUpdate_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool all_inputs_need_update = 2;</code>
         */
        public Builder clearAllInputsNeedUpdate() {
          
          allInputsNeedUpdate_ = false;
          onChanged();
          return this;
        }
        @java.lang.Override
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }

        @java.lang.Override
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }


        // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingMode.TriggerOnInput)
      }

      // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingMode.TriggerOnInput)
      private static final ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput();
      }

      public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }

      private static final com.google.protobuf.Parser<TriggerOnInput>
          PARSER = new com.google.protobuf.AbstractParser<TriggerOnInput>() {
        @java.lang.Override
        public TriggerOnInput parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new TriggerOnInput(input, extensionRegistry);
        }
      };

      public static com.google.protobuf.Parser<TriggerOnInput> parser() {
        return PARSER;
      }

      @java.lang.Override
      public com.google.protobuf.Parser<TriggerOnInput> getParserForType() {
        return PARSER;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }

    }

    private int modeCase_ = 0;
    private java.lang.Object mode_;
    public enum ModeCase
        implements com.google.protobuf.Internal.EnumLite {
      FREQUENCY(1),
      LOCKSTEP(2),
      TRIGGER_ON_INPUT(3),
      MODE_NOT_SET(0);
      private final int value;
      private ModeCase(int value) {
        this.value = value;
      }
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static ModeCase valueOf(int value) {
        return forNumber(value);
      }

      public static ModeCase forNumber(int value) {
        switch (value) {
          case 1: return FREQUENCY;
          case 2: return LOCKSTEP;
          case 3: return TRIGGER_ON_INPUT;
          case 0: return MODE_NOT_SET;
          default: return null;
        }
      }
      public int getNumber() {
        return this.value;
      }
    };

    public ModeCase
    getModeCase() {
      return ModeCase.forNumber(
          modeCase_);
    }

    public static final int FREQUENCY_FIELD_NUMBER = 1;
    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    public boolean hasFrequency() {
      return modeCase_ == 1;
    }
    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getFrequency() {
      if (modeCase_ == 1) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
    }
    /**
     * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder getFrequencyOrBuilder() {
      if (modeCase_ == 1) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
    }

    public static final int LOCKSTEP_FIELD_NUMBER = 2;
    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    public boolean hasLockstep() {
      return modeCase_ == 2;
    }
    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getLockstep() {
      if (modeCase_ == 2) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
    }
    /**
     * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder getLockstepOrBuilder() {
      if (modeCase_ == 2) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
    }

    public static final int TRIGGER_ON_INPUT_FIELD_NUMBER = 3;
    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    public boolean hasTriggerOnInput() {
      return modeCase_ == 3;
    }
    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getTriggerOnInput() {
      if (modeCase_ == 3) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
    }
    /**
     * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder getTriggerOnInputOrBuilder() {
      if (modeCase_ == 3) {
         return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_;
      }
      return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (modeCase_ == 1) {
        output.writeMessage(1, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_);
      }
      if (modeCase_ == 2) {
        output.writeMessage(2, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_);
      }
      if (modeCase_ == 3) {
        output.writeMessage(3, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (modeCase_ == 1) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_);
      }
      if (modeCase_ == 2) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_);
      }
      if (modeCase_ == 3) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(3, (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode)) {
        return super.equals(obj);
      }
      ubii.processing.ProcessingModuleOuterClass.ProcessingMode other = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode) obj;

      boolean result = true;
      result = result && getModeCase().equals(
          other.getModeCase());
      if (!result) return false;
      switch (modeCase_) {
        case 1:
          result = result && getFrequency()
              .equals(other.getFrequency());
          break;
        case 2:
          result = result && getLockstep()
              .equals(other.getLockstep());
          break;
        case 3:
          result = result && getTriggerOnInput()
              .equals(other.getTriggerOnInput());
          break;
        case 0:
        default:
      }
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      switch (modeCase_) {
        case 1:
          hash = (37 * hash) + FREQUENCY_FIELD_NUMBER;
          hash = (53 * hash) + getFrequency().hashCode();
          break;
        case 2:
          hash = (37 * hash) + LOCKSTEP_FIELD_NUMBER;
          hash = (53 * hash) + getLockstep().hashCode();
          break;
        case 3:
          hash = (37 * hash) + TRIGGER_ON_INPUT_FIELD_NUMBER;
          hash = (53 * hash) + getTriggerOnInput().hashCode();
          break;
        case 0:
        default:
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingMode prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingMode}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingMode)
        ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingMode.class, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder.class);
      }

      // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingMode.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        modeCase_ = 0;
        mode_ = null;
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingMode_descriptor;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode getDefaultInstanceForType() {
        return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.getDefaultInstance();
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode build() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode buildPartial() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode result = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode(this);
        if (modeCase_ == 1) {
          if (frequencyBuilder_ == null) {
            result.mode_ = mode_;
          } else {
            result.mode_ = frequencyBuilder_.build();
          }
        }
        if (modeCase_ == 2) {
          if (lockstepBuilder_ == null) {
            result.mode_ = mode_;
          } else {
            result.mode_ = lockstepBuilder_.build();
          }
        }
        if (modeCase_ == 3) {
          if (triggerOnInputBuilder_ == null) {
            result.mode_ = mode_;
          } else {
            result.mode_ = triggerOnInputBuilder_.build();
          }
        }
        result.modeCase_ = modeCase_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingMode) {
          return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingMode)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingMode other) {
        if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingMode.getDefaultInstance()) return this;
        switch (other.getModeCase()) {
          case FREQUENCY: {
            mergeFrequency(other.getFrequency());
            break;
          }
          case LOCKSTEP: {
            mergeLockstep(other.getLockstep());
            break;
          }
          case TRIGGER_ON_INPUT: {
            mergeTriggerOnInput(other.getTriggerOnInput());
            break;
          }
          case MODE_NOT_SET: {
            break;
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        ubii.processing.ProcessingModuleOuterClass.ProcessingMode parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingMode) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int modeCase_ = 0;
      private java.lang.Object mode_;
      public ModeCase
          getModeCase() {
        return ModeCase.forNumber(
            modeCase_);
      }

      public Builder clearMode() {
        modeCase_ = 0;
        mode_ = null;
        onChanged();
        return this;
      }


      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder> frequencyBuilder_;
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public boolean hasFrequency() {
        return modeCase_ == 1;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency getFrequency() {
        if (frequencyBuilder_ == null) {
          if (modeCase_ == 1) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
        } else {
          if (modeCase_ == 1) {
            return frequencyBuilder_.getMessage();
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public Builder setFrequency(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency value) {
        if (frequencyBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          mode_ = value;
          onChanged();
        } else {
          frequencyBuilder_.setMessage(value);
        }
        modeCase_ = 1;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public Builder setFrequency(
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder builderForValue) {
        if (frequencyBuilder_ == null) {
          mode_ = builderForValue.build();
          onChanged();
        } else {
          frequencyBuilder_.setMessage(builderForValue.build());
        }
        modeCase_ = 1;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public Builder mergeFrequency(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency value) {
        if (frequencyBuilder_ == null) {
          if (modeCase_ == 1 &&
              mode_ != ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance()) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.newBuilder((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_)
                .mergeFrom(value).buildPartial();
          } else {
            mode_ = value;
          }
          onChanged();
        } else {
          if (modeCase_ == 1) {
            frequencyBuilder_.mergeFrom(value);
          }
          frequencyBuilder_.setMessage(value);
        }
        modeCase_ = 1;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public Builder clearFrequency() {
        if (frequencyBuilder_ == null) {
          if (modeCase_ == 1) {
            modeCase_ = 0;
            mode_ = null;
            onChanged();
          }
        } else {
          if (modeCase_ == 1) {
            modeCase_ = 0;
            mode_ = null;
          }
          frequencyBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder getFrequencyBuilder() {
        return getFrequencyFieldBuilder().getBuilder();
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder getFrequencyOrBuilder() {
        if ((modeCase_ == 1) && (frequencyBuilder_ != null)) {
          return frequencyBuilder_.getMessageOrBuilder();
        } else {
          if (modeCase_ == 1) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Frequency frequency = 1;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder> 
          getFrequencyFieldBuilder() {
        if (frequencyBuilder_ == null) {
          if (!(modeCase_ == 1)) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.getDefaultInstance();
          }
          frequencyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.FrequencyOrBuilder>(
                  (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Frequency) mode_,
                  getParentForChildren(),
                  isClean());
          mode_ = null;
        }
        modeCase_ = 1;
        onChanged();;
        return frequencyBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder> lockstepBuilder_;
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public boolean hasLockstep() {
        return modeCase_ == 2;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep getLockstep() {
        if (lockstepBuilder_ == null) {
          if (modeCase_ == 2) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
        } else {
          if (modeCase_ == 2) {
            return lockstepBuilder_.getMessage();
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public Builder setLockstep(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep value) {
        if (lockstepBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          mode_ = value;
          onChanged();
        } else {
          lockstepBuilder_.setMessage(value);
        }
        modeCase_ = 2;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public Builder setLockstep(
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder builderForValue) {
        if (lockstepBuilder_ == null) {
          mode_ = builderForValue.build();
          onChanged();
        } else {
          lockstepBuilder_.setMessage(builderForValue.build());
        }
        modeCase_ = 2;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public Builder mergeLockstep(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep value) {
        if (lockstepBuilder_ == null) {
          if (modeCase_ == 2 &&
              mode_ != ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance()) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.newBuilder((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_)
                .mergeFrom(value).buildPartial();
          } else {
            mode_ = value;
          }
          onChanged();
        } else {
          if (modeCase_ == 2) {
            lockstepBuilder_.mergeFrom(value);
          }
          lockstepBuilder_.setMessage(value);
        }
        modeCase_ = 2;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public Builder clearLockstep() {
        if (lockstepBuilder_ == null) {
          if (modeCase_ == 2) {
            modeCase_ = 0;
            mode_ = null;
            onChanged();
          }
        } else {
          if (modeCase_ == 2) {
            modeCase_ = 0;
            mode_ = null;
          }
          lockstepBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder getLockstepBuilder() {
        return getLockstepFieldBuilder().getBuilder();
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder getLockstepOrBuilder() {
        if ((modeCase_ == 2) && (lockstepBuilder_ != null)) {
          return lockstepBuilder_.getMessageOrBuilder();
        } else {
          if (modeCase_ == 2) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.Lockstep lockstep = 2;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder> 
          getLockstepFieldBuilder() {
        if (lockstepBuilder_ == null) {
          if (!(modeCase_ == 2)) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.getDefaultInstance();
          }
          lockstepBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.LockstepOrBuilder>(
                  (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Lockstep) mode_,
                  getParentForChildren(),
                  isClean());
          mode_ = null;
        }
        modeCase_ = 2;
        onChanged();;
        return lockstepBuilder_;
      }

      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder> triggerOnInputBuilder_;
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public boolean hasTriggerOnInput() {
        return modeCase_ == 3;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput getTriggerOnInput() {
        if (triggerOnInputBuilder_ == null) {
          if (modeCase_ == 3) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
        } else {
          if (modeCase_ == 3) {
            return triggerOnInputBuilder_.getMessage();
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public Builder setTriggerOnInput(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput value) {
        if (triggerOnInputBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          mode_ = value;
          onChanged();
        } else {
          triggerOnInputBuilder_.setMessage(value);
        }
        modeCase_ = 3;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public Builder setTriggerOnInput(
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder builderForValue) {
        if (triggerOnInputBuilder_ == null) {
          mode_ = builderForValue.build();
          onChanged();
        } else {
          triggerOnInputBuilder_.setMessage(builderForValue.build());
        }
        modeCase_ = 3;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public Builder mergeTriggerOnInput(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput value) {
        if (triggerOnInputBuilder_ == null) {
          if (modeCase_ == 3 &&
              mode_ != ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance()) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.newBuilder((ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_)
                .mergeFrom(value).buildPartial();
          } else {
            mode_ = value;
          }
          onChanged();
        } else {
          if (modeCase_ == 3) {
            triggerOnInputBuilder_.mergeFrom(value);
          }
          triggerOnInputBuilder_.setMessage(value);
        }
        modeCase_ = 3;
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public Builder clearTriggerOnInput() {
        if (triggerOnInputBuilder_ == null) {
          if (modeCase_ == 3) {
            modeCase_ = 0;
            mode_ = null;
            onChanged();
          }
        } else {
          if (modeCase_ == 3) {
            modeCase_ = 0;
            mode_ = null;
          }
          triggerOnInputBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder getTriggerOnInputBuilder() {
        return getTriggerOnInputFieldBuilder().getBuilder();
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder getTriggerOnInputOrBuilder() {
        if ((modeCase_ == 3) && (triggerOnInputBuilder_ != null)) {
          return triggerOnInputBuilder_.getMessageOrBuilder();
        } else {
          if (modeCase_ == 3) {
            return (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_;
          }
          return ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode.TriggerOnInput trigger_on_input = 3;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder> 
          getTriggerOnInputFieldBuilder() {
        if (triggerOnInputBuilder_ == null) {
          if (!(modeCase_ == 3)) {
            mode_ = ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.getDefaultInstance();
          }
          triggerOnInputBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInputOrBuilder>(
                  (ubii.processing.ProcessingModuleOuterClass.ProcessingMode.TriggerOnInput) mode_,
                  getParentForChildren(),
                  isClean());
          mode_ = null;
        }
        modeCase_ = 3;
        onChanged();;
        return triggerOnInputBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingMode)
    }

    // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingMode)
    private static final ubii.processing.ProcessingModuleOuterClass.ProcessingMode DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingMode();
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingMode getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ProcessingMode>
        PARSER = new com.google.protobuf.AbstractParser<ProcessingMode>() {
      @java.lang.Override
      public ProcessingMode parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProcessingMode(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ProcessingMode> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ProcessingMode> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ModuleIOOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ubii.processing.ModuleIO)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>string internal_name = 1;</code>
     */
    java.lang.String getInternalName();
    /**
     * <code>string internal_name = 1;</code>
     */
    com.google.protobuf.ByteString
        getInternalNameBytes();

    /**
     * <code>string message_format = 2;</code>
     */
    java.lang.String getMessageFormat();
    /**
     * <code>string message_format = 2;</code>
     */
    com.google.protobuf.ByteString
        getMessageFormatBytes();
  }
  /**
   * Protobuf type {@code ubii.processing.ModuleIO}
   */
  public  static final class ModuleIO extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ubii.processing.ModuleIO)
      ModuleIOOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ModuleIO.newBuilder() to construct.
    private ModuleIO(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ModuleIO() {
      internalName_ = "";
      messageFormat_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ModuleIO(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              internalName_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              messageFormat_ = s;
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ModuleIO_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ModuleIO_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ubii.processing.ProcessingModuleOuterClass.ModuleIO.class, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder.class);
    }

    public static final int INTERNAL_NAME_FIELD_NUMBER = 1;
    private volatile java.lang.Object internalName_;
    /**
     * <code>string internal_name = 1;</code>
     */
    public java.lang.String getInternalName() {
      java.lang.Object ref = internalName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        internalName_ = s;
        return s;
      }
    }
    /**
     * <code>string internal_name = 1;</code>
     */
    public com.google.protobuf.ByteString
        getInternalNameBytes() {
      java.lang.Object ref = internalName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        internalName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int MESSAGE_FORMAT_FIELD_NUMBER = 2;
    private volatile java.lang.Object messageFormat_;
    /**
     * <code>string message_format = 2;</code>
     */
    public java.lang.String getMessageFormat() {
      java.lang.Object ref = messageFormat_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        messageFormat_ = s;
        return s;
      }
    }
    /**
     * <code>string message_format = 2;</code>
     */
    public com.google.protobuf.ByteString
        getMessageFormatBytes() {
      java.lang.Object ref = messageFormat_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        messageFormat_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getInternalNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, internalName_);
      }
      if (!getMessageFormatBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, messageFormat_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getInternalNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, internalName_);
      }
      if (!getMessageFormatBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, messageFormat_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ModuleIO)) {
        return super.equals(obj);
      }
      ubii.processing.ProcessingModuleOuterClass.ModuleIO other = (ubii.processing.ProcessingModuleOuterClass.ModuleIO) obj;

      boolean result = true;
      result = result && getInternalName()
          .equals(other.getInternalName());
      result = result && getMessageFormat()
          .equals(other.getMessageFormat());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + INTERNAL_NAME_FIELD_NUMBER;
      hash = (53 * hash) + getInternalName().hashCode();
      hash = (37 * hash) + MESSAGE_FORMAT_FIELD_NUMBER;
      hash = (53 * hash) + getMessageFormat().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ModuleIO prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ubii.processing.ModuleIO}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ubii.processing.ModuleIO)
        ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ModuleIO_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ModuleIO_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ModuleIO.class, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder.class);
      }

      // Construct using ubii.processing.ProcessingModuleOuterClass.ModuleIO.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        internalName_ = "";

        messageFormat_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ModuleIO_descriptor;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO getDefaultInstanceForType() {
        return ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance();
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO build() {
        ubii.processing.ProcessingModuleOuterClass.ModuleIO result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO buildPartial() {
        ubii.processing.ProcessingModuleOuterClass.ModuleIO result = new ubii.processing.ProcessingModuleOuterClass.ModuleIO(this);
        result.internalName_ = internalName_;
        result.messageFormat_ = messageFormat_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof ubii.processing.ProcessingModuleOuterClass.ModuleIO) {
          return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ModuleIO)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ModuleIO other) {
        if (other == ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance()) return this;
        if (!other.getInternalName().isEmpty()) {
          internalName_ = other.internalName_;
          onChanged();
        }
        if (!other.getMessageFormat().isEmpty()) {
          messageFormat_ = other.messageFormat_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        ubii.processing.ProcessingModuleOuterClass.ModuleIO parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ModuleIO) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }

      private java.lang.Object internalName_ = "";
      /**
       * <code>string internal_name = 1;</code>
       */
      public java.lang.String getInternalName() {
        java.lang.Object ref = internalName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          internalName_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string internal_name = 1;</code>
       */
      public com.google.protobuf.ByteString
          getInternalNameBytes() {
        java.lang.Object ref = internalName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          internalName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string internal_name = 1;</code>
       */
      public Builder setInternalName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        internalName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string internal_name = 1;</code>
       */
      public Builder clearInternalName() {
        
        internalName_ = getDefaultInstance().getInternalName();
        onChanged();
        return this;
      }
      /**
       * <code>string internal_name = 1;</code>
       */
      public Builder setInternalNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        internalName_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object messageFormat_ = "";
      /**
       * <code>string message_format = 2;</code>
       */
      public java.lang.String getMessageFormat() {
        java.lang.Object ref = messageFormat_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          messageFormat_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string message_format = 2;</code>
       */
      public com.google.protobuf.ByteString
          getMessageFormatBytes() {
        java.lang.Object ref = messageFormat_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          messageFormat_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string message_format = 2;</code>
       */
      public Builder setMessageFormat(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        messageFormat_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string message_format = 2;</code>
       */
      public Builder clearMessageFormat() {
        
        messageFormat_ = getDefaultInstance().getMessageFormat();
        onChanged();
        return this;
      }
      /**
       * <code>string message_format = 2;</code>
       */
      public Builder setMessageFormatBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        messageFormat_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:ubii.processing.ModuleIO)
    }

    // @@protoc_insertion_point(class_scope:ubii.processing.ModuleIO)
    private static final ubii.processing.ProcessingModuleOuterClass.ModuleIO DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ModuleIO();
    }

    public static ubii.processing.ProcessingModuleOuterClass.ModuleIO getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ModuleIO>
        PARSER = new com.google.protobuf.AbstractParser<ModuleIO>() {
      @java.lang.Override
      public ModuleIO parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ModuleIO(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ModuleIO> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ModuleIO> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public ubii.processing.ProcessingModuleOuterClass.ModuleIO getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ProcessingModuleOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingModule)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>string id = 1;</code>
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>string name = 2;</code>
     */
    java.lang.String getName();
    /**
     * <code>string name = 2;</code>
     */
    com.google.protobuf.ByteString
        getNameBytes();

    /**
     * <code>repeated string authors = 3;</code>
     */
    java.util.List<java.lang.String>
        getAuthorsList();
    /**
     * <code>repeated string authors = 3;</code>
     */
    int getAuthorsCount();
    /**
     * <code>repeated string authors = 3;</code>
     */
    java.lang.String getAuthors(int index);
    /**
     * <code>repeated string authors = 3;</code>
     */
    com.google.protobuf.ByteString
        getAuthorsBytes(int index);

    /**
     * <code>repeated string tags = 4;</code>
     */
    java.util.List<java.lang.String>
        getTagsList();
    /**
     * <code>repeated string tags = 4;</code>
     */
    int getTagsCount();
    /**
     * <code>repeated string tags = 4;</code>
     */
    java.lang.String getTags(int index);
    /**
     * <code>repeated string tags = 4;</code>
     */
    com.google.protobuf.ByteString
        getTagsBytes(int index);

    /**
     * <code>string description = 5;</code>
     */
    java.lang.String getDescription();
    /**
     * <code>string description = 5;</code>
     */
    com.google.protobuf.ByteString
        getDescriptionBytes();

    /**
     * <code>string node_id = 6;</code>
     */
    java.lang.String getNodeId();
    /**
     * <code>string node_id = 6;</code>
     */
    com.google.protobuf.ByteString
        getNodeIdBytes();

    /**
     * <code>string session_id = 7;</code>
     */
    java.lang.String getSessionId();
    /**
     * <code>string session_id = 7;</code>
     */
    com.google.protobuf.ByteString
        getSessionIdBytes();

    /**
     * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
     */
    int getStatusValue();
    /**
     * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status getStatus();

    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    boolean hasProcessingMode();
    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingMode getProcessingMode();
    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder getProcessingModeOrBuilder();

    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> 
        getInputsList();
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ModuleIO getInputs(int index);
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    int getInputsCount();
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
        getInputsOrBuilderList();
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getInputsOrBuilder(
        int index);

    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> 
        getOutputsList();
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ModuleIO getOutputs(int index);
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    int getOutputsCount();
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
        getOutputsOrBuilderList();
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getOutputsOrBuilder(
        int index);

    /**
     * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
     */
    int getLanguageValue();
    /**
     * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language getLanguage();

    /**
     * <code>string on_processing_stringified = 13;</code>
     */
    java.lang.String getOnProcessingStringified();
    /**
     * <code>string on_processing_stringified = 13;</code>
     */
    com.google.protobuf.ByteString
        getOnProcessingStringifiedBytes();

    /**
     * <code>string on_created_stringified = 14;</code>
     */
    java.lang.String getOnCreatedStringified();
    /**
     * <code>string on_created_stringified = 14;</code>
     */
    com.google.protobuf.ByteString
        getOnCreatedStringifiedBytes();

    /**
     * <code>string on_halted_stringified = 15;</code>
     */
    java.lang.String getOnHaltedStringified();
    /**
     * <code>string on_halted_stringified = 15;</code>
     */
    com.google.protobuf.ByteString
        getOnHaltedStringifiedBytes();

    /**
     * <code>string on_destroyed_stringified = 16;</code>
     */
    java.lang.String getOnDestroyedStringified();
    /**
     * <code>string on_destroyed_stringified = 16;</code>
     */
    com.google.protobuf.ByteString
        getOnDestroyedStringifiedBytes();
  }
  /**
   * Protobuf type {@code ubii.processing.ProcessingModule}
   */
  public  static final class ProcessingModule extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingModule)
      ProcessingModuleOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProcessingModule.newBuilder() to construct.
    private ProcessingModule(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ProcessingModule() {
      id_ = "";
      name_ = "";
      authors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      description_ = "";
      nodeId_ = "";
      sessionId_ = "";
      status_ = 0;
      inputs_ = java.util.Collections.emptyList();
      outputs_ = java.util.Collections.emptyList();
      language_ = 0;
      onProcessingStringified_ = "";
      onCreatedStringified_ = "";
      onHaltedStringified_ = "";
      onDestroyedStringified_ = "";
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProcessingModule(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              java.lang.String s = input.readStringRequireUtf8();

              id_ = s;
              break;
            }
            case 18: {
              java.lang.String s = input.readStringRequireUtf8();

              name_ = s;
              break;
            }
            case 26: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                authors_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000004;
              }
              authors_.add(s);
              break;
            }
            case 34: {
              java.lang.String s = input.readStringRequireUtf8();
              if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                tags_ = new com.google.protobuf.LazyStringArrayList();
                mutable_bitField0_ |= 0x00000008;
              }
              tags_.add(s);
              break;
            }
            case 42: {
              java.lang.String s = input.readStringRequireUtf8();

              description_ = s;
              break;
            }
            case 50: {
              java.lang.String s = input.readStringRequireUtf8();

              nodeId_ = s;
              break;
            }
            case 58: {
              java.lang.String s = input.readStringRequireUtf8();

              sessionId_ = s;
              break;
            }
            case 64: {
              int rawValue = input.readEnum();

              status_ = rawValue;
              break;
            }
            case 74: {
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder subBuilder = null;
              if (processingMode_ != null) {
                subBuilder = processingMode_.toBuilder();
              }
              processingMode_ = input.readMessage(ubii.processing.ProcessingModuleOuterClass.ProcessingMode.parser(), extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(processingMode_);
                processingMode_ = subBuilder.buildPartial();
              }

              break;
            }
            case 82: {
              if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                inputs_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ModuleIO>();
                mutable_bitField0_ |= 0x00000200;
              }
              inputs_.add(
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ModuleIO.parser(), extensionRegistry));
              break;
            }
            case 90: {
              if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
                outputs_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ModuleIO>();
                mutable_bitField0_ |= 0x00000400;
              }
              outputs_.add(
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ModuleIO.parser(), extensionRegistry));
              break;
            }
            case 96: {
              int rawValue = input.readEnum();

              language_ = rawValue;
              break;
            }
            case 106: {
              java.lang.String s = input.readStringRequireUtf8();

              onProcessingStringified_ = s;
              break;
            }
            case 114: {
              java.lang.String s = input.readStringRequireUtf8();

              onCreatedStringified_ = s;
              break;
            }
            case 122: {
              java.lang.String s = input.readStringRequireUtf8();

              onHaltedStringified_ = s;
              break;
            }
            case 130: {
              java.lang.String s = input.readStringRequireUtf8();

              onDestroyedStringified_ = s;
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
          authors_ = authors_.getUnmodifiableView();
        }
        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
          tags_ = tags_.getUnmodifiableView();
        }
        if (((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
          inputs_ = java.util.Collections.unmodifiableList(inputs_);
        }
        if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
          outputs_ = java.util.Collections.unmodifiableList(outputs_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModule_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModule_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ubii.processing.ProcessingModuleOuterClass.ProcessingModule.class, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder.class);
    }

    /**
     * Protobuf enum {@code ubii.processing.ProcessingModule.Status}
     */
    public enum Status
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>INITIALIZED = 0;</code>
       */
      INITIALIZED(0),
      /**
       * <code>CREATED = 1;</code>
       */
      CREATED(1),
      /**
       * <code>PROCESSING = 2;</code>
       */
      PROCESSING(2),
      /**
       * <code>HALTED = 3;</code>
       */
      HALTED(3),
      /**
       * <code>DESTROYED = 4;</code>
       */
      DESTROYED(4),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>INITIALIZED = 0;</code>
       */
      public static final int INITIALIZED_VALUE = 0;
      /**
       * <code>CREATED = 1;</code>
       */
      public static final int CREATED_VALUE = 1;
      /**
       * <code>PROCESSING = 2;</code>
       */
      public static final int PROCESSING_VALUE = 2;
      /**
       * <code>HALTED = 3;</code>
       */
      public static final int HALTED_VALUE = 3;
      /**
       * <code>DESTROYED = 4;</code>
       */
      public static final int DESTROYED_VALUE = 4;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }

      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Status valueOf(int value) {
        return forNumber(value);
      }

      public static Status forNumber(int value) {
        switch (value) {
          case 0: return INITIALIZED;
          case 1: return CREATED;
          case 2: return PROCESSING;
          case 3: return HALTED;
          case 4: return DESTROYED;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap<Status>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Status> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Status>() {
              public Status findValueByNumber(int number) {
                return Status.forNumber(number);
              }
            };

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDescriptor().getEnumTypes().get(0);
      }

      private static final Status[] VALUES = values();

      public static Status valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }

      private final int value;

      private Status(int value) {
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:ubii.processing.ProcessingModule.Status)
    }

    /**
     * Protobuf enum {@code ubii.processing.ProcessingModule.Language}
     */
    public enum Language
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>CPP = 0;</code>
       */
      CPP(0),
      /**
       * <code>PY = 1;</code>
       */
      PY(1),
      /**
       * <code>JS = 2;</code>
       */
      JS(2),
      /**
       * <code>CS = 3;</code>
       */
      CS(3),
      /**
       * <code>JAVA = 4;</code>
       */
      JAVA(4),
      UNRECOGNIZED(-1),
      ;

      /**
       * <code>CPP = 0;</code>
       */
      public static final int CPP_VALUE = 0;
      /**
       * <code>PY = 1;</code>
       */
      public static final int PY_VALUE = 1;
      /**
       * <code>JS = 2;</code>
       */
      public static final int JS_VALUE = 2;
      /**
       * <code>CS = 3;</code>
       */
      public static final int CS_VALUE = 3;
      /**
       * <code>JAVA = 4;</code>
       */
      public static final int JAVA_VALUE = 4;


      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }

      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Language valueOf(int value) {
        return forNumber(value);
      }

      public static Language forNumber(int value) {
        switch (value) {
          case 0: return CPP;
          case 1: return PY;
          case 2: return JS;
          case 3: return CS;
          case 4: return JAVA;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap<Language>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Language> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Language>() {
              public Language findValueByNumber(int number) {
                return Language.forNumber(number);
              }
            };

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDescriptor().getEnumTypes().get(1);
      }

      private static final Language[] VALUES = values();

      public static Language valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }

      private final int value;

      private Language(int value) {
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:ubii.processing.ProcessingModule.Language)
    }

    private int bitField0_;
    public static final int ID_FIELD_NUMBER = 1;
    private volatile java.lang.Object id_;
    /**
     * <code>string id = 1;</code>
     */
    public java.lang.String getId() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        id_ = s;
        return s;
      }
    }
    /**
     * <code>string id = 1;</code>
     */
    public com.google.protobuf.ByteString
        getIdBytes() {
      java.lang.Object ref = id_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        id_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int NAME_FIELD_NUMBER = 2;
    private volatile java.lang.Object name_;
    /**
     * <code>string name = 2;</code>
     */
    public java.lang.String getName() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        name_ = s;
        return s;
      }
    }
    /**
     * <code>string name = 2;</code>
     */
    public com.google.protobuf.ByteString
        getNameBytes() {
      java.lang.Object ref = name_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        name_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int AUTHORS_FIELD_NUMBER = 3;
    private com.google.protobuf.LazyStringList authors_;
    /**
     * <code>repeated string authors = 3;</code>
     */
    public com.google.protobuf.ProtocolStringList
        getAuthorsList() {
      return authors_;
    }
    /**
     * <code>repeated string authors = 3;</code>
     */
    public int getAuthorsCount() {
      return authors_.size();
    }
    /**
     * <code>repeated string authors = 3;</code>
     */
    public java.lang.String getAuthors(int index) {
      return authors_.get(index);
    }
    /**
     * <code>repeated string authors = 3;</code>
     */
    public com.google.protobuf.ByteString
        getAuthorsBytes(int index) {
      return authors_.getByteString(index);
    }

    public static final int TAGS_FIELD_NUMBER = 4;
    private com.google.protobuf.LazyStringList tags_;
    /**
     * <code>repeated string tags = 4;</code>
     */
    public com.google.protobuf.ProtocolStringList
        getTagsList() {
      return tags_;
    }
    /**
     * <code>repeated string tags = 4;</code>
     */
    public int getTagsCount() {
      return tags_.size();
    }
    /**
     * <code>repeated string tags = 4;</code>
     */
    public java.lang.String getTags(int index) {
      return tags_.get(index);
    }
    /**
     * <code>repeated string tags = 4;</code>
     */
    public com.google.protobuf.ByteString
        getTagsBytes(int index) {
      return tags_.getByteString(index);
    }

    public static final int DESCRIPTION_FIELD_NUMBER = 5;
    private volatile java.lang.Object description_;
    /**
     * <code>string description = 5;</code>
     */
    public java.lang.String getDescription() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        description_ = s;
        return s;
      }
    }
    /**
     * <code>string description = 5;</code>
     */
    public com.google.protobuf.ByteString
        getDescriptionBytes() {
      java.lang.Object ref = description_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        description_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int NODE_ID_FIELD_NUMBER = 6;
    private volatile java.lang.Object nodeId_;
    /**
     * <code>string node_id = 6;</code>
     */
    public java.lang.String getNodeId() {
      java.lang.Object ref = nodeId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        nodeId_ = s;
        return s;
      }
    }
    /**
     * <code>string node_id = 6;</code>
     */
    public com.google.protobuf.ByteString
        getNodeIdBytes() {
      java.lang.Object ref = nodeId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        nodeId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SESSION_ID_FIELD_NUMBER = 7;
    private volatile java.lang.Object sessionId_;
    /**
     * <code>string session_id = 7;</code>
     */
    public java.lang.String getSessionId() {
      java.lang.Object ref = sessionId_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        sessionId_ = s;
        return s;
      }
    }
    /**
     * <code>string session_id = 7;</code>
     */
    public com.google.protobuf.ByteString
        getSessionIdBytes() {
      java.lang.Object ref = sessionId_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        sessionId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int STATUS_FIELD_NUMBER = 8;
    private int status_;
    /**
     * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
     */
    public int getStatusValue() {
      return status_;
    }
    /**
     * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status getStatus() {
      @SuppressWarnings("deprecation")
      ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status result = ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.valueOf(status_);
      return result == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.UNRECOGNIZED : result;
    }

    public static final int PROCESSING_MODE_FIELD_NUMBER = 9;
    private ubii.processing.ProcessingModuleOuterClass.ProcessingMode processingMode_;
    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    public boolean hasProcessingMode() {
      return processingMode_ != null;
    }
    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingMode getProcessingMode() {
      return processingMode_ == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingMode.getDefaultInstance() : processingMode_;
    }
    /**
     * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder getProcessingModeOrBuilder() {
      return getProcessingMode();
    }

    public static final int INPUTS_FIELD_NUMBER = 10;
    private java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> inputs_;
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> getInputsList() {
      return inputs_;
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
        getInputsOrBuilderList() {
      return inputs_;
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    public int getInputsCount() {
      return inputs_.size();
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ModuleIO getInputs(int index) {
      return inputs_.get(index);
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getInputsOrBuilder(
        int index) {
      return inputs_.get(index);
    }

    public static final int OUTPUTS_FIELD_NUMBER = 11;
    private java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> outputs_;
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> getOutputsList() {
      return outputs_;
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
        getOutputsOrBuilderList() {
      return outputs_;
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    public int getOutputsCount() {
      return outputs_.size();
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ModuleIO getOutputs(int index) {
      return outputs_.get(index);
    }
    /**
     * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getOutputsOrBuilder(
        int index) {
      return outputs_.get(index);
    }

    public static final int LANGUAGE_FIELD_NUMBER = 12;
    private int language_;
    /**
     * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
     */
    public int getLanguageValue() {
      return language_;
    }
    /**
     * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language getLanguage() {
      @SuppressWarnings("deprecation")
      ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language result = ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.valueOf(language_);
      return result == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.UNRECOGNIZED : result;
    }

    public static final int ON_PROCESSING_STRINGIFIED_FIELD_NUMBER = 13;
    private volatile java.lang.Object onProcessingStringified_;
    /**
     * <code>string on_processing_stringified = 13;</code>
     */
    public java.lang.String getOnProcessingStringified() {
      java.lang.Object ref = onProcessingStringified_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        onProcessingStringified_ = s;
        return s;
      }
    }
    /**
     * <code>string on_processing_stringified = 13;</code>
     */
    public com.google.protobuf.ByteString
        getOnProcessingStringifiedBytes() {
      java.lang.Object ref = onProcessingStringified_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        onProcessingStringified_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ON_CREATED_STRINGIFIED_FIELD_NUMBER = 14;
    private volatile java.lang.Object onCreatedStringified_;
    /**
     * <code>string on_created_stringified = 14;</code>
     */
    public java.lang.String getOnCreatedStringified() {
      java.lang.Object ref = onCreatedStringified_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        onCreatedStringified_ = s;
        return s;
      }
    }
    /**
     * <code>string on_created_stringified = 14;</code>
     */
    public com.google.protobuf.ByteString
        getOnCreatedStringifiedBytes() {
      java.lang.Object ref = onCreatedStringified_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        onCreatedStringified_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ON_HALTED_STRINGIFIED_FIELD_NUMBER = 15;
    private volatile java.lang.Object onHaltedStringified_;
    /**
     * <code>string on_halted_stringified = 15;</code>
     */
    public java.lang.String getOnHaltedStringified() {
      java.lang.Object ref = onHaltedStringified_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        onHaltedStringified_ = s;
        return s;
      }
    }
    /**
     * <code>string on_halted_stringified = 15;</code>
     */
    public com.google.protobuf.ByteString
        getOnHaltedStringifiedBytes() {
      java.lang.Object ref = onHaltedStringified_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        onHaltedStringified_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int ON_DESTROYED_STRINGIFIED_FIELD_NUMBER = 16;
    private volatile java.lang.Object onDestroyedStringified_;
    /**
     * <code>string on_destroyed_stringified = 16;</code>
     */
    public java.lang.String getOnDestroyedStringified() {
      java.lang.Object ref = onDestroyedStringified_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        onDestroyedStringified_ = s;
        return s;
      }
    }
    /**
     * <code>string on_destroyed_stringified = 16;</code>
     */
    public com.google.protobuf.ByteString
        getOnDestroyedStringifiedBytes() {
      java.lang.Object ref = onDestroyedStringified_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        onDestroyedStringified_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (!getIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
      }
      for (int i = 0; i < authors_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, authors_.getRaw(i));
      }
      for (int i = 0; i < tags_.size(); i++) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, tags_.getRaw(i));
      }
      if (!getDescriptionBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, description_);
      }
      if (!getNodeIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, nodeId_);
      }
      if (!getSessionIdBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, sessionId_);
      }
      if (status_ != ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.INITIALIZED.getNumber()) {
        output.writeEnum(8, status_);
      }
      if (processingMode_ != null) {
        output.writeMessage(9, getProcessingMode());
      }
      for (int i = 0; i < inputs_.size(); i++) {
        output.writeMessage(10, inputs_.get(i));
      }
      for (int i = 0; i < outputs_.size(); i++) {
        output.writeMessage(11, outputs_.get(i));
      }
      if (language_ != ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.CPP.getNumber()) {
        output.writeEnum(12, language_);
      }
      if (!getOnProcessingStringifiedBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 13, onProcessingStringified_);
      }
      if (!getOnCreatedStringifiedBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 14, onCreatedStringified_);
      }
      if (!getOnHaltedStringifiedBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 15, onHaltedStringified_);
      }
      if (!getOnDestroyedStringifiedBytes().isEmpty()) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 16, onDestroyedStringified_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (!getIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
      }
      if (!getNameBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < authors_.size(); i++) {
          dataSize += computeStringSizeNoTag(authors_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getAuthorsList().size();
      }
      {
        int dataSize = 0;
        for (int i = 0; i < tags_.size(); i++) {
          dataSize += computeStringSizeNoTag(tags_.getRaw(i));
        }
        size += dataSize;
        size += 1 * getTagsList().size();
      }
      if (!getDescriptionBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, description_);
      }
      if (!getNodeIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, nodeId_);
      }
      if (!getSessionIdBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, sessionId_);
      }
      if (status_ != ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.INITIALIZED.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(8, status_);
      }
      if (processingMode_ != null) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(9, getProcessingMode());
      }
      for (int i = 0; i < inputs_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(10, inputs_.get(i));
      }
      for (int i = 0; i < outputs_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(11, outputs_.get(i));
      }
      if (language_ != ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.CPP.getNumber()) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(12, language_);
      }
      if (!getOnProcessingStringifiedBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, onProcessingStringified_);
      }
      if (!getOnCreatedStringifiedBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, onCreatedStringified_);
      }
      if (!getOnHaltedStringifiedBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, onHaltedStringified_);
      }
      if (!getOnDestroyedStringifiedBytes().isEmpty()) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, onDestroyedStringified_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingModule)) {
        return super.equals(obj);
      }
      ubii.processing.ProcessingModuleOuterClass.ProcessingModule other = (ubii.processing.ProcessingModuleOuterClass.ProcessingModule) obj;

      boolean result = true;
      result = result && getId()
          .equals(other.getId());
      result = result && getName()
          .equals(other.getName());
      result = result && getAuthorsList()
          .equals(other.getAuthorsList());
      result = result && getTagsList()
          .equals(other.getTagsList());
      result = result && getDescription()
          .equals(other.getDescription());
      result = result && getNodeId()
          .equals(other.getNodeId());
      result = result && getSessionId()
          .equals(other.getSessionId());
      result = result && status_ == other.status_;
      result = result && (hasProcessingMode() == other.hasProcessingMode());
      if (hasProcessingMode()) {
        result = result && getProcessingMode()
            .equals(other.getProcessingMode());
      }
      result = result && getInputsList()
          .equals(other.getInputsList());
      result = result && getOutputsList()
          .equals(other.getOutputsList());
      result = result && language_ == other.language_;
      result = result && getOnProcessingStringified()
          .equals(other.getOnProcessingStringified());
      result = result && getOnCreatedStringified()
          .equals(other.getOnCreatedStringified());
      result = result && getOnHaltedStringified()
          .equals(other.getOnHaltedStringified());
      result = result && getOnDestroyedStringified()
          .equals(other.getOnDestroyedStringified());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (37 * hash) + ID_FIELD_NUMBER;
      hash = (53 * hash) + getId().hashCode();
      hash = (37 * hash) + NAME_FIELD_NUMBER;
      hash = (53 * hash) + getName().hashCode();
      if (getAuthorsCount() > 0) {
        hash = (37 * hash) + AUTHORS_FIELD_NUMBER;
        hash = (53 * hash) + getAuthorsList().hashCode();
      }
      if (getTagsCount() > 0) {
        hash = (37 * hash) + TAGS_FIELD_NUMBER;
        hash = (53 * hash) + getTagsList().hashCode();
      }
      hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
      hash = (53 * hash) + getDescription().hashCode();
      hash = (37 * hash) + NODE_ID_FIELD_NUMBER;
      hash = (53 * hash) + getNodeId().hashCode();
      hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
      hash = (53 * hash) + getSessionId().hashCode();
      hash = (37 * hash) + STATUS_FIELD_NUMBER;
      hash = (53 * hash) + status_;
      if (hasProcessingMode()) {
        hash = (37 * hash) + PROCESSING_MODE_FIELD_NUMBER;
        hash = (53 * hash) + getProcessingMode().hashCode();
      }
      if (getInputsCount() > 0) {
        hash = (37 * hash) + INPUTS_FIELD_NUMBER;
        hash = (53 * hash) + getInputsList().hashCode();
      }
      if (getOutputsCount() > 0) {
        hash = (37 * hash) + OUTPUTS_FIELD_NUMBER;
        hash = (53 * hash) + getOutputsList().hashCode();
      }
      hash = (37 * hash) + LANGUAGE_FIELD_NUMBER;
      hash = (53 * hash) + language_;
      hash = (37 * hash) + ON_PROCESSING_STRINGIFIED_FIELD_NUMBER;
      hash = (53 * hash) + getOnProcessingStringified().hashCode();
      hash = (37 * hash) + ON_CREATED_STRINGIFIED_FIELD_NUMBER;
      hash = (53 * hash) + getOnCreatedStringified().hashCode();
      hash = (37 * hash) + ON_HALTED_STRINGIFIED_FIELD_NUMBER;
      hash = (53 * hash) + getOnHaltedStringified().hashCode();
      hash = (37 * hash) + ON_DESTROYED_STRINGIFIED_FIELD_NUMBER;
      hash = (53 * hash) + getOnDestroyedStringified().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingModule prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingModule}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingModule)
        ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModule_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModule_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingModule.class, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder.class);
      }

      // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingModule.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getInputsFieldBuilder();
          getOutputsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        id_ = "";

        name_ = "";

        authors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000004);
        tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000008);
        description_ = "";

        nodeId_ = "";

        sessionId_ = "";

        status_ = 0;

        if (processingModeBuilder_ == null) {
          processingMode_ = null;
        } else {
          processingMode_ = null;
          processingModeBuilder_ = null;
        }
        if (inputsBuilder_ == null) {
          inputs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
        } else {
          inputsBuilder_.clear();
        }
        if (outputsBuilder_ == null) {
          outputs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000400);
        } else {
          outputsBuilder_.clear();
        }
        language_ = 0;

        onProcessingStringified_ = "";

        onCreatedStringified_ = "";

        onHaltedStringified_ = "";

        onDestroyedStringified_ = "";

        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModule_descriptor;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule getDefaultInstanceForType() {
        return ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDefaultInstance();
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule build() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModule result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule buildPartial() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModule result = new ubii.processing.ProcessingModuleOuterClass.ProcessingModule(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        result.id_ = id_;
        result.name_ = name_;
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          authors_ = authors_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000004);
        }
        result.authors_ = authors_;
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          tags_ = tags_.getUnmodifiableView();
          bitField0_ = (bitField0_ & ~0x00000008);
        }
        result.tags_ = tags_;
        result.description_ = description_;
        result.nodeId_ = nodeId_;
        result.sessionId_ = sessionId_;
        result.status_ = status_;
        if (processingModeBuilder_ == null) {
          result.processingMode_ = processingMode_;
        } else {
          result.processingMode_ = processingModeBuilder_.build();
        }
        if (inputsBuilder_ == null) {
          if (((bitField0_ & 0x00000200) == 0x00000200)) {
            inputs_ = java.util.Collections.unmodifiableList(inputs_);
            bitField0_ = (bitField0_ & ~0x00000200);
          }
          result.inputs_ = inputs_;
        } else {
          result.inputs_ = inputsBuilder_.build();
        }
        if (outputsBuilder_ == null) {
          if (((bitField0_ & 0x00000400) == 0x00000400)) {
            outputs_ = java.util.Collections.unmodifiableList(outputs_);
            bitField0_ = (bitField0_ & ~0x00000400);
          }
          result.outputs_ = outputs_;
        } else {
          result.outputs_ = outputsBuilder_.build();
        }
        result.language_ = language_;
        result.onProcessingStringified_ = onProcessingStringified_;
        result.onCreatedStringified_ = onCreatedStringified_;
        result.onHaltedStringified_ = onHaltedStringified_;
        result.onDestroyedStringified_ = onDestroyedStringified_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingModule) {
          return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingModule)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingModule other) {
        if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDefaultInstance()) return this;
        if (!other.getId().isEmpty()) {
          id_ = other.id_;
          onChanged();
        }
        if (!other.getName().isEmpty()) {
          name_ = other.name_;
          onChanged();
        }
        if (!other.authors_.isEmpty()) {
          if (authors_.isEmpty()) {
            authors_ = other.authors_;
            bitField0_ = (bitField0_ & ~0x00000004);
          } else {
            ensureAuthorsIsMutable();
            authors_.addAll(other.authors_);
          }
          onChanged();
        }
        if (!other.tags_.isEmpty()) {
          if (tags_.isEmpty()) {
            tags_ = other.tags_;
            bitField0_ = (bitField0_ & ~0x00000008);
          } else {
            ensureTagsIsMutable();
            tags_.addAll(other.tags_);
          }
          onChanged();
        }
        if (!other.getDescription().isEmpty()) {
          description_ = other.description_;
          onChanged();
        }
        if (!other.getNodeId().isEmpty()) {
          nodeId_ = other.nodeId_;
          onChanged();
        }
        if (!other.getSessionId().isEmpty()) {
          sessionId_ = other.sessionId_;
          onChanged();
        }
        if (other.status_ != 0) {
          setStatusValue(other.getStatusValue());
        }
        if (other.hasProcessingMode()) {
          mergeProcessingMode(other.getProcessingMode());
        }
        if (inputsBuilder_ == null) {
          if (!other.inputs_.isEmpty()) {
            if (inputs_.isEmpty()) {
              inputs_ = other.inputs_;
              bitField0_ = (bitField0_ & ~0x00000200);
            } else {
              ensureInputsIsMutable();
              inputs_.addAll(other.inputs_);
            }
            onChanged();
          }
        } else {
          if (!other.inputs_.isEmpty()) {
            if (inputsBuilder_.isEmpty()) {
              inputsBuilder_.dispose();
              inputsBuilder_ = null;
              inputs_ = other.inputs_;
              bitField0_ = (bitField0_ & ~0x00000200);
              inputsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getInputsFieldBuilder() : null;
            } else {
              inputsBuilder_.addAllMessages(other.inputs_);
            }
          }
        }
        if (outputsBuilder_ == null) {
          if (!other.outputs_.isEmpty()) {
            if (outputs_.isEmpty()) {
              outputs_ = other.outputs_;
              bitField0_ = (bitField0_ & ~0x00000400);
            } else {
              ensureOutputsIsMutable();
              outputs_.addAll(other.outputs_);
            }
            onChanged();
          }
        } else {
          if (!other.outputs_.isEmpty()) {
            if (outputsBuilder_.isEmpty()) {
              outputsBuilder_.dispose();
              outputsBuilder_ = null;
              outputs_ = other.outputs_;
              bitField0_ = (bitField0_ & ~0x00000400);
              outputsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getOutputsFieldBuilder() : null;
            } else {
              outputsBuilder_.addAllMessages(other.outputs_);
            }
          }
        }
        if (other.language_ != 0) {
          setLanguageValue(other.getLanguageValue());
        }
        if (!other.getOnProcessingStringified().isEmpty()) {
          onProcessingStringified_ = other.onProcessingStringified_;
          onChanged();
        }
        if (!other.getOnCreatedStringified().isEmpty()) {
          onCreatedStringified_ = other.onCreatedStringified_;
          onChanged();
        }
        if (!other.getOnHaltedStringified().isEmpty()) {
          onHaltedStringified_ = other.onHaltedStringified_;
          onChanged();
        }
        if (!other.getOnDestroyedStringified().isEmpty()) {
          onDestroyedStringified_ = other.onDestroyedStringified_;
          onChanged();
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModule parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingModule) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.lang.Object id_ = "";
      /**
       * <code>string id = 1;</code>
       */
      public java.lang.String getId() {
        java.lang.Object ref = id_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          id_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string id = 1;</code>
       */
      public com.google.protobuf.ByteString
          getIdBytes() {
        java.lang.Object ref = id_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          id_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string id = 1;</code>
       */
      public Builder setId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        id_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       */
      public Builder clearId() {
        
        id_ = getDefaultInstance().getId();
        onChanged();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        id_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object name_ = "";
      /**
       * <code>string name = 2;</code>
       */
      public java.lang.String getName() {
        java.lang.Object ref = name_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          name_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       */
      public com.google.protobuf.ByteString
          getNameBytes() {
        java.lang.Object ref = name_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          name_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string name = 2;</code>
       */
      public Builder setName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        name_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       */
      public Builder clearName() {
        
        name_ = getDefaultInstance().getName();
        onChanged();
        return this;
      }
      /**
       * <code>string name = 2;</code>
       */
      public Builder setNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        name_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.LazyStringList authors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureAuthorsIsMutable() {
        if (!((bitField0_ & 0x00000004) == 0x00000004)) {
          authors_ = new com.google.protobuf.LazyStringArrayList(authors_);
          bitField0_ |= 0x00000004;
         }
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getAuthorsList() {
        return authors_.getUnmodifiableView();
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public int getAuthorsCount() {
        return authors_.size();
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public java.lang.String getAuthors(int index) {
        return authors_.get(index);
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public com.google.protobuf.ByteString
          getAuthorsBytes(int index) {
        return authors_.getByteString(index);
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public Builder setAuthors(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureAuthorsIsMutable();
        authors_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public Builder addAuthors(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureAuthorsIsMutable();
        authors_.add(value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public Builder addAllAuthors(
          java.lang.Iterable<java.lang.String> values) {
        ensureAuthorsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, authors_);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public Builder clearAuthors() {
        authors_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000004);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string authors = 3;</code>
       */
      public Builder addAuthorsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureAuthorsIsMutable();
        authors_.add(value);
        onChanged();
        return this;
      }

      private com.google.protobuf.LazyStringList tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      private void ensureTagsIsMutable() {
        if (!((bitField0_ & 0x00000008) == 0x00000008)) {
          tags_ = new com.google.protobuf.LazyStringArrayList(tags_);
          bitField0_ |= 0x00000008;
         }
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getTagsList() {
        return tags_.getUnmodifiableView();
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public int getTagsCount() {
        return tags_.size();
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public java.lang.String getTags(int index) {
        return tags_.get(index);
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public com.google.protobuf.ByteString
          getTagsBytes(int index) {
        return tags_.getByteString(index);
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public Builder setTags(
          int index, java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureTagsIsMutable();
        tags_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public Builder addTags(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureTagsIsMutable();
        tags_.add(value);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public Builder addAllTags(
          java.lang.Iterable<java.lang.String> values) {
        ensureTagsIsMutable();
        com.google.protobuf.AbstractMessageLite.Builder.addAll(
            values, tags_);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public Builder clearTags() {
        tags_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000008);
        onChanged();
        return this;
      }
      /**
       * <code>repeated string tags = 4;</code>
       */
      public Builder addTagsBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        ensureTagsIsMutable();
        tags_.add(value);
        onChanged();
        return this;
      }

      private java.lang.Object description_ = "";
      /**
       * <code>string description = 5;</code>
       */
      public java.lang.String getDescription() {
        java.lang.Object ref = description_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          description_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string description = 5;</code>
       */
      public com.google.protobuf.ByteString
          getDescriptionBytes() {
        java.lang.Object ref = description_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          description_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string description = 5;</code>
       */
      public Builder setDescription(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        description_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string description = 5;</code>
       */
      public Builder clearDescription() {
        
        description_ = getDefaultInstance().getDescription();
        onChanged();
        return this;
      }
      /**
       * <code>string description = 5;</code>
       */
      public Builder setDescriptionBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        description_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object nodeId_ = "";
      /**
       * <code>string node_id = 6;</code>
       */
      public java.lang.String getNodeId() {
        java.lang.Object ref = nodeId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nodeId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string node_id = 6;</code>
       */
      public com.google.protobuf.ByteString
          getNodeIdBytes() {
        java.lang.Object ref = nodeId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nodeId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string node_id = 6;</code>
       */
      public Builder setNodeId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        nodeId_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string node_id = 6;</code>
       */
      public Builder clearNodeId() {
        
        nodeId_ = getDefaultInstance().getNodeId();
        onChanged();
        return this;
      }
      /**
       * <code>string node_id = 6;</code>
       */
      public Builder setNodeIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        nodeId_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object sessionId_ = "";
      /**
       * <code>string session_id = 7;</code>
       */
      public java.lang.String getSessionId() {
        java.lang.Object ref = sessionId_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          sessionId_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string session_id = 7;</code>
       */
      public com.google.protobuf.ByteString
          getSessionIdBytes() {
        java.lang.Object ref = sessionId_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          sessionId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string session_id = 7;</code>
       */
      public Builder setSessionId(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        sessionId_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string session_id = 7;</code>
       */
      public Builder clearSessionId() {
        
        sessionId_ = getDefaultInstance().getSessionId();
        onChanged();
        return this;
      }
      /**
       * <code>string session_id = 7;</code>
       */
      public Builder setSessionIdBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        sessionId_ = value;
        onChanged();
        return this;
      }

      private int status_ = 0;
      /**
       * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
       */
      public int getStatusValue() {
        return status_;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
       */
      public Builder setStatusValue(int value) {
        status_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status getStatus() {
        @SuppressWarnings("deprecation")
        ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status result = ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.valueOf(status_);
        return result == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status.UNRECOGNIZED : result;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
       */
      public Builder setStatus(ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Status value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        status_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Status status = 8;</code>
       */
      public Builder clearStatus() {
        
        status_ = 0;
        onChanged();
        return this;
      }

      private ubii.processing.ProcessingModuleOuterClass.ProcessingMode processingMode_ = null;
      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder> processingModeBuilder_;
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public boolean hasProcessingMode() {
        return processingModeBuilder_ != null || processingMode_ != null;
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode getProcessingMode() {
        if (processingModeBuilder_ == null) {
          return processingMode_ == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingMode.getDefaultInstance() : processingMode_;
        } else {
          return processingModeBuilder_.getMessage();
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public Builder setProcessingMode(ubii.processing.ProcessingModuleOuterClass.ProcessingMode value) {
        if (processingModeBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          processingMode_ = value;
          onChanged();
        } else {
          processingModeBuilder_.setMessage(value);
        }

        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public Builder setProcessingMode(
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder builderForValue) {
        if (processingModeBuilder_ == null) {
          processingMode_ = builderForValue.build();
          onChanged();
        } else {
          processingModeBuilder_.setMessage(builderForValue.build());
        }

        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public Builder mergeProcessingMode(ubii.processing.ProcessingModuleOuterClass.ProcessingMode value) {
        if (processingModeBuilder_ == null) {
          if (processingMode_ != null) {
            processingMode_ =
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.newBuilder(processingMode_).mergeFrom(value).buildPartial();
          } else {
            processingMode_ = value;
          }
          onChanged();
        } else {
          processingModeBuilder_.mergeFrom(value);
        }

        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public Builder clearProcessingMode() {
        if (processingModeBuilder_ == null) {
          processingMode_ = null;
          onChanged();
        } else {
          processingMode_ = null;
          processingModeBuilder_ = null;
        }

        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder getProcessingModeBuilder() {
        
        onChanged();
        return getProcessingModeFieldBuilder().getBuilder();
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder getProcessingModeOrBuilder() {
        if (processingModeBuilder_ != null) {
          return processingModeBuilder_.getMessageOrBuilder();
        } else {
          return processingMode_ == null ?
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode.getDefaultInstance() : processingMode_;
        }
      }
      /**
       * <code>.ubii.processing.ProcessingMode processing_mode = 9;</code>
       */
      private com.google.protobuf.SingleFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingMode, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder> 
          getProcessingModeFieldBuilder() {
        if (processingModeBuilder_ == null) {
          processingModeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ProcessingMode, ubii.processing.ProcessingModuleOuterClass.ProcessingMode.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModeOrBuilder>(
                  getProcessingMode(),
                  getParentForChildren(),
                  isClean());
          processingMode_ = null;
        }
        return processingModeBuilder_;
      }

      private java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> inputs_ =
        java.util.Collections.emptyList();
      private void ensureInputsIsMutable() {
        if (!((bitField0_ & 0x00000200) == 0x00000200)) {
          inputs_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ModuleIO>(inputs_);
          bitField0_ |= 0x00000200;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> inputsBuilder_;

      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> getInputsList() {
        if (inputsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(inputs_);
        } else {
          return inputsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public int getInputsCount() {
        if (inputsBuilder_ == null) {
          return inputs_.size();
        } else {
          return inputsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO getInputs(int index) {
        if (inputsBuilder_ == null) {
          return inputs_.get(index);
        } else {
          return inputsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder setInputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (inputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureInputsIsMutable();
          inputs_.set(index, value);
          onChanged();
        } else {
          inputsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder setInputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (inputsBuilder_ == null) {
          ensureInputsIsMutable();
          inputs_.set(index, builderForValue.build());
          onChanged();
        } else {
          inputsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder addInputs(ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (inputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureInputsIsMutable();
          inputs_.add(value);
          onChanged();
        } else {
          inputsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder addInputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (inputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureInputsIsMutable();
          inputs_.add(index, value);
          onChanged();
        } else {
          inputsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder addInputs(
          ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (inputsBuilder_ == null) {
          ensureInputsIsMutable();
          inputs_.add(builderForValue.build());
          onChanged();
        } else {
          inputsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder addInputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (inputsBuilder_ == null) {
          ensureInputsIsMutable();
          inputs_.add(index, builderForValue.build());
          onChanged();
        } else {
          inputsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder addAllInputs(
          java.lang.Iterable<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIO> values) {
        if (inputsBuilder_ == null) {
          ensureInputsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, inputs_);
          onChanged();
        } else {
          inputsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder clearInputs() {
        if (inputsBuilder_ == null) {
          inputs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
          onChanged();
        } else {
          inputsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public Builder removeInputs(int index) {
        if (inputsBuilder_ == null) {
          ensureInputsIsMutable();
          inputs_.remove(index);
          onChanged();
        } else {
          inputsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder getInputsBuilder(
          int index) {
        return getInputsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getInputsOrBuilder(
          int index) {
        if (inputsBuilder_ == null) {
          return inputs_.get(index);  } else {
          return inputsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
           getInputsOrBuilderList() {
        if (inputsBuilder_ != null) {
          return inputsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(inputs_);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder addInputsBuilder() {
        return getInputsFieldBuilder().addBuilder(
            ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder addInputsBuilder(
          int index) {
        return getInputsFieldBuilder().addBuilder(
            index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO inputs = 10;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder> 
           getInputsBuilderList() {
        return getInputsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
          getInputsFieldBuilder() {
        if (inputsBuilder_ == null) {
          inputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder>(
                  inputs_,
                  ((bitField0_ & 0x00000200) == 0x00000200),
                  getParentForChildren(),
                  isClean());
          inputs_ = null;
        }
        return inputsBuilder_;
      }

      private java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> outputs_ =
        java.util.Collections.emptyList();
      private void ensureOutputsIsMutable() {
        if (!((bitField0_ & 0x00000400) == 0x00000400)) {
          outputs_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ModuleIO>(outputs_);
          bitField0_ |= 0x00000400;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> outputsBuilder_;

      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO> getOutputsList() {
        if (outputsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(outputs_);
        } else {
          return outputsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public int getOutputsCount() {
        if (outputsBuilder_ == null) {
          return outputs_.size();
        } else {
          return outputsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO getOutputs(int index) {
        if (outputsBuilder_ == null) {
          return outputs_.get(index);
        } else {
          return outputsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder setOutputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (outputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOutputsIsMutable();
          outputs_.set(index, value);
          onChanged();
        } else {
          outputsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder setOutputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (outputsBuilder_ == null) {
          ensureOutputsIsMutable();
          outputs_.set(index, builderForValue.build());
          onChanged();
        } else {
          outputsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder addOutputs(ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (outputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOutputsIsMutable();
          outputs_.add(value);
          onChanged();
        } else {
          outputsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder addOutputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO value) {
        if (outputsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureOutputsIsMutable();
          outputs_.add(index, value);
          onChanged();
        } else {
          outputsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder addOutputs(
          ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (outputsBuilder_ == null) {
          ensureOutputsIsMutable();
          outputs_.add(builderForValue.build());
          onChanged();
        } else {
          outputsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder addOutputs(
          int index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder builderForValue) {
        if (outputsBuilder_ == null) {
          ensureOutputsIsMutable();
          outputs_.add(index, builderForValue.build());
          onChanged();
        } else {
          outputsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder addAllOutputs(
          java.lang.Iterable<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIO> values) {
        if (outputsBuilder_ == null) {
          ensureOutputsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, outputs_);
          onChanged();
        } else {
          outputsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder clearOutputs() {
        if (outputsBuilder_ == null) {
          outputs_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000400);
          onChanged();
        } else {
          outputsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public Builder removeOutputs(int index) {
        if (outputsBuilder_ == null) {
          ensureOutputsIsMutable();
          outputs_.remove(index);
          onChanged();
        } else {
          outputsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder getOutputsBuilder(
          int index) {
        return getOutputsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder getOutputsOrBuilder(
          int index) {
        if (outputsBuilder_ == null) {
          return outputs_.get(index);  } else {
          return outputsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
           getOutputsOrBuilderList() {
        if (outputsBuilder_ != null) {
          return outputsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(outputs_);
        }
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder addOutputsBuilder() {
        return getOutputsFieldBuilder().addBuilder(
            ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder addOutputsBuilder(
          int index) {
        return getOutputsFieldBuilder().addBuilder(
            index, ubii.processing.ProcessingModuleOuterClass.ModuleIO.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ModuleIO outputs = 11;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder> 
           getOutputsBuilderList() {
        return getOutputsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder> 
          getOutputsFieldBuilder() {
        if (outputsBuilder_ == null) {
          outputsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ModuleIO, ubii.processing.ProcessingModuleOuterClass.ModuleIO.Builder, ubii.processing.ProcessingModuleOuterClass.ModuleIOOrBuilder>(
                  outputs_,
                  ((bitField0_ & 0x00000400) == 0x00000400),
                  getParentForChildren(),
                  isClean());
          outputs_ = null;
        }
        return outputsBuilder_;
      }

      private int language_ = 0;
      /**
       * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
       */
      public int getLanguageValue() {
        return language_;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
       */
      public Builder setLanguageValue(int value) {
        language_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language getLanguage() {
        @SuppressWarnings("deprecation")
        ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language result = ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.valueOf(language_);
        return result == null ? ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language.UNRECOGNIZED : result;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
       */
      public Builder setLanguage(ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Language value) {
        if (value == null) {
          throw new NullPointerException();
        }
        
        language_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <code>.ubii.processing.ProcessingModule.Language language = 12;</code>
       */
      public Builder clearLanguage() {
        
        language_ = 0;
        onChanged();
        return this;
      }

      private java.lang.Object onProcessingStringified_ = "";
      /**
       * <code>string on_processing_stringified = 13;</code>
       */
      public java.lang.String getOnProcessingStringified() {
        java.lang.Object ref = onProcessingStringified_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          onProcessingStringified_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string on_processing_stringified = 13;</code>
       */
      public com.google.protobuf.ByteString
          getOnProcessingStringifiedBytes() {
        java.lang.Object ref = onProcessingStringified_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          onProcessingStringified_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string on_processing_stringified = 13;</code>
       */
      public Builder setOnProcessingStringified(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        onProcessingStringified_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string on_processing_stringified = 13;</code>
       */
      public Builder clearOnProcessingStringified() {
        
        onProcessingStringified_ = getDefaultInstance().getOnProcessingStringified();
        onChanged();
        return this;
      }
      /**
       * <code>string on_processing_stringified = 13;</code>
       */
      public Builder setOnProcessingStringifiedBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        onProcessingStringified_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object onCreatedStringified_ = "";
      /**
       * <code>string on_created_stringified = 14;</code>
       */
      public java.lang.String getOnCreatedStringified() {
        java.lang.Object ref = onCreatedStringified_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          onCreatedStringified_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string on_created_stringified = 14;</code>
       */
      public com.google.protobuf.ByteString
          getOnCreatedStringifiedBytes() {
        java.lang.Object ref = onCreatedStringified_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          onCreatedStringified_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string on_created_stringified = 14;</code>
       */
      public Builder setOnCreatedStringified(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        onCreatedStringified_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string on_created_stringified = 14;</code>
       */
      public Builder clearOnCreatedStringified() {
        
        onCreatedStringified_ = getDefaultInstance().getOnCreatedStringified();
        onChanged();
        return this;
      }
      /**
       * <code>string on_created_stringified = 14;</code>
       */
      public Builder setOnCreatedStringifiedBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        onCreatedStringified_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object onHaltedStringified_ = "";
      /**
       * <code>string on_halted_stringified = 15;</code>
       */
      public java.lang.String getOnHaltedStringified() {
        java.lang.Object ref = onHaltedStringified_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          onHaltedStringified_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string on_halted_stringified = 15;</code>
       */
      public com.google.protobuf.ByteString
          getOnHaltedStringifiedBytes() {
        java.lang.Object ref = onHaltedStringified_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          onHaltedStringified_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string on_halted_stringified = 15;</code>
       */
      public Builder setOnHaltedStringified(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        onHaltedStringified_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string on_halted_stringified = 15;</code>
       */
      public Builder clearOnHaltedStringified() {
        
        onHaltedStringified_ = getDefaultInstance().getOnHaltedStringified();
        onChanged();
        return this;
      }
      /**
       * <code>string on_halted_stringified = 15;</code>
       */
      public Builder setOnHaltedStringifiedBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        onHaltedStringified_ = value;
        onChanged();
        return this;
      }

      private java.lang.Object onDestroyedStringified_ = "";
      /**
       * <code>string on_destroyed_stringified = 16;</code>
       */
      public java.lang.String getOnDestroyedStringified() {
        java.lang.Object ref = onDestroyedStringified_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          onDestroyedStringified_ = s;
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>string on_destroyed_stringified = 16;</code>
       */
      public com.google.protobuf.ByteString
          getOnDestroyedStringifiedBytes() {
        java.lang.Object ref = onDestroyedStringified_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          onDestroyedStringified_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>string on_destroyed_stringified = 16;</code>
       */
      public Builder setOnDestroyedStringified(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  
        onDestroyedStringified_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>string on_destroyed_stringified = 16;</code>
       */
      public Builder clearOnDestroyedStringified() {
        
        onDestroyedStringified_ = getDefaultInstance().getOnDestroyedStringified();
        onChanged();
        return this;
      }
      /**
       * <code>string on_destroyed_stringified = 16;</code>
       */
      public Builder setOnDestroyedStringifiedBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  checkByteStringIsUtf8(value);
        
        onDestroyedStringified_ = value;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingModule)
    }

    // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingModule)
    private static final ubii.processing.ProcessingModuleOuterClass.ProcessingModule DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingModule();
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModule getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ProcessingModule>
        PARSER = new com.google.protobuf.AbstractParser<ProcessingModule>() {
      @java.lang.Override
      public ProcessingModule parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProcessingModule(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ProcessingModule> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ProcessingModule> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModule getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface ProcessingModuleListOrBuilder extends
      // @@protoc_insertion_point(interface_extends:ubii.processing.ProcessingModuleList)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule> 
        getElementsList();
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingModule getElements(int index);
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    int getElementsCount();
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder> 
        getElementsOrBuilderList();
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder getElementsOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code ubii.processing.ProcessingModuleList}
   */
  public  static final class ProcessingModuleList extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:ubii.processing.ProcessingModuleList)
      ProcessingModuleListOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use ProcessingModuleList.newBuilder() to construct.
    private ProcessingModuleList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private ProcessingModuleList() {
      elements_ = java.util.Collections.emptyList();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private ProcessingModuleList(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                elements_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ProcessingModule>();
                mutable_bitField0_ |= 0x00000001;
              }
              elements_.add(
                  input.readMessage(ubii.processing.ProcessingModuleOuterClass.ProcessingModule.parser(), extensionRegistry));
              break;
            }
            default: {
              if (!parseUnknownFieldProto3(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          elements_ = java.util.Collections.unmodifiableList(elements_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModuleList_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModuleList_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.class, ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.Builder.class);
    }

    public static final int ELEMENTS_FIELD_NUMBER = 1;
    private java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule> elements_;
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    public java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule> getElementsList() {
      return elements_;
    }
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder> 
        getElementsOrBuilderList() {
      return elements_;
    }
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    public int getElementsCount() {
      return elements_.size();
    }
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModule getElements(int index) {
      return elements_.get(index);
    }
    /**
     * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
     */
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder getElementsOrBuilder(
        int index) {
      return elements_.get(index);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      for (int i = 0; i < elements_.size(); i++) {
        output.writeMessage(1, elements_.get(i));
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < elements_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, elements_.get(i));
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList)) {
        return super.equals(obj);
      }
      ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList other = (ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList) obj;

      boolean result = true;
      result = result && getElementsList()
          .equals(other.getElementsList());
      result = result && unknownFields.equals(other.unknownFields);
      return result;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (getElementsCount() > 0) {
        hash = (37 * hash) + ELEMENTS_FIELD_NUMBER;
        hash = (53 * hash) + getElementsList().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ubii.processing.ProcessingModuleList}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:ubii.processing.ProcessingModuleList)
        ubii.processing.ProcessingModuleOuterClass.ProcessingModuleListOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModuleList_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModuleList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.class, ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.Builder.class);
      }

      // Construct using ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getElementsFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        if (elementsBuilder_ == null) {
          elements_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          elementsBuilder_.clear();
        }
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return ubii.processing.ProcessingModuleOuterClass.internal_static_ubii_processing_ProcessingModuleList_descriptor;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList getDefaultInstanceForType() {
        return ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.getDefaultInstance();
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList build() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList buildPartial() {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList result = new ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList(this);
        int from_bitField0_ = bitField0_;
        if (elementsBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            elements_ = java.util.Collections.unmodifiableList(elements_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.elements_ = elements_;
        } else {
          result.elements_ = elementsBuilder_.build();
        }
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return (Builder) super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return (Builder) super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return (Builder) super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return (Builder) super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return (Builder) super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList) {
          return mergeFrom((ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList other) {
        if (other == ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList.getDefaultInstance()) return this;
        if (elementsBuilder_ == null) {
          if (!other.elements_.isEmpty()) {
            if (elements_.isEmpty()) {
              elements_ = other.elements_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureElementsIsMutable();
              elements_.addAll(other.elements_);
            }
            onChanged();
          }
        } else {
          if (!other.elements_.isEmpty()) {
            if (elementsBuilder_.isEmpty()) {
              elementsBuilder_.dispose();
              elementsBuilder_ = null;
              elements_ = other.elements_;
              bitField0_ = (bitField0_ & ~0x00000001);
              elementsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getElementsFieldBuilder() : null;
            } else {
              elementsBuilder_.addAllMessages(other.elements_);
            }
          }
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule> elements_ =
        java.util.Collections.emptyList();
      private void ensureElementsIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          elements_ = new java.util.ArrayList<ubii.processing.ProcessingModuleOuterClass.ProcessingModule>(elements_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingModule, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder> elementsBuilder_;

      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule> getElementsList() {
        if (elementsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(elements_);
        } else {
          return elementsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public int getElementsCount() {
        if (elementsBuilder_ == null) {
          return elements_.size();
        } else {
          return elementsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule getElements(int index) {
        if (elementsBuilder_ == null) {
          return elements_.get(index);
        } else {
          return elementsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder setElements(
          int index, ubii.processing.ProcessingModuleOuterClass.ProcessingModule value) {
        if (elementsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureElementsIsMutable();
          elements_.set(index, value);
          onChanged();
        } else {
          elementsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder setElements(
          int index, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder builderForValue) {
        if (elementsBuilder_ == null) {
          ensureElementsIsMutable();
          elements_.set(index, builderForValue.build());
          onChanged();
        } else {
          elementsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder addElements(ubii.processing.ProcessingModuleOuterClass.ProcessingModule value) {
        if (elementsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureElementsIsMutable();
          elements_.add(value);
          onChanged();
        } else {
          elementsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder addElements(
          int index, ubii.processing.ProcessingModuleOuterClass.ProcessingModule value) {
        if (elementsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureElementsIsMutable();
          elements_.add(index, value);
          onChanged();
        } else {
          elementsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder addElements(
          ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder builderForValue) {
        if (elementsBuilder_ == null) {
          ensureElementsIsMutable();
          elements_.add(builderForValue.build());
          onChanged();
        } else {
          elementsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder addElements(
          int index, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder builderForValue) {
        if (elementsBuilder_ == null) {
          ensureElementsIsMutable();
          elements_.add(index, builderForValue.build());
          onChanged();
        } else {
          elementsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder addAllElements(
          java.lang.Iterable<? extends ubii.processing.ProcessingModuleOuterClass.ProcessingModule> values) {
        if (elementsBuilder_ == null) {
          ensureElementsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, elements_);
          onChanged();
        } else {
          elementsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder clearElements() {
        if (elementsBuilder_ == null) {
          elements_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          elementsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public Builder removeElements(int index) {
        if (elementsBuilder_ == null) {
          ensureElementsIsMutable();
          elements_.remove(index);
          onChanged();
        } else {
          elementsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder getElementsBuilder(
          int index) {
        return getElementsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder getElementsOrBuilder(
          int index) {
        if (elementsBuilder_ == null) {
          return elements_.get(index);  } else {
          return elementsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public java.util.List<? extends ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder> 
           getElementsOrBuilderList() {
        if (elementsBuilder_ != null) {
          return elementsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(elements_);
        }
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder addElementsBuilder() {
        return getElementsFieldBuilder().addBuilder(
            ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder addElementsBuilder(
          int index) {
        return getElementsFieldBuilder().addBuilder(
            index, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.getDefaultInstance());
      }
      /**
       * <code>repeated .ubii.processing.ProcessingModule elements = 1;</code>
       */
      public java.util.List<ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder> 
           getElementsBuilderList() {
        return getElementsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          ubii.processing.ProcessingModuleOuterClass.ProcessingModule, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder> 
          getElementsFieldBuilder() {
        if (elementsBuilder_ == null) {
          elementsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              ubii.processing.ProcessingModuleOuterClass.ProcessingModule, ubii.processing.ProcessingModuleOuterClass.ProcessingModule.Builder, ubii.processing.ProcessingModuleOuterClass.ProcessingModuleOrBuilder>(
                  elements_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          elements_ = null;
        }
        return elementsBuilder_;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFieldsProto3(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:ubii.processing.ProcessingModuleList)
    }

    // @@protoc_insertion_point(class_scope:ubii.processing.ProcessingModuleList)
    private static final ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList();
    }

    public static ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static final com.google.protobuf.Parser<ProcessingModuleList>
        PARSER = new com.google.protobuf.AbstractParser<ProcessingModuleList>() {
      @java.lang.Override
      public ProcessingModuleList parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ProcessingModuleList(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<ProcessingModuleList> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<ProcessingModuleList> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public ubii.processing.ProcessingModuleOuterClass.ProcessingModuleList getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingMode_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingMode_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingMode_Frequency_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingMode_Frequency_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingMode_Lockstep_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingMode_TriggerOnInput_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ModuleIO_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ModuleIO_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingModule_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingModule_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_ubii_processing_ProcessingModuleList_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_ubii_processing_ProcessingModuleList_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n\'proto/processing/processingModule.prot" +
      "o\022\017ubii.processing\"\364\002\n\016ProcessingMode\022>\n" +
      "\tfrequency\030\001 \001(\0132).ubii.processing.Proce" +
      "ssingMode.FrequencyH\000\022<\n\010lockstep\030\002 \001(\0132" +
      "(.ubii.processing.ProcessingMode.Lockste" +
      "pH\000\022J\n\020trigger_on_input\030\003 \001(\0132..ubii.pro" +
      "cessing.ProcessingMode.TriggerOnInputH\000\032" +
      "\032\n\tFrequency\022\r\n\005hertz\030\001 \001(\005\032,\n\010Lockstep\022" +
      " \n\030process_request_endpoint\030\001 \001(\t\032F\n\016Tri" +
      "ggerOnInput\022\024\n\014min_delay_ms\030\001 \001(\005\022\036\n\026all" +
      "_inputs_need_update\030\002 \001(\010B\006\n\004mode\"9\n\010Mod" +
      "uleIO\022\025\n\rinternal_name\030\001 \001(\t\022\026\n\016message_" +
      "format\030\002 \001(\t\"\234\005\n\020ProcessingModule\022\n\n\002id\030" +
      "\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\017\n\007authors\030\003 \003(\t\022\014\n\004" +
      "tags\030\004 \003(\t\022\023\n\013description\030\005 \001(\t\022\017\n\007node_" +
      "id\030\006 \001(\t\022\022\n\nsession_id\030\007 \001(\t\0228\n\006status\030\010" +
      " \001(\0162(.ubii.processing.ProcessingModule." +
      "Status\0228\n\017processing_mode\030\t \001(\0132\037.ubii.p" +
      "rocessing.ProcessingMode\022)\n\006inputs\030\n \003(\013" +
      "2\031.ubii.processing.ModuleIO\022*\n\007outputs\030\013" +
      " \003(\0132\031.ubii.processing.ModuleIO\022<\n\010langu" +
      "age\030\014 \001(\0162*.ubii.processing.ProcessingMo" +
      "dule.Language\022!\n\031on_processing_stringifi" +
      "ed\030\r \001(\t\022\036\n\026on_created_stringified\030\016 \001(\t" +
      "\022\035\n\025on_halted_stringified\030\017 \001(\t\022 \n\030on_de" +
      "stroyed_stringified\030\020 \001(\t\"Q\n\006Status\022\017\n\013I" +
      "NITIALIZED\020\000\022\013\n\007CREATED\020\001\022\016\n\nPROCESSING\020" +
      "\002\022\n\n\006HALTED\020\003\022\r\n\tDESTROYED\020\004\"5\n\010Language" +
      "\022\007\n\003CPP\020\000\022\006\n\002PY\020\001\022\006\n\002JS\020\002\022\006\n\002CS\020\003\022\010\n\004JAV" +
      "A\020\004\"K\n\024ProcessingModuleList\0223\n\010elements\030" +
      "\001 \003(\0132!.ubii.processing.ProcessingModule" +
      "b\006proto3"
    };
    com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
          public com.google.protobuf.ExtensionRegistry assignDescriptors(
              com.google.protobuf.Descriptors.FileDescriptor root) {
            descriptor = root;
            return null;
          }
        };
    com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
        }, assigner);
    internal_static_ubii_processing_ProcessingMode_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_ubii_processing_ProcessingMode_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingMode_descriptor,
        new java.lang.String[] { "Frequency", "Lockstep", "TriggerOnInput", "Mode", });
    internal_static_ubii_processing_ProcessingMode_Frequency_descriptor =
      internal_static_ubii_processing_ProcessingMode_descriptor.getNestedTypes().get(0);
    internal_static_ubii_processing_ProcessingMode_Frequency_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingMode_Frequency_descriptor,
        new java.lang.String[] { "Hertz", });
    internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor =
      internal_static_ubii_processing_ProcessingMode_descriptor.getNestedTypes().get(1);
    internal_static_ubii_processing_ProcessingMode_Lockstep_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingMode_Lockstep_descriptor,
        new java.lang.String[] { "ProcessRequestEndpoint", });
    internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor =
      internal_static_ubii_processing_ProcessingMode_descriptor.getNestedTypes().get(2);
    internal_static_ubii_processing_ProcessingMode_TriggerOnInput_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingMode_TriggerOnInput_descriptor,
        new java.lang.String[] { "MinDelayMs", "AllInputsNeedUpdate", });
    internal_static_ubii_processing_ModuleIO_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_ubii_processing_ModuleIO_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ModuleIO_descriptor,
        new java.lang.String[] { "InternalName", "MessageFormat", });
    internal_static_ubii_processing_ProcessingModule_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_ubii_processing_ProcessingModule_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingModule_descriptor,
        new java.lang.String[] { "Id", "Name", "Authors", "Tags", "Description", "NodeId", "SessionId", "Status", "ProcessingMode", "Inputs", "Outputs", "Language", "OnProcessingStringified", "OnCreatedStringified", "OnHaltedStringified", "OnDestroyedStringified", });
    internal_static_ubii_processing_ProcessingModuleList_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_ubii_processing_ProcessingModuleList_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_ubii_processing_ProcessingModuleList_descriptor,
        new java.lang.String[] { "Elements", });
  }

  // @@protoc_insertion_point(outer_class_scope)
}
