// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: plm/v1/task_authoring.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021, 8981
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace Messages.Plm.V1 {

  /// <summary>Holder for reflection information generated from plm/v1/task_authoring.proto</summary>
  public static partial class TaskAuthoringReflection {

    #region Descriptor
    /// <summary>File descriptor for plm/v1/task_authoring.proto</summary>
    public static pbr::FileDescriptor Descriptor {
      get { return descriptor; }
    }
    private static pbr::FileDescriptor descriptor;

    static TaskAuthoringReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "ChtwbG0vdjEvdGFza19hdXRob3JpbmcucHJvdG8SBnBsbS52MRoWZ2VvbWV0",
            "cnkvdjEvcG9zZS5wcm90bxoZZ2VvbWV0cnkvdjEvdmVjdG9yMy5wcm90bxoR",
            "cGxtL3YxL3Rhc2sucHJvdG8iogMKEVN0b3JlZFRhc2tNZXNzYWdlEg4KAmlk",
            "GAEgASgJUgJpZBISCgRuYW1lGAIgASgJUgRuYW1lEiAKC2Rlc2NyaXB0aW9u",
            "GAMgASgJUgtkZXNjcmlwdGlvbhInCg9zZXF1ZW5jZV9udW1iZXIYBCABKANS",
            "DnNlcXVlbmNlTnVtYmVyEhcKB3BhcnRfaWQYBSABKAlSBnBhcnRJZBIZCght",
            "b2RlbF9pZBgGIAEoCVIHbW9kZWxJZBItCgl0YXNrX3R5cGUYByABKA4yEC5w",
            "bG0udjEuVGFza1R5cGVSCHRhc2tUeXBlEjIKBnRhcmdldBgIIAEoCzIaLmdl",
            "b21ldHJ5LnYxLkxvY2FsaXplZFBvc2VSBnRhcmdldBIwCghhcHByb2FjaBgJ",
            "IAEoCzIULmdlb21ldHJ5LnYxLlZlY3RvcjNSCGFwcHJvYWNoElUKFWFzc2ln",
            "bm1lbnRfcHJlZmVyZW5jZRgTIAEoDjIgLnBsbS52MS5UYXNrQXNzaWdubWVu",
            "dFByZWZlcmVuY2VSFGFzc2lnbm1lbnRQcmVmZXJlbmNlIp0BCg5OZXdUYXNr",
            "TWVzc2FnZRISCgRuYW1lGAIgASgJUgRuYW1lEiAKC2Rlc2NyaXB0aW9uGAMg",
            "ASgJUgtkZXNjcmlwdGlvbhInCg9zZXF1ZW5jZV9udW1iZXIYBCABKANSDnNl",
            "cXVlbmNlTnVtYmVyEiwKEnBhcmVudF9zZXF1ZW5jZV9pZBgFIAEoCVIQcGFy",
            "ZW50U2VxdWVuY2VJZCKiAwoRVXBkYXRlVGFza01lc3NhZ2USDgoCaWQYASAB",
            "KAlSAmlkEhIKBG5hbWUYAiABKAlSBG5hbWUSIAoLZGVzY3JpcHRpb24YAyAB",
            "KAlSC2Rlc2NyaXB0aW9uEicKD3NlcXVlbmNlX251bWJlchgEIAEoA1IOc2Vx",
            "dWVuY2VOdW1iZXISFwoHcGFydF9pZBgFIAEoCVIGcGFydElkEhkKCG1vZGVs",
            "X2lkGAYgASgJUgdtb2RlbElkEi0KCXRhc2tfdHlwZRgHIAEoDjIQLnBsbS52",
            "MS5UYXNrVHlwZVIIdGFza1R5cGUSMgoGdGFyZ2V0GAggASgLMhouZ2VvbWV0",
            "cnkudjEuTG9jYWxpemVkUG9zZVIGdGFyZ2V0EjAKCGFwcHJvYWNoGAkgASgL",
            "MhQuZ2VvbWV0cnkudjEuVmVjdG9yM1IIYXBwcm9hY2gSVQoVYXNzaWdubWVu",
            "dF9wcmVmZXJlbmNlGBMgASgOMiAucGxtLnYxLlRhc2tBc3NpZ25tZW50UHJl",
            "ZmVyZW5jZVIUYXNzaWdubWVudFByZWZlcmVuY2UiLAoRRGVsZXRlVGFza01l",
            "c3NhZ2USFwoHdGFza19pZBgBIAEoCVIGdGFza0lkQpUBCgpjb20ucGxtLnYx",
            "QhJUYXNrQXV0aG9yaW5nUHJvdG9QAVoxZ2l0aHViLmNvbS9jb2JvdGFyL3By",
            "b3RvY29sL21lc3NhZ2VzL3BsbS92MTtwbG12MaICA1BYWKoCD01lc3NhZ2Vz",
            "LlBsbS5WMcoCBlBsbVxWMeICElBsbVxWMVxHUEJNZXRhZGF0YeoCB1BsbTo6",
            "VjFiBnByb3RvMw=="));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::Messages.Common.V1.PoseReflection.Descriptor, global::Messages.Common.V1.Vector3Reflection.Descriptor, global::Messages.Plm.V1.TaskReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::Messages.Plm.V1.StoredTaskMessage), global::Messages.Plm.V1.StoredTaskMessage.Parser, new[]{ "Id", "Name", "Description", "SequenceNumber", "PartId", "ModelId", "TaskType", "Target", "Approach", "AssignmentPreference" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Messages.Plm.V1.NewTaskMessage), global::Messages.Plm.V1.NewTaskMessage.Parser, new[]{ "Name", "Description", "SequenceNumber", "ParentSequenceId" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Messages.Plm.V1.UpdateTaskMessage), global::Messages.Plm.V1.UpdateTaskMessage.Parser, new[]{ "Id", "Name", "Description", "SequenceNumber", "PartId", "ModelId", "TaskType", "Target", "Approach", "AssignmentPreference" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::Messages.Plm.V1.DeleteTaskMessage), global::Messages.Plm.V1.DeleteTaskMessage.Parser, new[]{ "TaskId" }, null, null, null, null)
          }));
    }
    #endregion

  }
  #region Messages
  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class StoredTaskMessage : pb::IMessage<StoredTaskMessage>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<StoredTaskMessage> _parser = new pb::MessageParser<StoredTaskMessage>(() => new StoredTaskMessage());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<StoredTaskMessage> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Messages.Plm.V1.TaskAuthoringReflection.Descriptor.MessageTypes[0]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public StoredTaskMessage() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public StoredTaskMessage(StoredTaskMessage other) : this() {
      id_ = other.id_;
      name_ = other.name_;
      description_ = other.description_;
      sequenceNumber_ = other.sequenceNumber_;
      partId_ = other.partId_;
      modelId_ = other.modelId_;
      taskType_ = other.taskType_;
      target_ = other.target_ != null ? other.target_.Clone() : null;
      approach_ = other.approach_ != null ? other.approach_.Clone() : null;
      assignmentPreference_ = other.assignmentPreference_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public StoredTaskMessage Clone() {
      return new StoredTaskMessage(this);
    }

    /// <summary>Field number for the "id" field.</summary>
    public const int IdFieldNumber = 1;
    private string id_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Id {
      get { return id_; }
      set {
        id_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private string name_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Name {
      get { return name_; }
      set {
        name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "description" field.</summary>
    public const int DescriptionFieldNumber = 3;
    private string description_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Description {
      get { return description_; }
      set {
        description_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "sequence_number" field.</summary>
    public const int SequenceNumberFieldNumber = 4;
    private long sequenceNumber_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public long SequenceNumber {
      get { return sequenceNumber_; }
      set {
        sequenceNumber_ = value;
      }
    }

    /// <summary>Field number for the "part_id" field.</summary>
    public const int PartIdFieldNumber = 5;
    private string partId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string PartId {
      get { return partId_; }
      set {
        partId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "model_id" field.</summary>
    public const int ModelIdFieldNumber = 6;
    private string modelId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string ModelId {
      get { return modelId_; }
      set {
        modelId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "task_type" field.</summary>
    public const int TaskTypeFieldNumber = 7;
    private global::Messages.Plm.V1.TaskType taskType_ = global::Messages.Plm.V1.TaskType.Unspecified;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Plm.V1.TaskType TaskType {
      get { return taskType_; }
      set {
        taskType_ = value;
      }
    }

    /// <summary>Field number for the "target" field.</summary>
    public const int TargetFieldNumber = 8;
    private global::Messages.Common.V1.LocalizedPose target_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Common.V1.LocalizedPose Target {
      get { return target_; }
      set {
        target_ = value;
      }
    }

    /// <summary>Field number for the "approach" field.</summary>
    public const int ApproachFieldNumber = 9;
    private global::Messages.Common.V1.Vector3 approach_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Common.V1.Vector3 Approach {
      get { return approach_; }
      set {
        approach_ = value;
      }
    }

    /// <summary>Field number for the "assignment_preference" field.</summary>
    public const int AssignmentPreferenceFieldNumber = 19;
    private global::Messages.Plm.V1.TaskAssignmentPreference assignmentPreference_ = global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Plm.V1.TaskAssignmentPreference AssignmentPreference {
      get { return assignmentPreference_; }
      set {
        assignmentPreference_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as StoredTaskMessage);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(StoredTaskMessage other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Id != other.Id) return false;
      if (Name != other.Name) return false;
      if (Description != other.Description) return false;
      if (SequenceNumber != other.SequenceNumber) return false;
      if (PartId != other.PartId) return false;
      if (ModelId != other.ModelId) return false;
      if (TaskType != other.TaskType) return false;
      if (!object.Equals(Target, other.Target)) return false;
      if (!object.Equals(Approach, other.Approach)) return false;
      if (AssignmentPreference != other.AssignmentPreference) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Id.Length != 0) hash ^= Id.GetHashCode();
      if (Name.Length != 0) hash ^= Name.GetHashCode();
      if (Description.Length != 0) hash ^= Description.GetHashCode();
      if (SequenceNumber != 0L) hash ^= SequenceNumber.GetHashCode();
      if (PartId.Length != 0) hash ^= PartId.GetHashCode();
      if (ModelId.Length != 0) hash ^= ModelId.GetHashCode();
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) hash ^= TaskType.GetHashCode();
      if (target_ != null) hash ^= Target.GetHashCode();
      if (approach_ != null) hash ^= Approach.GetHashCode();
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) hash ^= AssignmentPreference.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Id.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(Id);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (PartId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(PartId);
      }
      if (ModelId.Length != 0) {
        output.WriteRawTag(50);
        output.WriteString(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        output.WriteRawTag(56);
        output.WriteEnum((int) TaskType);
      }
      if (target_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(Target);
      }
      if (approach_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        output.WriteRawTag(152, 1);
        output.WriteEnum((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Id.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(Id);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (PartId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(PartId);
      }
      if (ModelId.Length != 0) {
        output.WriteRawTag(50);
        output.WriteString(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        output.WriteRawTag(56);
        output.WriteEnum((int) TaskType);
      }
      if (target_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(Target);
      }
      if (approach_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        output.WriteRawTag(152, 1);
        output.WriteEnum((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Id.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Id);
      }
      if (Name.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
      }
      if (Description.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Description);
      }
      if (SequenceNumber != 0L) {
        size += 1 + pb::CodedOutputStream.ComputeInt64Size(SequenceNumber);
      }
      if (PartId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(PartId);
      }
      if (ModelId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TaskType);
      }
      if (target_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Target);
      }
      if (approach_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(StoredTaskMessage other) {
      if (other == null) {
        return;
      }
      if (other.Id.Length != 0) {
        Id = other.Id;
      }
      if (other.Name.Length != 0) {
        Name = other.Name;
      }
      if (other.Description.Length != 0) {
        Description = other.Description;
      }
      if (other.SequenceNumber != 0L) {
        SequenceNumber = other.SequenceNumber;
      }
      if (other.PartId.Length != 0) {
        PartId = other.PartId;
      }
      if (other.ModelId.Length != 0) {
        ModelId = other.ModelId;
      }
      if (other.TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        TaskType = other.TaskType;
      }
      if (other.target_ != null) {
        if (target_ == null) {
          Target = new global::Messages.Common.V1.LocalizedPose();
        }
        Target.MergeFrom(other.Target);
      }
      if (other.approach_ != null) {
        if (approach_ == null) {
          Approach = new global::Messages.Common.V1.Vector3();
        }
        Approach.MergeFrom(other.Approach);
      }
      if (other.AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        AssignmentPreference = other.AssignmentPreference;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            Id = input.ReadString();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            PartId = input.ReadString();
            break;
          }
          case 50: {
            ModelId = input.ReadString();
            break;
          }
          case 56: {
            TaskType = (global::Messages.Plm.V1.TaskType) input.ReadEnum();
            break;
          }
          case 66: {
            if (target_ == null) {
              Target = new global::Messages.Common.V1.LocalizedPose();
            }
            input.ReadMessage(Target);
            break;
          }
          case 74: {
            if (approach_ == null) {
              Approach = new global::Messages.Common.V1.Vector3();
            }
            input.ReadMessage(Approach);
            break;
          }
          case 152: {
            AssignmentPreference = (global::Messages.Plm.V1.TaskAssignmentPreference) input.ReadEnum();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            Id = input.ReadString();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            PartId = input.ReadString();
            break;
          }
          case 50: {
            ModelId = input.ReadString();
            break;
          }
          case 56: {
            TaskType = (global::Messages.Plm.V1.TaskType) input.ReadEnum();
            break;
          }
          case 66: {
            if (target_ == null) {
              Target = new global::Messages.Common.V1.LocalizedPose();
            }
            input.ReadMessage(Target);
            break;
          }
          case 74: {
            if (approach_ == null) {
              Approach = new global::Messages.Common.V1.Vector3();
            }
            input.ReadMessage(Approach);
            break;
          }
          case 152: {
            AssignmentPreference = (global::Messages.Plm.V1.TaskAssignmentPreference) input.ReadEnum();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class NewTaskMessage : pb::IMessage<NewTaskMessage>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<NewTaskMessage> _parser = new pb::MessageParser<NewTaskMessage>(() => new NewTaskMessage());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<NewTaskMessage> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Messages.Plm.V1.TaskAuthoringReflection.Descriptor.MessageTypes[1]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public NewTaskMessage() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public NewTaskMessage(NewTaskMessage other) : this() {
      name_ = other.name_;
      description_ = other.description_;
      sequenceNumber_ = other.sequenceNumber_;
      parentSequenceId_ = other.parentSequenceId_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public NewTaskMessage Clone() {
      return new NewTaskMessage(this);
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private string name_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Name {
      get { return name_; }
      set {
        name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "description" field.</summary>
    public const int DescriptionFieldNumber = 3;
    private string description_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Description {
      get { return description_; }
      set {
        description_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "sequence_number" field.</summary>
    public const int SequenceNumberFieldNumber = 4;
    private long sequenceNumber_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public long SequenceNumber {
      get { return sequenceNumber_; }
      set {
        sequenceNumber_ = value;
      }
    }

    /// <summary>Field number for the "parent_sequence_id" field.</summary>
    public const int ParentSequenceIdFieldNumber = 5;
    private string parentSequenceId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string ParentSequenceId {
      get { return parentSequenceId_; }
      set {
        parentSequenceId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as NewTaskMessage);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(NewTaskMessage other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Name != other.Name) return false;
      if (Description != other.Description) return false;
      if (SequenceNumber != other.SequenceNumber) return false;
      if (ParentSequenceId != other.ParentSequenceId) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Name.Length != 0) hash ^= Name.GetHashCode();
      if (Description.Length != 0) hash ^= Description.GetHashCode();
      if (SequenceNumber != 0L) hash ^= SequenceNumber.GetHashCode();
      if (ParentSequenceId.Length != 0) hash ^= ParentSequenceId.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (ParentSequenceId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(ParentSequenceId);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (ParentSequenceId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(ParentSequenceId);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Name.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
      }
      if (Description.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Description);
      }
      if (SequenceNumber != 0L) {
        size += 1 + pb::CodedOutputStream.ComputeInt64Size(SequenceNumber);
      }
      if (ParentSequenceId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(ParentSequenceId);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(NewTaskMessage other) {
      if (other == null) {
        return;
      }
      if (other.Name.Length != 0) {
        Name = other.Name;
      }
      if (other.Description.Length != 0) {
        Description = other.Description;
      }
      if (other.SequenceNumber != 0L) {
        SequenceNumber = other.SequenceNumber;
      }
      if (other.ParentSequenceId.Length != 0) {
        ParentSequenceId = other.ParentSequenceId;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            ParentSequenceId = input.ReadString();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            ParentSequenceId = input.ReadString();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class UpdateTaskMessage : pb::IMessage<UpdateTaskMessage>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<UpdateTaskMessage> _parser = new pb::MessageParser<UpdateTaskMessage>(() => new UpdateTaskMessage());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<UpdateTaskMessage> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Messages.Plm.V1.TaskAuthoringReflection.Descriptor.MessageTypes[2]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public UpdateTaskMessage() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public UpdateTaskMessage(UpdateTaskMessage other) : this() {
      id_ = other.id_;
      name_ = other.name_;
      description_ = other.description_;
      sequenceNumber_ = other.sequenceNumber_;
      partId_ = other.partId_;
      modelId_ = other.modelId_;
      taskType_ = other.taskType_;
      target_ = other.target_ != null ? other.target_.Clone() : null;
      approach_ = other.approach_ != null ? other.approach_.Clone() : null;
      assignmentPreference_ = other.assignmentPreference_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public UpdateTaskMessage Clone() {
      return new UpdateTaskMessage(this);
    }

    /// <summary>Field number for the "id" field.</summary>
    public const int IdFieldNumber = 1;
    private string id_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Id {
      get { return id_; }
      set {
        id_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private string name_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Name {
      get { return name_; }
      set {
        name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "description" field.</summary>
    public const int DescriptionFieldNumber = 3;
    private string description_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Description {
      get { return description_; }
      set {
        description_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "sequence_number" field.</summary>
    public const int SequenceNumberFieldNumber = 4;
    private long sequenceNumber_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public long SequenceNumber {
      get { return sequenceNumber_; }
      set {
        sequenceNumber_ = value;
      }
    }

    /// <summary>Field number for the "part_id" field.</summary>
    public const int PartIdFieldNumber = 5;
    private string partId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string PartId {
      get { return partId_; }
      set {
        partId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "model_id" field.</summary>
    public const int ModelIdFieldNumber = 6;
    private string modelId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string ModelId {
      get { return modelId_; }
      set {
        modelId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "task_type" field.</summary>
    public const int TaskTypeFieldNumber = 7;
    private global::Messages.Plm.V1.TaskType taskType_ = global::Messages.Plm.V1.TaskType.Unspecified;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Plm.V1.TaskType TaskType {
      get { return taskType_; }
      set {
        taskType_ = value;
      }
    }

    /// <summary>Field number for the "target" field.</summary>
    public const int TargetFieldNumber = 8;
    private global::Messages.Common.V1.LocalizedPose target_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Common.V1.LocalizedPose Target {
      get { return target_; }
      set {
        target_ = value;
      }
    }

    /// <summary>Field number for the "approach" field.</summary>
    public const int ApproachFieldNumber = 9;
    private global::Messages.Common.V1.Vector3 approach_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Common.V1.Vector3 Approach {
      get { return approach_; }
      set {
        approach_ = value;
      }
    }

    /// <summary>Field number for the "assignment_preference" field.</summary>
    public const int AssignmentPreferenceFieldNumber = 19;
    private global::Messages.Plm.V1.TaskAssignmentPreference assignmentPreference_ = global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::Messages.Plm.V1.TaskAssignmentPreference AssignmentPreference {
      get { return assignmentPreference_; }
      set {
        assignmentPreference_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as UpdateTaskMessage);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(UpdateTaskMessage other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Id != other.Id) return false;
      if (Name != other.Name) return false;
      if (Description != other.Description) return false;
      if (SequenceNumber != other.SequenceNumber) return false;
      if (PartId != other.PartId) return false;
      if (ModelId != other.ModelId) return false;
      if (TaskType != other.TaskType) return false;
      if (!object.Equals(Target, other.Target)) return false;
      if (!object.Equals(Approach, other.Approach)) return false;
      if (AssignmentPreference != other.AssignmentPreference) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Id.Length != 0) hash ^= Id.GetHashCode();
      if (Name.Length != 0) hash ^= Name.GetHashCode();
      if (Description.Length != 0) hash ^= Description.GetHashCode();
      if (SequenceNumber != 0L) hash ^= SequenceNumber.GetHashCode();
      if (PartId.Length != 0) hash ^= PartId.GetHashCode();
      if (ModelId.Length != 0) hash ^= ModelId.GetHashCode();
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) hash ^= TaskType.GetHashCode();
      if (target_ != null) hash ^= Target.GetHashCode();
      if (approach_ != null) hash ^= Approach.GetHashCode();
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) hash ^= AssignmentPreference.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Id.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(Id);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (PartId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(PartId);
      }
      if (ModelId.Length != 0) {
        output.WriteRawTag(50);
        output.WriteString(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        output.WriteRawTag(56);
        output.WriteEnum((int) TaskType);
      }
      if (target_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(Target);
      }
      if (approach_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        output.WriteRawTag(152, 1);
        output.WriteEnum((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Id.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(Id);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (SequenceNumber != 0L) {
        output.WriteRawTag(32);
        output.WriteInt64(SequenceNumber);
      }
      if (PartId.Length != 0) {
        output.WriteRawTag(42);
        output.WriteString(PartId);
      }
      if (ModelId.Length != 0) {
        output.WriteRawTag(50);
        output.WriteString(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        output.WriteRawTag(56);
        output.WriteEnum((int) TaskType);
      }
      if (target_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(Target);
      }
      if (approach_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        output.WriteRawTag(152, 1);
        output.WriteEnum((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Id.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Id);
      }
      if (Name.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
      }
      if (Description.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Description);
      }
      if (SequenceNumber != 0L) {
        size += 1 + pb::CodedOutputStream.ComputeInt64Size(SequenceNumber);
      }
      if (PartId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(PartId);
      }
      if (ModelId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(ModelId);
      }
      if (TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) TaskType);
      }
      if (target_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Target);
      }
      if (approach_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Approach);
      }
      if (AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        size += 2 + pb::CodedOutputStream.ComputeEnumSize((int) AssignmentPreference);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(UpdateTaskMessage other) {
      if (other == null) {
        return;
      }
      if (other.Id.Length != 0) {
        Id = other.Id;
      }
      if (other.Name.Length != 0) {
        Name = other.Name;
      }
      if (other.Description.Length != 0) {
        Description = other.Description;
      }
      if (other.SequenceNumber != 0L) {
        SequenceNumber = other.SequenceNumber;
      }
      if (other.PartId.Length != 0) {
        PartId = other.PartId;
      }
      if (other.ModelId.Length != 0) {
        ModelId = other.ModelId;
      }
      if (other.TaskType != global::Messages.Plm.V1.TaskType.Unspecified) {
        TaskType = other.TaskType;
      }
      if (other.target_ != null) {
        if (target_ == null) {
          Target = new global::Messages.Common.V1.LocalizedPose();
        }
        Target.MergeFrom(other.Target);
      }
      if (other.approach_ != null) {
        if (approach_ == null) {
          Approach = new global::Messages.Common.V1.Vector3();
        }
        Approach.MergeFrom(other.Approach);
      }
      if (other.AssignmentPreference != global::Messages.Plm.V1.TaskAssignmentPreference.Unspecified) {
        AssignmentPreference = other.AssignmentPreference;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            Id = input.ReadString();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            PartId = input.ReadString();
            break;
          }
          case 50: {
            ModelId = input.ReadString();
            break;
          }
          case 56: {
            TaskType = (global::Messages.Plm.V1.TaskType) input.ReadEnum();
            break;
          }
          case 66: {
            if (target_ == null) {
              Target = new global::Messages.Common.V1.LocalizedPose();
            }
            input.ReadMessage(Target);
            break;
          }
          case 74: {
            if (approach_ == null) {
              Approach = new global::Messages.Common.V1.Vector3();
            }
            input.ReadMessage(Approach);
            break;
          }
          case 152: {
            AssignmentPreference = (global::Messages.Plm.V1.TaskAssignmentPreference) input.ReadEnum();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            Id = input.ReadString();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 32: {
            SequenceNumber = input.ReadInt64();
            break;
          }
          case 42: {
            PartId = input.ReadString();
            break;
          }
          case 50: {
            ModelId = input.ReadString();
            break;
          }
          case 56: {
            TaskType = (global::Messages.Plm.V1.TaskType) input.ReadEnum();
            break;
          }
          case 66: {
            if (target_ == null) {
              Target = new global::Messages.Common.V1.LocalizedPose();
            }
            input.ReadMessage(Target);
            break;
          }
          case 74: {
            if (approach_ == null) {
              Approach = new global::Messages.Common.V1.Vector3();
            }
            input.ReadMessage(Approach);
            break;
          }
          case 152: {
            AssignmentPreference = (global::Messages.Plm.V1.TaskAssignmentPreference) input.ReadEnum();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DeleteTaskMessage : pb::IMessage<DeleteTaskMessage>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DeleteTaskMessage> _parser = new pb::MessageParser<DeleteTaskMessage>(() => new DeleteTaskMessage());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DeleteTaskMessage> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::Messages.Plm.V1.TaskAuthoringReflection.Descriptor.MessageTypes[3]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DeleteTaskMessage() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DeleteTaskMessage(DeleteTaskMessage other) : this() {
      taskId_ = other.taskId_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DeleteTaskMessage Clone() {
      return new DeleteTaskMessage(this);
    }

    /// <summary>Field number for the "task_id" field.</summary>
    public const int TaskIdFieldNumber = 1;
    private string taskId_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string TaskId {
      get { return taskId_; }
      set {
        taskId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DeleteTaskMessage);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DeleteTaskMessage other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (TaskId != other.TaskId) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (TaskId.Length != 0) hash ^= TaskId.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (TaskId.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(TaskId);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (TaskId.Length != 0) {
        output.WriteRawTag(10);
        output.WriteString(TaskId);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (TaskId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(TaskId);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DeleteTaskMessage other) {
      if (other == null) {
        return;
      }
      if (other.TaskId.Length != 0) {
        TaskId = other.TaskId;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 10: {
            TaskId = input.ReadString();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 10: {
            TaskId = input.ReadString();
            break;
          }
        }
      }
    }
    #endif

  }

  #endregion

}

#endregion Designer generated code
