aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.PMR/Stubs
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2017-12-10 11:25:23 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2017-12-10 11:25:23 +0200
commit9bdc80e90d5ed5562430d49525da288a867d5e51 (patch)
tree99df222d3f36432eed126b8e894a6b55f5551e18 /Software/Visual_Studio/Tango.PMR/Stubs
parentf8c0a7d42104cf01ef6c3b0d51503a91ee0d7047 (diff)
downloadTango-9bdc80e90d5ed5562430d49525da288a867d5e51.tar.gz
Tango-9bdc80e90d5ed5562430d49525da288a867d5e51.zip
Implemented auto include of PMR messages on PMR project.
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR/Stubs')
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadRequest.cs163
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadResponse.cs302
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteRequest.cs282
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteResponse.cs188
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserRequest.cs285
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserResponse.cs256
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitRequest.cs194
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitResponse.cs253
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteRequest.cs162
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteResponse.cs222
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitRequest.cs222
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitResponse.cs225
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteRequest.cs191
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteResponse.cs194
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterRequest.cs222
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterResponse.cs222
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderRequest.cs254
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderResponse.cs282
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchRequest.cs194
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchResponse.cs225
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorRequest.cs288
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorResponse.cs224
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubValveRequest.cs225
-rw-r--r--Software/Visual_Studio/Tango.PMR/Stubs/StubValveResponse.cs162
24 files changed, 5437 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadRequest.cs
new file mode 100644
index 000000000..8046e1967
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadRequest.cs
@@ -0,0 +1,163 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_CartridgeReadRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_CartridgeReadRequest.proto</summary>
+ public static partial class StubCartridgeReadRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_CartridgeReadRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubCartridgeReadRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdHViX0NhcnRyaWRnZVJlYWRSZXF1ZXN0LnByb3RvEg9UYW5nby5QTVIu",
+ "U3R1YnMiMAoZU3R1Yl9DYXJ0cmlkZ2VSZWFkUmVxdWVzdBITCgtDYXJ0cmlk",
+ "Z2VJZBgBIAEoDUIbChljb20udHdpbmUudGFuZ28ucG1yLnN0dWJzYgZwcm90",
+ "bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_CartridgeReadRequest), global::Tango.PMR.Stubs.Stub_CartridgeReadRequest.Parser, new[]{ "CartridgeId" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_CartridgeReadRequest : pb::IMessage<Stub_CartridgeReadRequest> {
+ private static readonly pb::MessageParser<Stub_CartridgeReadRequest> _parser = new pb::MessageParser<Stub_CartridgeReadRequest>(() => new Stub_CartridgeReadRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_CartridgeReadRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubCartridgeReadRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadRequest(Stub_CartridgeReadRequest other) : this() {
+ cartridgeId_ = other.cartridgeId_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadRequest Clone() {
+ return new Stub_CartridgeReadRequest(this);
+ }
+
+ /// <summary>Field number for the "CartridgeId" field.</summary>
+ public const int CartridgeIdFieldNumber = 1;
+ private uint cartridgeId_;
+ /// <summary>
+ ///0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeId {
+ get { return cartridgeId_; }
+ set {
+ cartridgeId_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_CartridgeReadRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_CartridgeReadRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (CartridgeId != other.CartridgeId) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (CartridgeId != 0) hash ^= CartridgeId.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (CartridgeId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(CartridgeId);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (CartridgeId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeId);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_CartridgeReadRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.CartridgeId != 0) {
+ CartridgeId = other.CartridgeId;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ CartridgeId = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadResponse.cs
new file mode 100644
index 000000000..f975d79c2
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeReadResponse.cs
@@ -0,0 +1,302 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_CartridgeReadResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_CartridgeReadResponse.proto</summary>
+ public static partial class StubCartridgeReadResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_CartridgeReadResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubCartridgeReadResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiBTdHViX0NhcnRyaWRnZVJlYWRSZXNwb25zZS5wcm90bxIPVGFuZ28uUE1S",
+ "LlN0dWJzIqEBChpTdHViX0NhcnRyaWRnZVJlYWRSZXNwb25zZRITCgtDYXJ0",
+ "cmlkZ2VJZBgBIAEoDRIWCg5DYXJ0cmlkZ2VDb2xvchgDIAEoDRIYChBDYXJ0",
+ "cmlkZ2VWZXJzaW9uGAQgASgNEhUKDUNhcnRyaWRnZURhdGEYBSABKA0SFQoN",
+ "Q2FydHJpZGdlVXNlZBgGIAEoCBIOCgZTdGF0dXMYCCABKA1CGwoZY29tLnR3",
+ "aW5lLnRhbmdvLnBtci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_CartridgeReadResponse), global::Tango.PMR.Stubs.Stub_CartridgeReadResponse.Parser, new[]{ "CartridgeId", "CartridgeColor", "CartridgeVersion", "CartridgeData", "CartridgeUsed", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_CartridgeReadResponse : pb::IMessage<Stub_CartridgeReadResponse> {
+ private static readonly pb::MessageParser<Stub_CartridgeReadResponse> _parser = new pb::MessageParser<Stub_CartridgeReadResponse>(() => new Stub_CartridgeReadResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_CartridgeReadResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubCartridgeReadResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadResponse(Stub_CartridgeReadResponse other) : this() {
+ cartridgeId_ = other.cartridgeId_;
+ cartridgeColor_ = other.cartridgeColor_;
+ cartridgeVersion_ = other.cartridgeVersion_;
+ cartridgeData_ = other.cartridgeData_;
+ cartridgeUsed_ = other.cartridgeUsed_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeReadResponse Clone() {
+ return new Stub_CartridgeReadResponse(this);
+ }
+
+ /// <summary>Field number for the "CartridgeId" field.</summary>
+ public const int CartridgeIdFieldNumber = 1;
+ private uint cartridgeId_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeId {
+ get { return cartridgeId_; }
+ set {
+ cartridgeId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeColor" field.</summary>
+ public const int CartridgeColorFieldNumber = 3;
+ private uint cartridgeColor_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeColor {
+ get { return cartridgeColor_; }
+ set {
+ cartridgeColor_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeVersion" field.</summary>
+ public const int CartridgeVersionFieldNumber = 4;
+ private uint cartridgeVersion_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeVersion {
+ get { return cartridgeVersion_; }
+ set {
+ cartridgeVersion_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeData" field.</summary>
+ public const int CartridgeDataFieldNumber = 5;
+ private uint cartridgeData_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeData {
+ get { return cartridgeData_; }
+ set {
+ cartridgeData_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeUsed" field.</summary>
+ public const int CartridgeUsedFieldNumber = 6;
+ private bool cartridgeUsed_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool CartridgeUsed {
+ get { return cartridgeUsed_; }
+ set {
+ cartridgeUsed_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 8;
+ private uint status_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_CartridgeReadResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_CartridgeReadResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (CartridgeId != other.CartridgeId) return false;
+ if (CartridgeColor != other.CartridgeColor) return false;
+ if (CartridgeVersion != other.CartridgeVersion) return false;
+ if (CartridgeData != other.CartridgeData) return false;
+ if (CartridgeUsed != other.CartridgeUsed) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (CartridgeId != 0) hash ^= CartridgeId.GetHashCode();
+ if (CartridgeColor != 0) hash ^= CartridgeColor.GetHashCode();
+ if (CartridgeVersion != 0) hash ^= CartridgeVersion.GetHashCode();
+ if (CartridgeData != 0) hash ^= CartridgeData.GetHashCode();
+ if (CartridgeUsed != false) hash ^= CartridgeUsed.GetHashCode();
+ if (Status != 0) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (CartridgeId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(CartridgeId);
+ }
+ if (CartridgeColor != 0) {
+ output.WriteRawTag(24);
+ output.WriteUInt32(CartridgeColor);
+ }
+ if (CartridgeVersion != 0) {
+ output.WriteRawTag(32);
+ output.WriteUInt32(CartridgeVersion);
+ }
+ if (CartridgeData != 0) {
+ output.WriteRawTag(40);
+ output.WriteUInt32(CartridgeData);
+ }
+ if (CartridgeUsed != false) {
+ output.WriteRawTag(48);
+ output.WriteBool(CartridgeUsed);
+ }
+ if (Status != 0) {
+ output.WriteRawTag(64);
+ output.WriteUInt32(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (CartridgeId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeId);
+ }
+ if (CartridgeColor != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeColor);
+ }
+ if (CartridgeVersion != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeVersion);
+ }
+ if (CartridgeData != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeData);
+ }
+ if (CartridgeUsed != false) {
+ size += 1 + 1;
+ }
+ if (Status != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Status);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_CartridgeReadResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.CartridgeId != 0) {
+ CartridgeId = other.CartridgeId;
+ }
+ if (other.CartridgeColor != 0) {
+ CartridgeColor = other.CartridgeColor;
+ }
+ if (other.CartridgeVersion != 0) {
+ CartridgeVersion = other.CartridgeVersion;
+ }
+ if (other.CartridgeData != 0) {
+ CartridgeData = other.CartridgeData;
+ }
+ if (other.CartridgeUsed != false) {
+ CartridgeUsed = other.CartridgeUsed;
+ }
+ if (other.Status != 0) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ CartridgeId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ CartridgeColor = input.ReadUInt32();
+ break;
+ }
+ case 32: {
+ CartridgeVersion = input.ReadUInt32();
+ break;
+ }
+ case 40: {
+ CartridgeData = input.ReadUInt32();
+ break;
+ }
+ case 48: {
+ CartridgeUsed = input.ReadBool();
+ break;
+ }
+ case 64: {
+ Status = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteRequest.cs
new file mode 100644
index 000000000..51b83052f
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteRequest.cs
@@ -0,0 +1,282 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_CartridgeWriteRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_CartridgeWriteRequest.proto</summary>
+ public static partial class StubCartridgeWriteRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_CartridgeWriteRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubCartridgeWriteRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiBTdHViX0NhcnRyaWRnZVdyaXRlUmVxdWVzdC5wcm90bxIPVGFuZ28uUE1S",
+ "LlN0dWJzIpEBChpTdHViX0NhcnRyaWRnZVdyaXRlUmVxdWVzdBITCgtDYXJ0",
+ "cmlkZ2VJZBgBIAEoDRIWCg5DYXJ0cmlkZ2VDb2xvchgCIAEoDRIYChBDYXJ0",
+ "cmlkZ2VWZXJzaW9uGAMgASgNEhUKDUNhcnRyaWRnZURhdGEYBCABKA0SFQoN",
+ "Q2FydHJpZGdlVXNlZBgFIAEoCEIbChljb20udHdpbmUudGFuZ28ucG1yLnN0",
+ "dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_CartridgeWriteRequest), global::Tango.PMR.Stubs.Stub_CartridgeWriteRequest.Parser, new[]{ "CartridgeId", "CartridgeColor", "CartridgeVersion", "CartridgeData", "CartridgeUsed" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_CartridgeWriteRequest : pb::IMessage<Stub_CartridgeWriteRequest> {
+ private static readonly pb::MessageParser<Stub_CartridgeWriteRequest> _parser = new pb::MessageParser<Stub_CartridgeWriteRequest>(() => new Stub_CartridgeWriteRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_CartridgeWriteRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubCartridgeWriteRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteRequest(Stub_CartridgeWriteRequest other) : this() {
+ cartridgeId_ = other.cartridgeId_;
+ cartridgeColor_ = other.cartridgeColor_;
+ cartridgeVersion_ = other.cartridgeVersion_;
+ cartridgeData_ = other.cartridgeData_;
+ cartridgeUsed_ = other.cartridgeUsed_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteRequest Clone() {
+ return new Stub_CartridgeWriteRequest(this);
+ }
+
+ /// <summary>Field number for the "CartridgeId" field.</summary>
+ public const int CartridgeIdFieldNumber = 1;
+ private uint cartridgeId_;
+ /// <summary>
+ ///0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeId {
+ get { return cartridgeId_; }
+ set {
+ cartridgeId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeColor" field.</summary>
+ public const int CartridgeColorFieldNumber = 2;
+ private uint cartridgeColor_;
+ /// <summary>
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeColor {
+ get { return cartridgeColor_; }
+ set {
+ cartridgeColor_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeVersion" field.</summary>
+ public const int CartridgeVersionFieldNumber = 3;
+ private uint cartridgeVersion_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeVersion {
+ get { return cartridgeVersion_; }
+ set {
+ cartridgeVersion_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeData" field.</summary>
+ public const int CartridgeDataFieldNumber = 4;
+ private uint cartridgeData_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeData {
+ get { return cartridgeData_; }
+ set {
+ cartridgeData_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "CartridgeUsed" field.</summary>
+ public const int CartridgeUsedFieldNumber = 5;
+ private bool cartridgeUsed_;
+ /// <summary>
+ /// 0 - new 1- used
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool CartridgeUsed {
+ get { return cartridgeUsed_; }
+ set {
+ cartridgeUsed_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_CartridgeWriteRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_CartridgeWriteRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (CartridgeId != other.CartridgeId) return false;
+ if (CartridgeColor != other.CartridgeColor) return false;
+ if (CartridgeVersion != other.CartridgeVersion) return false;
+ if (CartridgeData != other.CartridgeData) return false;
+ if (CartridgeUsed != other.CartridgeUsed) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (CartridgeId != 0) hash ^= CartridgeId.GetHashCode();
+ if (CartridgeColor != 0) hash ^= CartridgeColor.GetHashCode();
+ if (CartridgeVersion != 0) hash ^= CartridgeVersion.GetHashCode();
+ if (CartridgeData != 0) hash ^= CartridgeData.GetHashCode();
+ if (CartridgeUsed != false) hash ^= CartridgeUsed.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (CartridgeId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(CartridgeId);
+ }
+ if (CartridgeColor != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(CartridgeColor);
+ }
+ if (CartridgeVersion != 0) {
+ output.WriteRawTag(24);
+ output.WriteUInt32(CartridgeVersion);
+ }
+ if (CartridgeData != 0) {
+ output.WriteRawTag(32);
+ output.WriteUInt32(CartridgeData);
+ }
+ if (CartridgeUsed != false) {
+ output.WriteRawTag(40);
+ output.WriteBool(CartridgeUsed);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (CartridgeId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeId);
+ }
+ if (CartridgeColor != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeColor);
+ }
+ if (CartridgeVersion != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeVersion);
+ }
+ if (CartridgeData != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeData);
+ }
+ if (CartridgeUsed != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_CartridgeWriteRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.CartridgeId != 0) {
+ CartridgeId = other.CartridgeId;
+ }
+ if (other.CartridgeColor != 0) {
+ CartridgeColor = other.CartridgeColor;
+ }
+ if (other.CartridgeVersion != 0) {
+ CartridgeVersion = other.CartridgeVersion;
+ }
+ if (other.CartridgeData != 0) {
+ CartridgeData = other.CartridgeData;
+ }
+ if (other.CartridgeUsed != false) {
+ CartridgeUsed = other.CartridgeUsed;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ CartridgeId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ CartridgeColor = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ CartridgeVersion = input.ReadUInt32();
+ break;
+ }
+ case 32: {
+ CartridgeData = input.ReadUInt32();
+ break;
+ }
+ case 40: {
+ CartridgeUsed = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteResponse.cs
new file mode 100644
index 000000000..f29327b0f
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubCartridgeWriteResponse.cs
@@ -0,0 +1,188 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_CartridgeWriteResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_CartridgeWriteResponse.proto</summary>
+ public static partial class StubCartridgeWriteResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_CartridgeWriteResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubCartridgeWriteResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiFTdHViX0NhcnRyaWRnZVdyaXRlUmVzcG9uc2UucHJvdG8SD1RhbmdvLlBN",
+ "Ui5TdHVicyJCChtTdHViX0NhcnRyaWRnZVdyaXRlUmVzcG9uc2USEwoLQ2Fy",
+ "dHJpZGdlSWQYASABKA0SDgoGU3RhdHVzGAggASgNQhsKGWNvbS50d2luZS50",
+ "YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_CartridgeWriteResponse), global::Tango.PMR.Stubs.Stub_CartridgeWriteResponse.Parser, new[]{ "CartridgeId", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_CartridgeWriteResponse : pb::IMessage<Stub_CartridgeWriteResponse> {
+ private static readonly pb::MessageParser<Stub_CartridgeWriteResponse> _parser = new pb::MessageParser<Stub_CartridgeWriteResponse>(() => new Stub_CartridgeWriteResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_CartridgeWriteResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubCartridgeWriteResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteResponse(Stub_CartridgeWriteResponse other) : this() {
+ cartridgeId_ = other.cartridgeId_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_CartridgeWriteResponse Clone() {
+ return new Stub_CartridgeWriteResponse(this);
+ }
+
+ /// <summary>Field number for the "CartridgeId" field.</summary>
+ public const int CartridgeIdFieldNumber = 1;
+ private uint cartridgeId_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint CartridgeId {
+ get { return cartridgeId_; }
+ set {
+ cartridgeId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 8;
+ private uint status_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_CartridgeWriteResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_CartridgeWriteResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (CartridgeId != other.CartridgeId) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (CartridgeId != 0) hash ^= CartridgeId.GetHashCode();
+ if (Status != 0) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (CartridgeId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(CartridgeId);
+ }
+ if (Status != 0) {
+ output.WriteRawTag(64);
+ output.WriteUInt32(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (CartridgeId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CartridgeId);
+ }
+ if (Status != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Status);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_CartridgeWriteResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.CartridgeId != 0) {
+ CartridgeId = other.CartridgeId;
+ }
+ if (other.Status != 0) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ CartridgeId = input.ReadUInt32();
+ break;
+ }
+ case 64: {
+ Status = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserRequest.cs
new file mode 100644
index 000000000..4d7fdaa59
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserRequest.cs
@@ -0,0 +1,285 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_DispenserRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_DispenserRequest.proto</summary>
+ public static partial class StubDispenserRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_DispenserRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubDispenserRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChtTdHViX0Rpc3BlbnNlclJlcXVlc3QucHJvdG8SD1RhbmdvLlBNUi5TdHVi",
+ "cyKBAQoVU3R1Yl9EaXNwZW5zZXJSZXF1ZXN0EhMKC0Rpc3BlbnNlcklkGAEg",
+ "ASgNEg0KBVN0YXJ0GAIgASgIEhQKDFNldERpcmVjdGlvbhgDIAEoCBIcChRT",
+ "ZXRNaWNyb3N0ZXBEaXZpc2lvbhgEIAEoBRIQCghTZXRTcGVlZBgFIAEoBUIb",
+ "Chljb20udHdpbmUudGFuZ28ucG1yLnN0dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_DispenserRequest), global::Tango.PMR.Stubs.Stub_DispenserRequest.Parser, new[]{ "DispenserId", "Start", "SetDirection", "SetMicrostepDivision", "SetSpeed" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_DispenserRequest : pb::IMessage<Stub_DispenserRequest> {
+ private static readonly pb::MessageParser<Stub_DispenserRequest> _parser = new pb::MessageParser<Stub_DispenserRequest>(() => new Stub_DispenserRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_DispenserRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubDispenserRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserRequest(Stub_DispenserRequest other) : this() {
+ dispenserId_ = other.dispenserId_;
+ start_ = other.start_;
+ setDirection_ = other.setDirection_;
+ setMicrostepDivision_ = other.setMicrostepDivision_;
+ setSpeed_ = other.setSpeed_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserRequest Clone() {
+ return new Stub_DispenserRequest(this);
+ }
+
+ /// <summary>Field number for the "DispenserId" field.</summary>
+ public const int DispenserIdFieldNumber = 1;
+ private uint dispenserId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint DispenserId {
+ get { return dispenserId_; }
+ set {
+ dispenserId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Start" field.</summary>
+ public const int StartFieldNumber = 2;
+ private bool start_;
+ /// <summary>
+ /// 1-start 0-stop
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Start {
+ get { return start_; }
+ set {
+ start_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetDirection" field.</summary>
+ public const int SetDirectionFieldNumber = 3;
+ private bool setDirection_;
+ /// <summary>
+ /// 1-cw 0-ccw
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool SetDirection {
+ get { return setDirection_; }
+ set {
+ setDirection_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetMicrostepDivision" field.</summary>
+ public const int SetMicrostepDivisionFieldNumber = 4;
+ private int setMicrostepDivision_;
+ /// <summary>
+ /// No. of steps for 360 deg.
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int SetMicrostepDivision {
+ get { return setMicrostepDivision_; }
+ set {
+ setMicrostepDivision_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetSpeed" field.</summary>
+ public const int SetSpeedFieldNumber = 5;
+ private int setSpeed_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int SetSpeed {
+ get { return setSpeed_; }
+ set {
+ setSpeed_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_DispenserRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_DispenserRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (DispenserId != other.DispenserId) return false;
+ if (Start != other.Start) return false;
+ if (SetDirection != other.SetDirection) return false;
+ if (SetMicrostepDivision != other.SetMicrostepDivision) return false;
+ if (SetSpeed != other.SetSpeed) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (DispenserId != 0) hash ^= DispenserId.GetHashCode();
+ if (Start != false) hash ^= Start.GetHashCode();
+ if (SetDirection != false) hash ^= SetDirection.GetHashCode();
+ if (SetMicrostepDivision != 0) hash ^= SetMicrostepDivision.GetHashCode();
+ if (SetSpeed != 0) hash ^= SetSpeed.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (DispenserId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(DispenserId);
+ }
+ if (Start != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(Start);
+ }
+ if (SetDirection != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(SetDirection);
+ }
+ if (SetMicrostepDivision != 0) {
+ output.WriteRawTag(32);
+ output.WriteInt32(SetMicrostepDivision);
+ }
+ if (SetSpeed != 0) {
+ output.WriteRawTag(40);
+ output.WriteInt32(SetSpeed);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (DispenserId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DispenserId);
+ }
+ if (Start != false) {
+ size += 1 + 1;
+ }
+ if (SetDirection != false) {
+ size += 1 + 1;
+ }
+ if (SetMicrostepDivision != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeInt32Size(SetMicrostepDivision);
+ }
+ if (SetSpeed != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeInt32Size(SetSpeed);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_DispenserRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.DispenserId != 0) {
+ DispenserId = other.DispenserId;
+ }
+ if (other.Start != false) {
+ Start = other.Start;
+ }
+ if (other.SetDirection != false) {
+ SetDirection = other.SetDirection;
+ }
+ if (other.SetMicrostepDivision != 0) {
+ SetMicrostepDivision = other.SetMicrostepDivision;
+ }
+ if (other.SetSpeed != 0) {
+ SetSpeed = other.SetSpeed;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ DispenserId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ Start = input.ReadBool();
+ break;
+ }
+ case 24: {
+ SetDirection = input.ReadBool();
+ break;
+ }
+ case 32: {
+ SetMicrostepDivision = input.ReadInt32();
+ break;
+ }
+ case 40: {
+ SetSpeed = input.ReadInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserResponse.cs
new file mode 100644
index 000000000..79ca44012
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubDispenserResponse.cs
@@ -0,0 +1,256 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_DispenserResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_DispenserResponse.proto</summary>
+ public static partial class StubDispenserResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_DispenserResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubDispenserResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChxTdHViX0Rpc3BlbnNlclJlc3BvbnNlLnByb3RvEg9UYW5nby5QTVIuU3R1",
+ "YnMicQoWU3R1Yl9EaXNwZW5zZXJSZXNwb25zZRITCgtEaXNwZW5zZXJJZBgB",
+ "IAEoDRIZChFEaXNwZW5zZXJQb3NpdGlvbhgCIAEoDRIXCg9JbmtXb3JuaW5n",
+ "TGV2ZWwYAyABKA0SDgoGU3RhdHVzGAQgASgIQhsKGWNvbS50d2luZS50YW5n",
+ "by5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_DispenserResponse), global::Tango.PMR.Stubs.Stub_DispenserResponse.Parser, new[]{ "DispenserId", "DispenserPosition", "InkWorningLevel", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_DispenserResponse : pb::IMessage<Stub_DispenserResponse> {
+ private static readonly pb::MessageParser<Stub_DispenserResponse> _parser = new pb::MessageParser<Stub_DispenserResponse>(() => new Stub_DispenserResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_DispenserResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubDispenserResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserResponse(Stub_DispenserResponse other) : this() {
+ dispenserId_ = other.dispenserId_;
+ dispenserPosition_ = other.dispenserPosition_;
+ inkWorningLevel_ = other.inkWorningLevel_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_DispenserResponse Clone() {
+ return new Stub_DispenserResponse(this);
+ }
+
+ /// <summary>Field number for the "DispenserId" field.</summary>
+ public const int DispenserIdFieldNumber = 1;
+ private uint dispenserId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint DispenserId {
+ get { return dispenserId_; }
+ set {
+ dispenserId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "DispenserPosition" field.</summary>
+ public const int DispenserPositionFieldNumber = 2;
+ private uint dispenserPosition_;
+ /// <summary>
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint DispenserPosition {
+ get { return dispenserPosition_; }
+ set {
+ dispenserPosition_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "InkWorningLevel" field.</summary>
+ public const int InkWorningLevelFieldNumber = 3;
+ private uint inkWorningLevel_;
+ /// <summary>
+ /// 1- critical 2- level 3- overflow
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint InkWorningLevel {
+ get { return inkWorningLevel_; }
+ set {
+ inkWorningLevel_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 4;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_DispenserResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_DispenserResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (DispenserId != other.DispenserId) return false;
+ if (DispenserPosition != other.DispenserPosition) return false;
+ if (InkWorningLevel != other.InkWorningLevel) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (DispenserId != 0) hash ^= DispenserId.GetHashCode();
+ if (DispenserPosition != 0) hash ^= DispenserPosition.GetHashCode();
+ if (InkWorningLevel != 0) hash ^= InkWorningLevel.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (DispenserId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(DispenserId);
+ }
+ if (DispenserPosition != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(DispenserPosition);
+ }
+ if (InkWorningLevel != 0) {
+ output.WriteRawTag(24);
+ output.WriteUInt32(InkWorningLevel);
+ }
+ if (Status != false) {
+ output.WriteRawTag(32);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (DispenserId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DispenserId);
+ }
+ if (DispenserPosition != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DispenserPosition);
+ }
+ if (InkWorningLevel != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(InkWorningLevel);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_DispenserResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.DispenserId != 0) {
+ DispenserId = other.DispenserId;
+ }
+ if (other.DispenserPosition != 0) {
+ DispenserPosition = other.DispenserPosition;
+ }
+ if (other.InkWorningLevel != 0) {
+ InkWorningLevel = other.InkWorningLevel;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ DispenserId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ DispenserPosition = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ InkWorningLevel = input.ReadUInt32();
+ break;
+ }
+ case 32: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitRequest.cs
new file mode 100644
index 000000000..95c154f8c
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitRequest.cs
@@ -0,0 +1,194 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOReadBitRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOReadBitRequest.proto</summary>
+ public static partial class StubGPIOReadBitRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOReadBitRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOReadBitRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch1TdHViX0dQSU9SZWFkQml0UmVxdWVzdC5wcm90bxIPVGFuZ28uUE1SLlN0",
+ "dWJzIjgKF1N0dWJfR1BJT1JlYWRCaXRSZXF1ZXN0Eg4KBlBvcnRJZBgBIAEo",
+ "DRINCgVQaW5JZBgCIAEoDUIbChljb20udHdpbmUudGFuZ28ucG1yLnN0dWJz",
+ "YgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOReadBitRequest), global::Tango.PMR.Stubs.Stub_GPIOReadBitRequest.Parser, new[]{ "PortId", "PinId" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOReadBitRequest : pb::IMessage<Stub_GPIOReadBitRequest> {
+ private static readonly pb::MessageParser<Stub_GPIOReadBitRequest> _parser = new pb::MessageParser<Stub_GPIOReadBitRequest>(() => new Stub_GPIOReadBitRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOReadBitRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOReadBitRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitRequest(Stub_GPIOReadBitRequest other) : this() {
+ portId_ = other.portId_;
+ pinId_ = other.pinId_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitRequest Clone() {
+ return new Stub_GPIOReadBitRequest(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "PinId" field.</summary>
+ public const int PinIdFieldNumber = 2;
+ private uint pinId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PinId {
+ get { return pinId_; }
+ set {
+ pinId_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOReadBitRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOReadBitRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (PinId != other.PinId) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (PinId != 0) hash ^= PinId.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (PinId != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(PinId);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (PinId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PinId);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOReadBitRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.PinId != 0) {
+ PinId = other.PinId;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ PinId = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitResponse.cs
new file mode 100644
index 000000000..3dd4e70d8
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadBitResponse.cs
@@ -0,0 +1,253 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOReadBitResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOReadBitResponse.proto</summary>
+ public static partial class StubGPIOReadBitResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOReadBitResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOReadBitResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdHViX0dQSU9SZWFkQml0UmVzcG9uc2UucHJvdG8SD1RhbmdvLlBNUi5T",
+ "dHVicyJbChhTdHViX0dQSU9SZWFkQml0UmVzcG9uc2USDgoGUG9ydElkGAEg",
+ "ASgNEg0KBVBpbklkGAIgASgNEhAKCEJpdFZhbHVlGAMgASgIEg4KBlN0YXR1",
+ "cxgEIAEoCEIbChljb20udHdpbmUudGFuZ28ucG1yLnN0dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOReadBitResponse), global::Tango.PMR.Stubs.Stub_GPIOReadBitResponse.Parser, new[]{ "PortId", "PinId", "BitValue", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOReadBitResponse : pb::IMessage<Stub_GPIOReadBitResponse> {
+ private static readonly pb::MessageParser<Stub_GPIOReadBitResponse> _parser = new pb::MessageParser<Stub_GPIOReadBitResponse>(() => new Stub_GPIOReadBitResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOReadBitResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOReadBitResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitResponse(Stub_GPIOReadBitResponse other) : this() {
+ portId_ = other.portId_;
+ pinId_ = other.pinId_;
+ bitValue_ = other.bitValue_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadBitResponse Clone() {
+ return new Stub_GPIOReadBitResponse(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "PinId" field.</summary>
+ public const int PinIdFieldNumber = 2;
+ private uint pinId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PinId {
+ get { return pinId_; }
+ set {
+ pinId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "BitValue" field.</summary>
+ public const int BitValueFieldNumber = 3;
+ private bool bitValue_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool BitValue {
+ get { return bitValue_; }
+ set {
+ bitValue_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 4;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOReadBitResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOReadBitResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (PinId != other.PinId) return false;
+ if (BitValue != other.BitValue) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (PinId != 0) hash ^= PinId.GetHashCode();
+ if (BitValue != false) hash ^= BitValue.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (PinId != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(PinId);
+ }
+ if (BitValue != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(BitValue);
+ }
+ if (Status != false) {
+ output.WriteRawTag(32);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (PinId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PinId);
+ }
+ if (BitValue != false) {
+ size += 1 + 1;
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOReadBitResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.PinId != 0) {
+ PinId = other.PinId;
+ }
+ if (other.BitValue != false) {
+ BitValue = other.BitValue;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ PinId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ BitValue = input.ReadBool();
+ break;
+ }
+ case 32: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteRequest.cs
new file mode 100644
index 000000000..d89c70370
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteRequest.cs
@@ -0,0 +1,162 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOReadByteRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOReadByteRequest.proto</summary>
+ public static partial class StubGPIOReadByteRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOReadByteRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOReadByteRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdHViX0dQSU9SZWFkQnl0ZVJlcXVlc3QucHJvdG8SD1RhbmdvLlBNUi5T",
+ "dHVicyIqChhTdHViX0dQSU9SZWFkQnl0ZVJlcXVlc3QSDgoGUG9ydElkGAEg",
+ "ASgNQhsKGWNvbS50d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOReadByteRequest), global::Tango.PMR.Stubs.Stub_GPIOReadByteRequest.Parser, new[]{ "PortId" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOReadByteRequest : pb::IMessage<Stub_GPIOReadByteRequest> {
+ private static readonly pb::MessageParser<Stub_GPIOReadByteRequest> _parser = new pb::MessageParser<Stub_GPIOReadByteRequest>(() => new Stub_GPIOReadByteRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOReadByteRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOReadByteRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteRequest(Stub_GPIOReadByteRequest other) : this() {
+ portId_ = other.portId_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteRequest Clone() {
+ return new Stub_GPIOReadByteRequest(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOReadByteRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOReadByteRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOReadByteRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteResponse.cs
new file mode 100644
index 000000000..8557eb925
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOReadByteResponse.cs
@@ -0,0 +1,222 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOReadByteResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOReadByteResponse.proto</summary>
+ public static partial class StubGPIOReadByteResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOReadByteResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOReadByteResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdHViX0dQSU9SZWFkQnl0ZVJlc3BvbnNlLnByb3RvEg9UYW5nby5QTVIu",
+ "U3R1YnMiTgoZU3R1Yl9HUElPUmVhZEJ5dGVSZXNwb25zZRIOCgZQb3J0SWQY",
+ "ASABKA0SEQoJQnl0ZVZhbHVlGAIgASgNEg4KBnN0YXR1cxgDIAEoCEIbChlj",
+ "b20udHdpbmUudGFuZ28ucG1yLnN0dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOReadByteResponse), global::Tango.PMR.Stubs.Stub_GPIOReadByteResponse.Parser, new[]{ "PortId", "ByteValue", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOReadByteResponse : pb::IMessage<Stub_GPIOReadByteResponse> {
+ private static readonly pb::MessageParser<Stub_GPIOReadByteResponse> _parser = new pb::MessageParser<Stub_GPIOReadByteResponse>(() => new Stub_GPIOReadByteResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOReadByteResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOReadByteResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteResponse(Stub_GPIOReadByteResponse other) : this() {
+ portId_ = other.portId_;
+ byteValue_ = other.byteValue_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOReadByteResponse Clone() {
+ return new Stub_GPIOReadByteResponse(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "ByteValue" field.</summary>
+ public const int ByteValueFieldNumber = 2;
+ private uint byteValue_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint ByteValue {
+ get { return byteValue_; }
+ set {
+ byteValue_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOReadByteResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOReadByteResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (ByteValue != other.ByteValue) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (ByteValue != 0) hash ^= ByteValue.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (ByteValue != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(ByteValue);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (ByteValue != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(ByteValue);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOReadByteResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.ByteValue != 0) {
+ ByteValue = other.ByteValue;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ ByteValue = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitRequest.cs
new file mode 100644
index 000000000..5d2497f13
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitRequest.cs
@@ -0,0 +1,222 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOWriteBitRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOWriteBitRequest.proto</summary>
+ public static partial class StubGPIOWriteBitRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOWriteBitRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOWriteBitRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdHViX0dQSU9Xcml0ZUJpdFJlcXVlc3QucHJvdG8SD1RhbmdvLlBNUi5T",
+ "dHVicyJNChhTdHViX0dQSU9Xcml0ZUJpdFJlcXVlc3QSDgoGUG9ydElkGAEg",
+ "ASgNEg0KBVBpbklkGAIgASgNEhIKCkJpdFRvV3JpdGUYAyABKAhCGwoZY29t",
+ "LnR3aW5lLnRhbmdvLnBtci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOWriteBitRequest), global::Tango.PMR.Stubs.Stub_GPIOWriteBitRequest.Parser, new[]{ "PortId", "PinId", "BitToWrite" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOWriteBitRequest : pb::IMessage<Stub_GPIOWriteBitRequest> {
+ private static readonly pb::MessageParser<Stub_GPIOWriteBitRequest> _parser = new pb::MessageParser<Stub_GPIOWriteBitRequest>(() => new Stub_GPIOWriteBitRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOWriteBitRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOWriteBitRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitRequest(Stub_GPIOWriteBitRequest other) : this() {
+ portId_ = other.portId_;
+ pinId_ = other.pinId_;
+ bitToWrite_ = other.bitToWrite_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitRequest Clone() {
+ return new Stub_GPIOWriteBitRequest(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "PinId" field.</summary>
+ public const int PinIdFieldNumber = 2;
+ private uint pinId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PinId {
+ get { return pinId_; }
+ set {
+ pinId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "BitToWrite" field.</summary>
+ public const int BitToWriteFieldNumber = 3;
+ private bool bitToWrite_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool BitToWrite {
+ get { return bitToWrite_; }
+ set {
+ bitToWrite_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOWriteBitRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOWriteBitRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (PinId != other.PinId) return false;
+ if (BitToWrite != other.BitToWrite) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (PinId != 0) hash ^= PinId.GetHashCode();
+ if (BitToWrite != false) hash ^= BitToWrite.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (PinId != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(PinId);
+ }
+ if (BitToWrite != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(BitToWrite);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (PinId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PinId);
+ }
+ if (BitToWrite != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOWriteBitRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.PinId != 0) {
+ PinId = other.PinId;
+ }
+ if (other.BitToWrite != false) {
+ BitToWrite = other.BitToWrite;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ PinId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ BitToWrite = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitResponse.cs
new file mode 100644
index 000000000..ef9fa50a3
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteBitResponse.cs
@@ -0,0 +1,225 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOWriteBitResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOWriteBitResponse.proto</summary>
+ public static partial class StubGPIOWriteBitResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOWriteBitResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOWriteBitResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdHViX0dQSU9Xcml0ZUJpdFJlc3BvbnNlLnByb3RvEg9UYW5nby5QTVIu",
+ "U3R1YnMiSgoZU3R1Yl9HUElPV3JpdGVCaXRSZXNwb25zZRIOCgZQb3J0SWQY",
+ "ASABKA0SDQoFUGluSWQYAiABKA0SDgoGU3RhdHVzGAMgASgIQhsKGWNvbS50",
+ "d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOWriteBitResponse), global::Tango.PMR.Stubs.Stub_GPIOWriteBitResponse.Parser, new[]{ "PortId", "PinId", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOWriteBitResponse : pb::IMessage<Stub_GPIOWriteBitResponse> {
+ private static readonly pb::MessageParser<Stub_GPIOWriteBitResponse> _parser = new pb::MessageParser<Stub_GPIOWriteBitResponse>(() => new Stub_GPIOWriteBitResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOWriteBitResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOWriteBitResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitResponse(Stub_GPIOWriteBitResponse other) : this() {
+ portId_ = other.portId_;
+ pinId_ = other.pinId_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteBitResponse Clone() {
+ return new Stub_GPIOWriteBitResponse(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "PinId" field.</summary>
+ public const int PinIdFieldNumber = 2;
+ private uint pinId_;
+ /// <summary>
+ /// 0..7
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PinId {
+ get { return pinId_; }
+ set {
+ pinId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOWriteBitResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOWriteBitResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (PinId != other.PinId) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (PinId != 0) hash ^= PinId.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (PinId != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(PinId);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (PinId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PinId);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOWriteBitResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.PinId != 0) {
+ PinId = other.PinId;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ PinId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteRequest.cs
new file mode 100644
index 000000000..25813f4de
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteRequest.cs
@@ -0,0 +1,191 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOWriteByteRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOWriteByteRequest.proto</summary>
+ public static partial class StubGPIOWriteByteRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOWriteByteRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOWriteByteRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdHViX0dQSU9Xcml0ZUJ5dGVSZXF1ZXN0LnByb3RvEg9UYW5nby5QTVIu",
+ "U3R1YnMiQAoZU3R1Yl9HUElPV3JpdGVCeXRlUmVxdWVzdBIOCgZQb3J0SWQY",
+ "ASABKA0SEwoLRGF0YVRvV3JpdGUYAyABKA1CGwoZY29tLnR3aW5lLnRhbmdv",
+ "LnBtci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOWriteByteRequest), global::Tango.PMR.Stubs.Stub_GPIOWriteByteRequest.Parser, new[]{ "PortId", "DataToWrite" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOWriteByteRequest : pb::IMessage<Stub_GPIOWriteByteRequest> {
+ private static readonly pb::MessageParser<Stub_GPIOWriteByteRequest> _parser = new pb::MessageParser<Stub_GPIOWriteByteRequest>(() => new Stub_GPIOWriteByteRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOWriteByteRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOWriteByteRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteRequest(Stub_GPIOWriteByteRequest other) : this() {
+ portId_ = other.portId_;
+ dataToWrite_ = other.dataToWrite_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteRequest Clone() {
+ return new Stub_GPIOWriteByteRequest(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "DataToWrite" field.</summary>
+ public const int DataToWriteFieldNumber = 3;
+ private uint dataToWrite_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint DataToWrite {
+ get { return dataToWrite_; }
+ set {
+ dataToWrite_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOWriteByteRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOWriteByteRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (DataToWrite != other.DataToWrite) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (DataToWrite != 0) hash ^= DataToWrite.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (DataToWrite != 0) {
+ output.WriteRawTag(24);
+ output.WriteUInt32(DataToWrite);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (DataToWrite != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(DataToWrite);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOWriteByteRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.DataToWrite != 0) {
+ DataToWrite = other.DataToWrite;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ DataToWrite = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteResponse.cs
new file mode 100644
index 000000000..7300c4154
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubGPIOWriteByteResponse.cs
@@ -0,0 +1,194 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_GPIOWriteByteResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_GPIOWriteByteResponse.proto</summary>
+ public static partial class StubGPIOWriteByteResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_GPIOWriteByteResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubGPIOWriteByteResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiBTdHViX0dQSU9Xcml0ZUJ5dGVSZXNwb25zZS5wcm90bxIPVGFuZ28uUE1S",
+ "LlN0dWJzIjwKGlN0dWJfR1BJT1dyaXRlQnl0ZVJlc3BvbnNlEg4KBlBvcnRJ",
+ "ZBgBIAEoDRIOCgZzdGF0dXMYAyABKAhCGwoZY29tLnR3aW5lLnRhbmdvLnBt",
+ "ci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_GPIOWriteByteResponse), global::Tango.PMR.Stubs.Stub_GPIOWriteByteResponse.Parser, new[]{ "PortId", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_GPIOWriteByteResponse : pb::IMessage<Stub_GPIOWriteByteResponse> {
+ private static readonly pb::MessageParser<Stub_GPIOWriteByteResponse> _parser = new pb::MessageParser<Stub_GPIOWriteByteResponse>(() => new Stub_GPIOWriteByteResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_GPIOWriteByteResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubGPIOWriteByteResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteResponse(Stub_GPIOWriteByteResponse other) : this() {
+ portId_ = other.portId_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_GPIOWriteByteResponse Clone() {
+ return new Stub_GPIOWriteByteResponse(this);
+ }
+
+ /// <summary>Field number for the "PortId" field.</summary>
+ public const int PortIdFieldNumber = 1;
+ private uint portId_;
+ /// <summary>
+ /// 0..119
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint PortId {
+ get { return portId_; }
+ set {
+ portId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_GPIOWriteByteResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_GPIOWriteByteResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (PortId != other.PortId) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (PortId != 0) hash ^= PortId.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (PortId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(PortId);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (PortId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(PortId);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_GPIOWriteByteResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.PortId != 0) {
+ PortId = other.PortId;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ PortId = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterRequest.cs
new file mode 100644
index 000000000..984959c8c
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterRequest.cs
@@ -0,0 +1,222 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_HeaterRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_HeaterRequest.proto</summary>
+ public static partial class StubHeaterRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_HeaterRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubHeaterRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChhTdHViX0hlYXRlclJlcXVlc3QucHJvdG8SD1RhbmdvLlBNUi5TdHVicyJg",
+ "ChJTdHViX0hlYXRlclJlcXVlc3QSFQoNSGVhdGVyR3JvdXBJZBgBIAEoDRIV",
+ "Cg1IZWF0ZXJHcm91cE9uGAIgASgIEhwKFEhlYXRlclRlbXBlcmF0dXJlUmVx",
+ "GAMgASgNQhsKGWNvbS50d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_HeaterRequest), global::Tango.PMR.Stubs.Stub_HeaterRequest.Parser, new[]{ "HeaterGroupId", "HeaterGroupOn", "HeaterTemperatureReq" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_HeaterRequest : pb::IMessage<Stub_HeaterRequest> {
+ private static readonly pb::MessageParser<Stub_HeaterRequest> _parser = new pb::MessageParser<Stub_HeaterRequest>(() => new Stub_HeaterRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_HeaterRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubHeaterRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterRequest(Stub_HeaterRequest other) : this() {
+ heaterGroupId_ = other.heaterGroupId_;
+ heaterGroupOn_ = other.heaterGroupOn_;
+ heaterTemperatureReq_ = other.heaterTemperatureReq_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterRequest Clone() {
+ return new Stub_HeaterRequest(this);
+ }
+
+ /// <summary>Field number for the "HeaterGroupId" field.</summary>
+ public const int HeaterGroupIdFieldNumber = 1;
+ private uint heaterGroupId_;
+ /// <summary>
+ ///0..2
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint HeaterGroupId {
+ get { return heaterGroupId_; }
+ set {
+ heaterGroupId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "HeaterGroupOn" field.</summary>
+ public const int HeaterGroupOnFieldNumber = 2;
+ private bool heaterGroupOn_;
+ /// <summary>
+ /// 1-On 0-Off
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool HeaterGroupOn {
+ get { return heaterGroupOn_; }
+ set {
+ heaterGroupOn_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "HeaterTemperatureReq" field.</summary>
+ public const int HeaterTemperatureReqFieldNumber = 3;
+ private uint heaterTemperatureReq_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint HeaterTemperatureReq {
+ get { return heaterTemperatureReq_; }
+ set {
+ heaterTemperatureReq_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_HeaterRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_HeaterRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (HeaterGroupId != other.HeaterGroupId) return false;
+ if (HeaterGroupOn != other.HeaterGroupOn) return false;
+ if (HeaterTemperatureReq != other.HeaterTemperatureReq) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (HeaterGroupId != 0) hash ^= HeaterGroupId.GetHashCode();
+ if (HeaterGroupOn != false) hash ^= HeaterGroupOn.GetHashCode();
+ if (HeaterTemperatureReq != 0) hash ^= HeaterTemperatureReq.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (HeaterGroupId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(HeaterGroupId);
+ }
+ if (HeaterGroupOn != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(HeaterGroupOn);
+ }
+ if (HeaterTemperatureReq != 0) {
+ output.WriteRawTag(24);
+ output.WriteUInt32(HeaterTemperatureReq);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (HeaterGroupId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(HeaterGroupId);
+ }
+ if (HeaterGroupOn != false) {
+ size += 1 + 1;
+ }
+ if (HeaterTemperatureReq != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(HeaterTemperatureReq);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_HeaterRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.HeaterGroupId != 0) {
+ HeaterGroupId = other.HeaterGroupId;
+ }
+ if (other.HeaterGroupOn != false) {
+ HeaterGroupOn = other.HeaterGroupOn;
+ }
+ if (other.HeaterTemperatureReq != 0) {
+ HeaterTemperatureReq = other.HeaterTemperatureReq;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ HeaterGroupId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ HeaterGroupOn = input.ReadBool();
+ break;
+ }
+ case 24: {
+ HeaterTemperatureReq = input.ReadUInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterResponse.cs
new file mode 100644
index 000000000..add3d9f50
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubHeaterResponse.cs
@@ -0,0 +1,222 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_HeaterResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_HeaterResponse.proto</summary>
+ public static partial class StubHeaterResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_HeaterResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubHeaterResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChlTdHViX0hlYXRlclJlc3BvbnNlLnByb3RvEg9UYW5nby5QTVIuU3R1YnMi",
+ "XQoTU3R1Yl9IZWF0ZXJSZXNwb25zZRIVCg1IZWF0ZXJHcm91cElkGAEgASgN",
+ "Eh8KF0hlYXRlclRlbXBlcmF0dXJlU2Vuc29yGAIgASgNEg4KBlN0YXR1cxgD",
+ "IAEoCEIbChljb20udHdpbmUudGFuZ28ucG1yLnN0dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_HeaterResponse), global::Tango.PMR.Stubs.Stub_HeaterResponse.Parser, new[]{ "HeaterGroupId", "HeaterTemperatureSensor", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_HeaterResponse : pb::IMessage<Stub_HeaterResponse> {
+ private static readonly pb::MessageParser<Stub_HeaterResponse> _parser = new pb::MessageParser<Stub_HeaterResponse>(() => new Stub_HeaterResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_HeaterResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubHeaterResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterResponse(Stub_HeaterResponse other) : this() {
+ heaterGroupId_ = other.heaterGroupId_;
+ heaterTemperatureSensor_ = other.heaterTemperatureSensor_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_HeaterResponse Clone() {
+ return new Stub_HeaterResponse(this);
+ }
+
+ /// <summary>Field number for the "HeaterGroupId" field.</summary>
+ public const int HeaterGroupIdFieldNumber = 1;
+ private uint heaterGroupId_;
+ /// <summary>
+ ///0..2
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint HeaterGroupId {
+ get { return heaterGroupId_; }
+ set {
+ heaterGroupId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "HeaterTemperatureSensor" field.</summary>
+ public const int HeaterTemperatureSensorFieldNumber = 2;
+ private uint heaterTemperatureSensor_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint HeaterTemperatureSensor {
+ get { return heaterTemperatureSensor_; }
+ set {
+ heaterTemperatureSensor_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_HeaterResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_HeaterResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (HeaterGroupId != other.HeaterGroupId) return false;
+ if (HeaterTemperatureSensor != other.HeaterTemperatureSensor) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (HeaterGroupId != 0) hash ^= HeaterGroupId.GetHashCode();
+ if (HeaterTemperatureSensor != 0) hash ^= HeaterTemperatureSensor.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (HeaterGroupId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(HeaterGroupId);
+ }
+ if (HeaterTemperatureSensor != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(HeaterTemperatureSensor);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (HeaterGroupId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(HeaterGroupId);
+ }
+ if (HeaterTemperatureSensor != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(HeaterTemperatureSensor);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_HeaterResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.HeaterGroupId != 0) {
+ HeaterGroupId = other.HeaterGroupId;
+ }
+ if (other.HeaterTemperatureSensor != 0) {
+ HeaterTemperatureSensor = other.HeaterTemperatureSensor;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ HeaterGroupId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ HeaterTemperatureSensor = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderRequest.cs
new file mode 100644
index 000000000..2c1c2e62e
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderRequest.cs
@@ -0,0 +1,254 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_MotorEncoderRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_MotorEncoderRequest.proto</summary>
+ public static partial class StubMotorEncoderRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_MotorEncoderRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubMotorEncoderRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdHViX01vdG9yRW5jb2RlclJlcXVlc3QucHJvdG8SD1RhbmdvLlBNUi5T",
+ "dHVicyJwChhTdHViX01vdG9yRW5jb2RlclJlcXVlc3QSDwoHTW90b3JJZBgB",
+ "IAEoDRIUCgxSZWFkRW5jU3BlZWQYAiABKAgSFQoNUmVhZERpcmVjdGlvbhgD",
+ "IAEoCBIWCg5Nb3Rpb25fQ29udHJvbBgEIAEoCEIbChljb20udHdpbmUudGFu",
+ "Z28ucG1yLnN0dWJzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_MotorEncoderRequest), global::Tango.PMR.Stubs.Stub_MotorEncoderRequest.Parser, new[]{ "MotorId", "ReadEncSpeed", "ReadDirection", "MotionControl" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_MotorEncoderRequest : pb::IMessage<Stub_MotorEncoderRequest> {
+ private static readonly pb::MessageParser<Stub_MotorEncoderRequest> _parser = new pb::MessageParser<Stub_MotorEncoderRequest>(() => new Stub_MotorEncoderRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_MotorEncoderRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubMotorEncoderRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderRequest(Stub_MotorEncoderRequest other) : this() {
+ motorId_ = other.motorId_;
+ readEncSpeed_ = other.readEncSpeed_;
+ readDirection_ = other.readDirection_;
+ motionControl_ = other.motionControl_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderRequest Clone() {
+ return new Stub_MotorEncoderRequest(this);
+ }
+
+ /// <summary>Field number for the "MotorId" field.</summary>
+ public const int MotorIdFieldNumber = 1;
+ private uint motorId_;
+ /// <summary>
+ ///0..8
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint MotorId {
+ get { return motorId_; }
+ set {
+ motorId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "ReadEncSpeed" field.</summary>
+ public const int ReadEncSpeedFieldNumber = 2;
+ private bool readEncSpeed_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool ReadEncSpeed {
+ get { return readEncSpeed_; }
+ set {
+ readEncSpeed_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "ReadDirection" field.</summary>
+ public const int ReadDirectionFieldNumber = 3;
+ private bool readDirection_;
+ /// <summary>
+ /// 1-cw 0-ccw
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool ReadDirection {
+ get { return readDirection_; }
+ set {
+ readDirection_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Motion_Control" field.</summary>
+ public const int MotionControlFieldNumber = 4;
+ private bool motionControl_;
+ /// <summary>
+ /// close loop using the encoder
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool MotionControl {
+ get { return motionControl_; }
+ set {
+ motionControl_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_MotorEncoderRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_MotorEncoderRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (MotorId != other.MotorId) return false;
+ if (ReadEncSpeed != other.ReadEncSpeed) return false;
+ if (ReadDirection != other.ReadDirection) return false;
+ if (MotionControl != other.MotionControl) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (MotorId != 0) hash ^= MotorId.GetHashCode();
+ if (ReadEncSpeed != false) hash ^= ReadEncSpeed.GetHashCode();
+ if (ReadDirection != false) hash ^= ReadDirection.GetHashCode();
+ if (MotionControl != false) hash ^= MotionControl.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (MotorId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(MotorId);
+ }
+ if (ReadEncSpeed != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(ReadEncSpeed);
+ }
+ if (ReadDirection != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(ReadDirection);
+ }
+ if (MotionControl != false) {
+ output.WriteRawTag(32);
+ output.WriteBool(MotionControl);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (MotorId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(MotorId);
+ }
+ if (ReadEncSpeed != false) {
+ size += 1 + 1;
+ }
+ if (ReadDirection != false) {
+ size += 1 + 1;
+ }
+ if (MotionControl != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_MotorEncoderRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.MotorId != 0) {
+ MotorId = other.MotorId;
+ }
+ if (other.ReadEncSpeed != false) {
+ ReadEncSpeed = other.ReadEncSpeed;
+ }
+ if (other.ReadDirection != false) {
+ ReadDirection = other.ReadDirection;
+ }
+ if (other.MotionControl != false) {
+ MotionControl = other.MotionControl;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ MotorId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ ReadEncSpeed = input.ReadBool();
+ break;
+ }
+ case 24: {
+ ReadDirection = input.ReadBool();
+ break;
+ }
+ case 32: {
+ MotionControl = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderResponse.cs
new file mode 100644
index 000000000..0e598cd5e
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubMotorEncoderResponse.cs
@@ -0,0 +1,282 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_MotorEncoderResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_MotorEncoderResponse.proto</summary>
+ public static partial class StubMotorEncoderResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_MotorEncoderResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubMotorEncoderResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdHViX01vdG9yRW5jb2RlclJlc3BvbnNlLnByb3RvEg9UYW5nby5QTVIu",
+ "U3R1YnMiggEKGVN0dWJfTW90b3JFbmNvZGVyUmVzcG9uc2USEQoJRW5jb2Rl",
+ "cklkGAEgASgNEhYKDkVuY29kZXJWZXJzaW9uGAIgASgNEhIKCk1vdG9yU3Bl",
+ "ZWQYAyABKAUSFgoOTW90b3JEaXJlY3Rpb24YBCABKAgSDgoGU3RhdHVzGAUg",
+ "ASgIQhsKGWNvbS50d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_MotorEncoderResponse), global::Tango.PMR.Stubs.Stub_MotorEncoderResponse.Parser, new[]{ "EncoderId", "EncoderVersion", "MotorSpeed", "MotorDirection", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_MotorEncoderResponse : pb::IMessage<Stub_MotorEncoderResponse> {
+ private static readonly pb::MessageParser<Stub_MotorEncoderResponse> _parser = new pb::MessageParser<Stub_MotorEncoderResponse>(() => new Stub_MotorEncoderResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_MotorEncoderResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubMotorEncoderResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderResponse(Stub_MotorEncoderResponse other) : this() {
+ encoderId_ = other.encoderId_;
+ encoderVersion_ = other.encoderVersion_;
+ motorSpeed_ = other.motorSpeed_;
+ motorDirection_ = other.motorDirection_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_MotorEncoderResponse Clone() {
+ return new Stub_MotorEncoderResponse(this);
+ }
+
+ /// <summary>Field number for the "EncoderId" field.</summary>
+ public const int EncoderIdFieldNumber = 1;
+ private uint encoderId_;
+ /// <summary>
+ ///0..8
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint EncoderId {
+ get { return encoderId_; }
+ set {
+ encoderId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "EncoderVersion" field.</summary>
+ public const int EncoderVersionFieldNumber = 2;
+ private uint encoderVersion_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint EncoderVersion {
+ get { return encoderVersion_; }
+ set {
+ encoderVersion_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "MotorSpeed" field.</summary>
+ public const int MotorSpeedFieldNumber = 3;
+ private int motorSpeed_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int MotorSpeed {
+ get { return motorSpeed_; }
+ set {
+ motorSpeed_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "MotorDirection" field.</summary>
+ public const int MotorDirectionFieldNumber = 4;
+ private bool motorDirection_;
+ /// <summary>
+ /// 1-cw 0-ccw
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool MotorDirection {
+ get { return motorDirection_; }
+ set {
+ motorDirection_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 5;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed ( motion control error > ?)
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_MotorEncoderResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_MotorEncoderResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (EncoderId != other.EncoderId) return false;
+ if (EncoderVersion != other.EncoderVersion) return false;
+ if (MotorSpeed != other.MotorSpeed) return false;
+ if (MotorDirection != other.MotorDirection) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (EncoderId != 0) hash ^= EncoderId.GetHashCode();
+ if (EncoderVersion != 0) hash ^= EncoderVersion.GetHashCode();
+ if (MotorSpeed != 0) hash ^= MotorSpeed.GetHashCode();
+ if (MotorDirection != false) hash ^= MotorDirection.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (EncoderId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(EncoderId);
+ }
+ if (EncoderVersion != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(EncoderVersion);
+ }
+ if (MotorSpeed != 0) {
+ output.WriteRawTag(24);
+ output.WriteInt32(MotorSpeed);
+ }
+ if (MotorDirection != false) {
+ output.WriteRawTag(32);
+ output.WriteBool(MotorDirection);
+ }
+ if (Status != false) {
+ output.WriteRawTag(40);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (EncoderId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(EncoderId);
+ }
+ if (EncoderVersion != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(EncoderVersion);
+ }
+ if (MotorSpeed != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeInt32Size(MotorSpeed);
+ }
+ if (MotorDirection != false) {
+ size += 1 + 1;
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_MotorEncoderResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.EncoderId != 0) {
+ EncoderId = other.EncoderId;
+ }
+ if (other.EncoderVersion != 0) {
+ EncoderVersion = other.EncoderVersion;
+ }
+ if (other.MotorSpeed != 0) {
+ MotorSpeed = other.MotorSpeed;
+ }
+ if (other.MotorDirection != false) {
+ MotorDirection = other.MotorDirection;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ EncoderId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ EncoderVersion = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ MotorSpeed = input.ReadInt32();
+ break;
+ }
+ case 32: {
+ MotorDirection = input.ReadBool();
+ break;
+ }
+ case 40: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchRequest.cs
new file mode 100644
index 000000000..a27281371
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchRequest.cs
@@ -0,0 +1,194 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_OptLimitSwitchRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_OptLimitSwitchRequest.proto</summary>
+ public static partial class StubOptLimitSwitchRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_OptLimitSwitchRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubOptLimitSwitchRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiBTdHViX09wdExpbWl0U3dpdGNoUmVxdWVzdC5wcm90bxIPVGFuZ28uUE1S",
+ "LlN0dWJzIlEKGlN0dWJfT3B0TGltaXRTd2l0Y2hSZXF1ZXN0EhYKDkxpbWl0",
+ "U3dpdGNocklkGAEgASgNEhsKE0xpbWl0U3dpdGNockRpc2FibGUYAiABKAhC",
+ "GwoZY29tLnR3aW5lLnRhbmdvLnBtci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_OptLimitSwitchRequest), global::Tango.PMR.Stubs.Stub_OptLimitSwitchRequest.Parser, new[]{ "LimitSwitchrId", "LimitSwitchrDisable" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_OptLimitSwitchRequest : pb::IMessage<Stub_OptLimitSwitchRequest> {
+ private static readonly pb::MessageParser<Stub_OptLimitSwitchRequest> _parser = new pb::MessageParser<Stub_OptLimitSwitchRequest>(() => new Stub_OptLimitSwitchRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_OptLimitSwitchRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubOptLimitSwitchRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchRequest(Stub_OptLimitSwitchRequest other) : this() {
+ limitSwitchrId_ = other.limitSwitchrId_;
+ limitSwitchrDisable_ = other.limitSwitchrDisable_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchRequest Clone() {
+ return new Stub_OptLimitSwitchRequest(this);
+ }
+
+ /// <summary>Field number for the "LimitSwitchrId" field.</summary>
+ public const int LimitSwitchrIdFieldNumber = 1;
+ private uint limitSwitchrId_;
+ /// <summary>
+ ///0..16
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint LimitSwitchrId {
+ get { return limitSwitchrId_; }
+ set {
+ limitSwitchrId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "LimitSwitchrDisable" field.</summary>
+ public const int LimitSwitchrDisableFieldNumber = 2;
+ private bool limitSwitchrDisable_;
+ /// <summary>
+ /// 0 - Enable 1 - Disable
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool LimitSwitchrDisable {
+ get { return limitSwitchrDisable_; }
+ set {
+ limitSwitchrDisable_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_OptLimitSwitchRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_OptLimitSwitchRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (LimitSwitchrId != other.LimitSwitchrId) return false;
+ if (LimitSwitchrDisable != other.LimitSwitchrDisable) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (LimitSwitchrId != 0) hash ^= LimitSwitchrId.GetHashCode();
+ if (LimitSwitchrDisable != false) hash ^= LimitSwitchrDisable.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (LimitSwitchrId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(LimitSwitchrId);
+ }
+ if (LimitSwitchrDisable != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(LimitSwitchrDisable);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (LimitSwitchrId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(LimitSwitchrId);
+ }
+ if (LimitSwitchrDisable != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_OptLimitSwitchRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.LimitSwitchrId != 0) {
+ LimitSwitchrId = other.LimitSwitchrId;
+ }
+ if (other.LimitSwitchrDisable != false) {
+ LimitSwitchrDisable = other.LimitSwitchrDisable;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ LimitSwitchrId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ LimitSwitchrDisable = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchResponse.cs
new file mode 100644
index 000000000..33911ac1c
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubOptLimitSwitchResponse.cs
@@ -0,0 +1,225 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_OptLimitSwitchResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_OptLimitSwitchResponse.proto</summary>
+ public static partial class StubOptLimitSwitchResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_OptLimitSwitchResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubOptLimitSwitchResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiFTdHViX09wdExpbWl0U3dpdGNoUmVzcG9uc2UucHJvdG8SD1RhbmdvLlBN",
+ "Ui5TdHVicyJjChtTdHViX09wdExpbWl0U3dpdGNoUmVzcG9uc2USFgoOTGlt",
+ "aXRTd2l0Y2hySWQYASABKA0SHAoUTGltaXRTd2l0Y2hEaXRlY3Rpb24YAiAB",
+ "KAgSDgoGU3RhdHVzGAMgASgIQhsKGWNvbS50d2luZS50YW5nby5wbXIuc3R1",
+ "YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_OptLimitSwitchResponse), global::Tango.PMR.Stubs.Stub_OptLimitSwitchResponse.Parser, new[]{ "LimitSwitchrId", "LimitSwitchDitection", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_OptLimitSwitchResponse : pb::IMessage<Stub_OptLimitSwitchResponse> {
+ private static readonly pb::MessageParser<Stub_OptLimitSwitchResponse> _parser = new pb::MessageParser<Stub_OptLimitSwitchResponse>(() => new Stub_OptLimitSwitchResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_OptLimitSwitchResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubOptLimitSwitchResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchResponse(Stub_OptLimitSwitchResponse other) : this() {
+ limitSwitchrId_ = other.limitSwitchrId_;
+ limitSwitchDitection_ = other.limitSwitchDitection_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_OptLimitSwitchResponse Clone() {
+ return new Stub_OptLimitSwitchResponse(this);
+ }
+
+ /// <summary>Field number for the "LimitSwitchrId" field.</summary>
+ public const int LimitSwitchrIdFieldNumber = 1;
+ private uint limitSwitchrId_;
+ /// <summary>
+ ///0..19
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint LimitSwitchrId {
+ get { return limitSwitchrId_; }
+ set {
+ limitSwitchrId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "LimitSwitchDitection" field.</summary>
+ public const int LimitSwitchDitectionFieldNumber = 2;
+ private bool limitSwitchDitection_;
+ /// <summary>
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool LimitSwitchDitection {
+ get { return limitSwitchDitection_; }
+ set {
+ limitSwitchDitection_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_OptLimitSwitchResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_OptLimitSwitchResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (LimitSwitchrId != other.LimitSwitchrId) return false;
+ if (LimitSwitchDitection != other.LimitSwitchDitection) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (LimitSwitchrId != 0) hash ^= LimitSwitchrId.GetHashCode();
+ if (LimitSwitchDitection != false) hash ^= LimitSwitchDitection.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (LimitSwitchrId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(LimitSwitchrId);
+ }
+ if (LimitSwitchDitection != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(LimitSwitchDitection);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (LimitSwitchrId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(LimitSwitchrId);
+ }
+ if (LimitSwitchDitection != false) {
+ size += 1 + 1;
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_OptLimitSwitchResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.LimitSwitchrId != 0) {
+ LimitSwitchrId = other.LimitSwitchrId;
+ }
+ if (other.LimitSwitchDitection != false) {
+ LimitSwitchDitection = other.LimitSwitchDitection;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ LimitSwitchrId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ LimitSwitchDitection = input.ReadBool();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorRequest.cs
new file mode 100644
index 000000000..d04b67380
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorRequest.cs
@@ -0,0 +1,288 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_SteperMotorRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_SteperMotorRequest.proto</summary>
+ public static partial class StubSteperMotorRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_SteperMotorRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubSteperMotorRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch1TdHViX1N0ZXBlck1vdG9yUmVxdWVzdC5wcm90bxIPVGFuZ28uUE1SLlN0",
+ "dWJzIn4KFlN0dWJfU3RlcGVNb3RvclJlcXVlc3QSDwoHTW90b3JJZBgBIAEo",
+ "DRINCgVTdGFydBgCIAEoCBIUCgxTZXREaXJlY3Rpb24YAyABKAgSHAoUU2V0",
+ "TWljcm9zdGVwRGl2aXNpb24YBCABKAUSEAoIU2V0U3BlZWQYBSABKAVCGwoZ",
+ "Y29tLnR3aW5lLnRhbmdvLnBtci5zdHVic2IGcHJvdG8z"));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_StepeMotorRequest), global::Tango.PMR.Stubs.Stub_StepeMotorRequest.Parser, new[]{ "MotorId", "Start", "SetDirection", "SetMicrostepDivision", "SetSpeed" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_StepeMotorRequest : pb::IMessage<Stub_StepeMotorRequest> {
+ private static readonly pb::MessageParser<Stub_StepeMotorRequest> _parser = new pb::MessageParser<Stub_StepeMotorRequest>(() => new Stub_StepeMotorRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_StepeMotorRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubSteperMotorRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_StepeMotorRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_StepeMotorRequest(Stub_StepeMotorRequest other) : this() {
+ motorId_ = other.motorId_;
+ start_ = other.start_;
+ setDirection_ = other.setDirection_;
+ setMicrostepDivision_ = other.setMicrostepDivision_;
+ setSpeed_ = other.setSpeed_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_StepeMotorRequest Clone() {
+ return new Stub_StepeMotorRequest(this);
+ }
+
+ /// <summary>Field number for the "MotorId" field.</summary>
+ public const int MotorIdFieldNumber = 1;
+ private uint motorId_;
+ /// <summary>
+ ///0..19
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint MotorId {
+ get { return motorId_; }
+ set {
+ motorId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Start" field.</summary>
+ public const int StartFieldNumber = 2;
+ private bool start_;
+ /// <summary>
+ /// 1-start 0-stop
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Start {
+ get { return start_; }
+ set {
+ start_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetDirection" field.</summary>
+ public const int SetDirectionFieldNumber = 3;
+ private bool setDirection_;
+ /// <summary>
+ /// 1-cw 0-ccw
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool SetDirection {
+ get { return setDirection_; }
+ set {
+ setDirection_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetMicrostepDivision" field.</summary>
+ public const int SetMicrostepDivisionFieldNumber = 4;
+ private int setMicrostepDivision_;
+ /// <summary>
+ /// No. of steps for 360 deg.
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int SetMicrostepDivision {
+ get { return setMicrostepDivision_; }
+ set {
+ setMicrostepDivision_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "SetSpeed" field.</summary>
+ public const int SetSpeedFieldNumber = 5;
+ private int setSpeed_;
+ /// <summary>
+ /// ?
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int SetSpeed {
+ get { return setSpeed_; }
+ set {
+ setSpeed_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_StepeMotorRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_StepeMotorRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (MotorId != other.MotorId) return false;
+ if (Start != other.Start) return false;
+ if (SetDirection != other.SetDirection) return false;
+ if (SetMicrostepDivision != other.SetMicrostepDivision) return false;
+ if (SetSpeed != other.SetSpeed) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (MotorId != 0) hash ^= MotorId.GetHashCode();
+ if (Start != false) hash ^= Start.GetHashCode();
+ if (SetDirection != false) hash ^= SetDirection.GetHashCode();
+ if (SetMicrostepDivision != 0) hash ^= SetMicrostepDivision.GetHashCode();
+ if (SetSpeed != 0) hash ^= SetSpeed.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (MotorId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(MotorId);
+ }
+ if (Start != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(Start);
+ }
+ if (SetDirection != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(SetDirection);
+ }
+ if (SetMicrostepDivision != 0) {
+ output.WriteRawTag(32);
+ output.WriteInt32(SetMicrostepDivision);
+ }
+ if (SetSpeed != 0) {
+ output.WriteRawTag(40);
+ output.WriteInt32(SetSpeed);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (MotorId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(MotorId);
+ }
+ if (Start != false) {
+ size += 1 + 1;
+ }
+ if (SetDirection != false) {
+ size += 1 + 1;
+ }
+ if (SetMicrostepDivision != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeInt32Size(SetMicrostepDivision);
+ }
+ if (SetSpeed != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeInt32Size(SetSpeed);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_StepeMotorRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.MotorId != 0) {
+ MotorId = other.MotorId;
+ }
+ if (other.Start != false) {
+ Start = other.Start;
+ }
+ if (other.SetDirection != false) {
+ SetDirection = other.SetDirection;
+ }
+ if (other.SetMicrostepDivision != 0) {
+ SetMicrostepDivision = other.SetMicrostepDivision;
+ }
+ if (other.SetSpeed != 0) {
+ SetSpeed = other.SetSpeed;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ MotorId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ Start = input.ReadBool();
+ break;
+ }
+ case 24: {
+ SetDirection = input.ReadBool();
+ break;
+ }
+ case 32: {
+ SetMicrostepDivision = input.ReadInt32();
+ break;
+ }
+ case 40: {
+ SetSpeed = input.ReadInt32();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorResponse.cs
new file mode 100644
index 000000000..818d4c73b
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubSteperMotorResponse.cs
@@ -0,0 +1,224 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_SteperMotorResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_SteperMotorResponse.proto</summary>
+ public static partial class StubSteperMotorResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_SteperMotorResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubSteperMotorResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdHViX1N0ZXBlck1vdG9yUmVzcG9uc2UucHJvdG8SD1RhbmdvLlBNUi5T",
+ "dHVicyJRChhTdHViX1N0ZXBlck1vdG9yUmVzcG9uc2USDwoHTW90b3JJZBgB",
+ "IAEoDRIUCgxNb3RvclZlcnNpb24YAiABKA0SDgoGU3RhdHVzGAMgASgIQhsK",
+ "GWNvbS50d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_SteperMotorResponse), global::Tango.PMR.Stubs.Stub_SteperMotorResponse.Parser, new[]{ "MotorId", "MotorVersion", "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_SteperMotorResponse : pb::IMessage<Stub_SteperMotorResponse> {
+ private static readonly pb::MessageParser<Stub_SteperMotorResponse> _parser = new pb::MessageParser<Stub_SteperMotorResponse>(() => new Stub_SteperMotorResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_SteperMotorResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubSteperMotorResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_SteperMotorResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_SteperMotorResponse(Stub_SteperMotorResponse other) : this() {
+ motorId_ = other.motorId_;
+ motorVersion_ = other.motorVersion_;
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_SteperMotorResponse Clone() {
+ return new Stub_SteperMotorResponse(this);
+ }
+
+ /// <summary>Field number for the "MotorId" field.</summary>
+ public const int MotorIdFieldNumber = 1;
+ private uint motorId_;
+ /// <summary>
+ ///0..19
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint MotorId {
+ get { return motorId_; }
+ set {
+ motorId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "MotorVersion" field.</summary>
+ public const int MotorVersionFieldNumber = 2;
+ private uint motorVersion_;
+ /// <summary>
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint MotorVersion {
+ get { return motorVersion_; }
+ set {
+ motorVersion_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_SteperMotorResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_SteperMotorResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (MotorId != other.MotorId) return false;
+ if (MotorVersion != other.MotorVersion) return false;
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (MotorId != 0) hash ^= MotorId.GetHashCode();
+ if (MotorVersion != 0) hash ^= MotorVersion.GetHashCode();
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (MotorId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(MotorId);
+ }
+ if (MotorVersion != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(MotorVersion);
+ }
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (MotorId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(MotorId);
+ }
+ if (MotorVersion != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(MotorVersion);
+ }
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_SteperMotorResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.MotorId != 0) {
+ MotorId = other.MotorId;
+ }
+ if (other.MotorVersion != 0) {
+ MotorVersion = other.MotorVersion;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ MotorId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ MotorVersion = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubValveRequest.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubValveRequest.cs
new file mode 100644
index 000000000..44ad818a1
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubValveRequest.cs
@@ -0,0 +1,225 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_ValveRequest.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_ValveRequest.proto</summary>
+ public static partial class StubValveRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_ValveRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubValveRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChdTdHViX1ZhbHZlUmVxdWVzdC5wcm90bxIPVGFuZ28uUE1SLlN0dWJzIkYK",
+ "EVN0dWJfVmFsdmVSZXF1ZXN0Eg8KB1ZhbHZlSWQYASABKA0SDwoHSW5rZmxv",
+ "dxgCIAEoDRIPCgdWYWx2ZU9uGAMgASgIQhsKGWNvbS50d2luZS50YW5nby5w",
+ "bXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_ValveRequest), global::Tango.PMR.Stubs.Stub_ValveRequest.Parser, new[]{ "ValveId", "Inkflow", "ValveOn" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_ValveRequest : pb::IMessage<Stub_ValveRequest> {
+ private static readonly pb::MessageParser<Stub_ValveRequest> _parser = new pb::MessageParser<Stub_ValveRequest>(() => new Stub_ValveRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_ValveRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubValveRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveRequest(Stub_ValveRequest other) : this() {
+ valveId_ = other.valveId_;
+ inkflow_ = other.inkflow_;
+ valveOn_ = other.valveOn_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveRequest Clone() {
+ return new Stub_ValveRequest(this);
+ }
+
+ /// <summary>Field number for the "ValveId" field.</summary>
+ public const int ValveIdFieldNumber = 1;
+ private uint valveId_;
+ /// <summary>
+ ///0..19
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint ValveId {
+ get { return valveId_; }
+ set {
+ valveId_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Inkflow" field.</summary>
+ public const int InkflowFieldNumber = 2;
+ private uint inkflow_;
+ /// <summary>
+ ///0-Min
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public uint Inkflow {
+ get { return inkflow_; }
+ set {
+ inkflow_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "ValveOn" field.</summary>
+ public const int ValveOnFieldNumber = 3;
+ private bool valveOn_;
+ /// <summary>
+ /// 0-Off 1-On
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool ValveOn {
+ get { return valveOn_; }
+ set {
+ valveOn_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_ValveRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_ValveRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (ValveId != other.ValveId) return false;
+ if (Inkflow != other.Inkflow) return false;
+ if (ValveOn != other.ValveOn) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (ValveId != 0) hash ^= ValveId.GetHashCode();
+ if (Inkflow != 0) hash ^= Inkflow.GetHashCode();
+ if (ValveOn != false) hash ^= ValveOn.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (ValveId != 0) {
+ output.WriteRawTag(8);
+ output.WriteUInt32(ValveId);
+ }
+ if (Inkflow != 0) {
+ output.WriteRawTag(16);
+ output.WriteUInt32(Inkflow);
+ }
+ if (ValveOn != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(ValveOn);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (ValveId != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(ValveId);
+ }
+ if (Inkflow != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeUInt32Size(Inkflow);
+ }
+ if (ValveOn != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_ValveRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.ValveId != 0) {
+ ValveId = other.ValveId;
+ }
+ if (other.Inkflow != 0) {
+ Inkflow = other.Inkflow;
+ }
+ if (other.ValveOn != false) {
+ ValveOn = other.ValveOn;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 8: {
+ ValveId = input.ReadUInt32();
+ break;
+ }
+ case 16: {
+ Inkflow = input.ReadUInt32();
+ break;
+ }
+ case 24: {
+ ValveOn = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Stubs/StubValveResponse.cs b/Software/Visual_Studio/Tango.PMR/Stubs/StubValveResponse.cs
new file mode 100644
index 000000000..e5561377e
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Stubs/StubValveResponse.cs
@@ -0,0 +1,162 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: Stub_ValveResponse.proto
+#pragma warning disable 1591, 0612, 3021
+#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 Tango.PMR.Stubs {
+
+ /// <summary>Holder for reflection information generated from Stub_ValveResponse.proto</summary>
+ public static partial class StubValveResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for Stub_ValveResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StubValveResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChhTdHViX1ZhbHZlUmVzcG9uc2UucHJvdG8SD1RhbmdvLlBNUi5TdHVicyIk",
+ "ChJTdHViX1ZhbHZlUmVzcG9uc2USDgoGU3RhdHVzGAMgASgIQhsKGWNvbS50",
+ "d2luZS50YW5nby5wbXIuc3R1YnNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Stubs.Stub_ValveResponse), global::Tango.PMR.Stubs.Stub_ValveResponse.Parser, new[]{ "Status" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class Stub_ValveResponse : pb::IMessage<Stub_ValveResponse> {
+ private static readonly pb::MessageParser<Stub_ValveResponse> _parser = new pb::MessageParser<Stub_ValveResponse>(() => new Stub_ValveResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<Stub_ValveResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Stubs.StubValveResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveResponse(Stub_ValveResponse other) : this() {
+ status_ = other.status_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public Stub_ValveResponse Clone() {
+ return new Stub_ValveResponse(this);
+ }
+
+ /// <summary>Field number for the "Status" field.</summary>
+ public const int StatusFieldNumber = 3;
+ private bool status_;
+ /// <summary>
+ /// 0-OK 1-Failed
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Status {
+ get { return status_; }
+ set {
+ status_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as Stub_ValveResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(Stub_ValveResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (Status != other.Status) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (Status != false) hash ^= Status.GetHashCode();
+ return hash;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (Status != false) {
+ output.WriteRawTag(24);
+ output.WriteBool(Status);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (Status != false) {
+ size += 1 + 1;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(Stub_ValveResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.Status != false) {
+ Status = other.Status;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 24: {
+ Status = input.ReadBool();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code