aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.PMR
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR')
-rw-r--r--Software/Visual_Studio/Tango.PMR/Common/MessageType.cs59
-rw-r--r--Software/Visual_Studio/Tango.PMR/Diagnostics/StartTelemetryWireResponse.cs73
-rw-r--r--Software/Visual_Studio/Tango.PMR/Diagnostics/TelemetryWire.cs187
-rw-r--r--Software/Visual_Studio/Tango.PMR/MachineStatus/NotificationType.cs50
-rw-r--r--Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationRequest.cs131
-rw-r--r--Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationResponse.cs246
-rw-r--r--Software/Visual_Studio/Tango.PMR/Tango.PMR.csproj4
7 files changed, 668 insertions, 82 deletions
diff --git a/Software/Visual_Studio/Tango.PMR/Common/MessageType.cs b/Software/Visual_Studio/Tango.PMR/Common/MessageType.cs
index 981ffe4f4..b056b402d 100644
--- a/Software/Visual_Studio/Tango.PMR/Common/MessageType.cs
+++ b/Software/Visual_Studio/Tango.PMR/Common/MessageType.cs
@@ -22,7 +22,7 @@ namespace Tango.PMR.Common {
static MessageTypeReflection() {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
- "ChFNZXNzYWdlVHlwZS5wcm90bxIQVGFuZ28uUE1SLkNvbW1vbirjRQoLTWVz",
+ "ChFNZXNzYWdlVHlwZS5wcm90bxIQVGFuZ28uUE1SLkNvbW1vbiqiRgoLTWVz",
"c2FnZVR5cGUSCAoETm9uZRAAEhEKDUVycm9yUmVzcG9uc2UQARIUChBDYWxj",
"dWxhdGVSZXF1ZXN0EAMSFQoRQ2FsY3VsYXRlUmVzcG9uc2UQBBITCg9Qcm9n",
"cmVzc1JlcXVlc3QQBRIUChBQcm9ncmVzc1Jlc3BvbnNlEAYSHAoYU3R1YkNh",
@@ -196,33 +196,34 @@ namespace Tango.PMR.Common {
"b3duVGltZVJlcXVlc3QQsEYSHQoYU2V0UG93ZXJEb3duVGltZVJlc3BvbnNl",
"ELFGEh0KGFNldEJ1enplclNldHRpbmdzUmVxdWVzdBCyRhIeChlTZXRCdXp6",
"ZXJTZXR0aW5nc1Jlc3BvbnNlELNGEh4KGVNldFdoaXRlVGhyZWFkU2tpcFJl",
- "cXVlc3QQtEYSHwoaU2V0V2hpdGVUaHJlYWRTa2lwUmVzcG9uc2UQtUYSGgoV",
- "U3RhcnRQb3dlckRvd25SZXF1ZXN0EJBOEhsKFlN0YXJ0UG93ZXJEb3duUmVz",
- "cG9uc2UQkU4SGgoVQWJvcnRQb3dlckRvd25SZXF1ZXN0EJJOEhsKFkFib3J0",
- "UG93ZXJEb3duUmVzcG9uc2UQk04SGAoTU3RhcnRQb3dlclVwUmVxdWVzdBCU",
- "ThIZChRTdGFydFBvd2VyVXBSZXNwb25zZRCVThIYChNBYm9ydFBvd2VyVXBS",
- "ZXF1ZXN0EJZOEhkKFEFib3J0UG93ZXJVcFJlc3BvbnNlEJdOEhMKDlN0YW5k",
- "QnlSZXF1ZXN0EJhOEhQKD1N0YW5kQnlSZXNwb25zZRCZThIeChlTdGFydFRo",
- "cmVhZExvYWRpbmdSZXF1ZXN0EPhVEh8KGlN0YXJ0VGhyZWFkTG9hZGluZ1Jl",
- "c3BvbnNlEPlVEiEKHENvbnRpbnVlVGhyZWFkTG9hZGluZ1JlcXVlc3QQ+lUS",
- "IgodQ29udGludWVUaHJlYWRMb2FkaW5nUmVzcG9uc2UQ+1USHQoYU3RvcFRo",
- "cmVhZExvYWRpbmdSZXF1ZXN0EPxVEh4KGVN0b3BUaHJlYWRMb2FkaW5nUmVz",
- "cG9uc2UQ/VUSHAoXVHJ5VGhyZWFkTG9hZGluZ1JlcXVlc3QQ/lUSHQoYVHJ5",
- "VGhyZWFkTG9hZGluZ1Jlc3BvbnNlEP9VEiAKG0F0dGVtcHRUaHJlYWRKb2dn",
- "aW5nUmVxdWVzdBCAVhIhChxBdHRlbXB0VGhyZWFkSm9nZ2luZ1Jlc3BvbnNl",
- "EIFWEh4KGUFib3J0VGhyZWFkTG9hZGluZ1JlcXVlc3QQglYSHwoaQWJvcnRU",
- "aHJlYWRMb2FkaW5nUmVzcG9uc2UQg1YSIQocU3RhcnRJbmtGaWxsaW5nU3Rh",
- "dHVzUmVxdWVzdBDgXRIiCh1TdGFydElua0ZpbGxpbmdTdGF0dXNSZXNwb25z",
- "ZRDhXRIeChlJbml0aWF0ZUlua0ZpbGxpbmdSZXF1ZXN0EOJdEh8KGkluaXRp",
- "YXRlSW5rRmlsbGluZ1Jlc3BvbnNlEONdEhgKE1dhc3RlUmVwbGFjZVJlcXVl",
- "c3QQ5F0SGQoUV2FzdGVSZXBsYWNlUmVzcG9uc2UQ5V0SHAoXU2V0SmVycmlj",
- "YW5MZXZlbFJlcXVlc3QQ5l0SHQoYU2V0SmVycmljYW5MZXZlbFJlc3BvbnNl",
- "EOddEhwKF1B1dERhdGFTdG9yZUl0ZW1SZXF1ZXN0EMhlEh0KGFB1dERhdGFT",
- "dG9yZUl0ZW1SZXNwb25zZRDJZRIcChdHZXREYXRhU3RvcmVJdGVtUmVxdWVz",
- "dBDKZRIdChhHZXREYXRhU3RvcmVJdGVtUmVzcG9uc2UQy2USIQocRGF0YVN0",
- "b3JlSXRlbU1vZGlmaWVkUmVxdWVzdBDMZRIiCh1EYXRhU3RvcmVJdGVtTW9k",
- "aWZpZWRSZXNwb25zZRDNZUIcChpjb20udHdpbmUudGFuZ28ucG1yLmNvbW1v",
- "bmIGcHJvdG8z"));
+ "cXVlc3QQtEYSHwoaU2V0V2hpdGVUaHJlYWRTa2lwUmVzcG9uc2UQtUYSHQoY",
+ "U3RhcnROb3RpZmljYXRpb25SZXF1ZXN0ELZGEh4KGVN0YXJ0Tm90aWZpY2F0",
+ "aW9uUmVzcG9uc2UQt0YSGgoVU3RhcnRQb3dlckRvd25SZXF1ZXN0EJBOEhsK",
+ "FlN0YXJ0UG93ZXJEb3duUmVzcG9uc2UQkU4SGgoVQWJvcnRQb3dlckRvd25S",
+ "ZXF1ZXN0EJJOEhsKFkFib3J0UG93ZXJEb3duUmVzcG9uc2UQk04SGAoTU3Rh",
+ "cnRQb3dlclVwUmVxdWVzdBCUThIZChRTdGFydFBvd2VyVXBSZXNwb25zZRCV",
+ "ThIYChNBYm9ydFBvd2VyVXBSZXF1ZXN0EJZOEhkKFEFib3J0UG93ZXJVcFJl",
+ "c3BvbnNlEJdOEhMKDlN0YW5kQnlSZXF1ZXN0EJhOEhQKD1N0YW5kQnlSZXNw",
+ "b25zZRCZThIeChlTdGFydFRocmVhZExvYWRpbmdSZXF1ZXN0EPhVEh8KGlN0",
+ "YXJ0VGhyZWFkTG9hZGluZ1Jlc3BvbnNlEPlVEiEKHENvbnRpbnVlVGhyZWFk",
+ "TG9hZGluZ1JlcXVlc3QQ+lUSIgodQ29udGludWVUaHJlYWRMb2FkaW5nUmVz",
+ "cG9uc2UQ+1USHQoYU3RvcFRocmVhZExvYWRpbmdSZXF1ZXN0EPxVEh4KGVN0",
+ "b3BUaHJlYWRMb2FkaW5nUmVzcG9uc2UQ/VUSHAoXVHJ5VGhyZWFkTG9hZGlu",
+ "Z1JlcXVlc3QQ/lUSHQoYVHJ5VGhyZWFkTG9hZGluZ1Jlc3BvbnNlEP9VEiAK",
+ "G0F0dGVtcHRUaHJlYWRKb2dnaW5nUmVxdWVzdBCAVhIhChxBdHRlbXB0VGhy",
+ "ZWFkSm9nZ2luZ1Jlc3BvbnNlEIFWEh4KGUFib3J0VGhyZWFkTG9hZGluZ1Jl",
+ "cXVlc3QQglYSHwoaQWJvcnRUaHJlYWRMb2FkaW5nUmVzcG9uc2UQg1YSIQoc",
+ "U3RhcnRJbmtGaWxsaW5nU3RhdHVzUmVxdWVzdBDgXRIiCh1TdGFydElua0Zp",
+ "bGxpbmdTdGF0dXNSZXNwb25zZRDhXRIeChlJbml0aWF0ZUlua0ZpbGxpbmdS",
+ "ZXF1ZXN0EOJdEh8KGkluaXRpYXRlSW5rRmlsbGluZ1Jlc3BvbnNlEONdEhgK",
+ "E1dhc3RlUmVwbGFjZVJlcXVlc3QQ5F0SGQoUV2FzdGVSZXBsYWNlUmVzcG9u",
+ "c2UQ5V0SHAoXU2V0SmVycmljYW5MZXZlbFJlcXVlc3QQ5l0SHQoYU2V0SmVy",
+ "cmljYW5MZXZlbFJlc3BvbnNlEOddEhwKF1B1dERhdGFTdG9yZUl0ZW1SZXF1",
+ "ZXN0EMhlEh0KGFB1dERhdGFTdG9yZUl0ZW1SZXNwb25zZRDJZRIcChdHZXRE",
+ "YXRhU3RvcmVJdGVtUmVxdWVzdBDKZRIdChhHZXREYXRhU3RvcmVJdGVtUmVz",
+ "cG9uc2UQy2USIQocRGF0YVN0b3JlSXRlbU1vZGlmaWVkUmVxdWVzdBDMZRIi",
+ "Ch1EYXRhU3RvcmVJdGVtTW9kaWZpZWRSZXNwb25zZRDNZUIcChpjb20udHdp",
+ "bmUudGFuZ28ucG1yLmNvbW1vbmIGcHJvdG8z"));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Tango.PMR.Common.MessageType), }, null));
@@ -538,6 +539,8 @@ namespace Tango.PMR.Common {
[pbr::OriginalName("SetBuzzerSettingsResponse")] SetBuzzerSettingsResponse = 9011,
[pbr::OriginalName("SetWhiteThreadSkipRequest")] SetWhiteThreadSkipRequest = 9012,
[pbr::OriginalName("SetWhiteThreadSkipResponse")] SetWhiteThreadSkipResponse = 9013,
+ [pbr::OriginalName("StartNotificationRequest")] StartNotificationRequest = 9014,
+ [pbr::OriginalName("StartNotificationResponse")] StartNotificationResponse = 9015,
/// <summary>
///Power
/// </summary>
diff --git a/Software/Visual_Studio/Tango.PMR/Diagnostics/StartTelemetryWireResponse.cs b/Software/Visual_Studio/Tango.PMR/Diagnostics/StartTelemetryWireResponse.cs
index b9155dcb4..97bcf2931 100644
--- a/Software/Visual_Studio/Tango.PMR/Diagnostics/StartTelemetryWireResponse.cs
+++ b/Software/Visual_Studio/Tango.PMR/Diagnostics/StartTelemetryWireResponse.cs
@@ -23,13 +23,14 @@ namespace Tango.PMR.Diagnostics {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
"CiBTdGFydFRlbGVtZXRyeVdpcmVSZXNwb25zZS5wcm90bxIVVGFuZ28uUE1S",
- "LkRpYWdub3N0aWNzIjkKGlN0YXJ0VGVsZW1ldHJ5V2lyZVJlc3BvbnNlEgwK",
- "BE5hbWUYASABKAkSDQoFVmFsdWUYAiABKAJCIQofY29tLnR3aW5lLnRhbmdv",
+ "LkRpYWdub3N0aWNzGhNUZWxlbWV0cnlXaXJlLnByb3RvIlEKGlN0YXJ0VGVs",
+ "ZW1ldHJ5V2lyZVJlc3BvbnNlEjMKBVdpcmVzGAEgAygLMiQuVGFuZ28uUE1S",
+ "LkRpYWdub3N0aWNzLlRlbGVtZXRyeVdpcmVCIQofY29tLnR3aW5lLnRhbmdv",
"LnBtci5kaWFnbm9zdGljc2IGcHJvdG8z"));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
- new pbr::FileDescriptor[] { },
+ new pbr::FileDescriptor[] { global::Tango.PMR.Diagnostics.TelemetryWireReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
- new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Diagnostics.StartTelemetryWireResponse), global::Tango.PMR.Diagnostics.StartTelemetryWireResponse.Parser, new[]{ "Name", "Value" }, null, null, null)
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Diagnostics.StartTelemetryWireResponse), global::Tango.PMR.Diagnostics.StartTelemetryWireResponse.Parser, new[]{ "Wires" }, null, null, null)
}));
}
#endregion
@@ -60,8 +61,7 @@ namespace Tango.PMR.Diagnostics {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public StartTelemetryWireResponse(StartTelemetryWireResponse other) : this() {
- name_ = other.name_;
- value_ = other.value_;
+ wires_ = other.wires_.Clone();
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -69,26 +69,14 @@ namespace Tango.PMR.Diagnostics {
return new StartTelemetryWireResponse(this);
}
- /// <summary>Field number for the "Name" field.</summary>
- public const int NameFieldNumber = 1;
- private string name_ = "";
+ /// <summary>Field number for the "Wires" field.</summary>
+ public const int WiresFieldNumber = 1;
+ private static readonly pb::FieldCodec<global::Tango.PMR.Diagnostics.TelemetryWire> _repeated_wires_codec
+ = pb::FieldCodec.ForMessage(10, global::Tango.PMR.Diagnostics.TelemetryWire.Parser);
+ private readonly pbc::RepeatedField<global::Tango.PMR.Diagnostics.TelemetryWire> wires_ = new pbc::RepeatedField<global::Tango.PMR.Diagnostics.TelemetryWire>();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
- public string Name {
- get { return name_; }
- set {
- name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
- }
- }
-
- /// <summary>Field number for the "Value" field.</summary>
- public const int ValueFieldNumber = 2;
- private float value_;
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
- public float Value {
- get { return value_; }
- set {
- value_ = value;
- }
+ public pbc::RepeatedField<global::Tango.PMR.Diagnostics.TelemetryWire> Wires {
+ get { return wires_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -104,16 +92,14 @@ namespace Tango.PMR.Diagnostics {
if (ReferenceEquals(other, this)) {
return true;
}
- if (Name != other.Name) return false;
- if (Value != other.Value) return false;
+ if(!wires_.Equals(other.wires_)) return false;
return true;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public override int GetHashCode() {
int hash = 1;
- if (Name.Length != 0) hash ^= Name.GetHashCode();
- if (Value != 0F) hash ^= Value.GetHashCode();
+ hash ^= wires_.GetHashCode();
return hash;
}
@@ -124,25 +110,13 @@ namespace Tango.PMR.Diagnostics {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public void WriteTo(pb::CodedOutputStream output) {
- if (Name.Length != 0) {
- output.WriteRawTag(10);
- output.WriteString(Name);
- }
- if (Value != 0F) {
- output.WriteRawTag(21);
- output.WriteFloat(Value);
- }
+ wires_.WriteTo(output, _repeated_wires_codec);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public int CalculateSize() {
int size = 0;
- if (Name.Length != 0) {
- size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
- }
- if (Value != 0F) {
- size += 1 + 4;
- }
+ size += wires_.CalculateSize(_repeated_wires_codec);
return size;
}
@@ -151,12 +125,7 @@ namespace Tango.PMR.Diagnostics {
if (other == null) {
return;
}
- if (other.Name.Length != 0) {
- Name = other.Name;
- }
- if (other.Value != 0F) {
- Value = other.Value;
- }
+ wires_.Add(other.wires_);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
@@ -168,11 +137,7 @@ namespace Tango.PMR.Diagnostics {
input.SkipLastField();
break;
case 10: {
- Name = input.ReadString();
- break;
- }
- case 21: {
- Value = input.ReadFloat();
+ wires_.AddEntriesFrom(input, _repeated_wires_codec);
break;
}
}
diff --git a/Software/Visual_Studio/Tango.PMR/Diagnostics/TelemetryWire.cs b/Software/Visual_Studio/Tango.PMR/Diagnostics/TelemetryWire.cs
new file mode 100644
index 000000000..b30dc3caa
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/Diagnostics/TelemetryWire.cs
@@ -0,0 +1,187 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: TelemetryWire.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.Diagnostics {
+
+ /// <summary>Holder for reflection information generated from TelemetryWire.proto</summary>
+ public static partial class TelemetryWireReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for TelemetryWire.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static TelemetryWireReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChNUZWxlbWV0cnlXaXJlLnByb3RvEhVUYW5nby5QTVIuRGlhZ25vc3RpY3Mi",
+ "LAoNVGVsZW1ldHJ5V2lyZRIMCgROYW1lGAEgASgJEg0KBVZhbHVlGAIgASgC",
+ "QiEKH2NvbS50d2luZS50YW5nby5wbXIuZGlhZ25vc3RpY3NiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.Diagnostics.TelemetryWire), global::Tango.PMR.Diagnostics.TelemetryWire.Parser, new[]{ "Name", "Value" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class TelemetryWire : pb::IMessage<TelemetryWire> {
+ private static readonly pb::MessageParser<TelemetryWire> _parser = new pb::MessageParser<TelemetryWire>(() => new TelemetryWire());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<TelemetryWire> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.Diagnostics.TelemetryWireReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public TelemetryWire() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public TelemetryWire(TelemetryWire other) : this() {
+ name_ = other.name_;
+ value_ = other.value_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public TelemetryWire Clone() {
+ return new TelemetryWire(this);
+ }
+
+ /// <summary>Field number for the "Name" field.</summary>
+ public const int NameFieldNumber = 1;
+ private string name_ = "";
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public string Name {
+ get { return name_; }
+ set {
+ name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
+ }
+ }
+
+ /// <summary>Field number for the "Value" field.</summary>
+ public const int ValueFieldNumber = 2;
+ private float value_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public float Value {
+ get { return value_; }
+ set {
+ value_ = value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as TelemetryWire);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(TelemetryWire other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (Name != other.Name) return false;
+ if (Value != other.Value) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (Name.Length != 0) hash ^= Name.GetHashCode();
+ if (Value != 0F) hash ^= Value.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 (Name.Length != 0) {
+ output.WriteRawTag(10);
+ output.WriteString(Name);
+ }
+ if (Value != 0F) {
+ output.WriteRawTag(21);
+ output.WriteFloat(Value);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (Name.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
+ }
+ if (Value != 0F) {
+ size += 1 + 4;
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(TelemetryWire other) {
+ if (other == null) {
+ return;
+ }
+ if (other.Name.Length != 0) {
+ Name = other.Name;
+ }
+ if (other.Value != 0F) {
+ Value = other.Value;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 10: {
+ Name = input.ReadString();
+ break;
+ }
+ case 21: {
+ Value = input.ReadFloat();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/MachineStatus/NotificationType.cs b/Software/Visual_Studio/Tango.PMR/MachineStatus/NotificationType.cs
new file mode 100644
index 000000000..cbf0d38c0
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/MachineStatus/NotificationType.cs
@@ -0,0 +1,50 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: NotificationType.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.MachineStatus {
+
+ /// <summary>Holder for reflection information generated from NotificationType.proto</summary>
+ public static partial class NotificationTypeReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for NotificationType.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static NotificationTypeReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "ChZOb3RpZmljYXRpb25UeXBlLnByb3RvEhdUYW5nby5QTVIuTWFjaGluZVN0",
+ "YXR1cyptChBOb3RpZmljYXRpb25UeXBlEg4KCk5vdGlmeUluZm8QABIRCg1O",
+ "b3RpZnlXYXJuaW5nEAESDwoLTm90aWZ5RXJyb3IQAhISCg5Ob3RpZnlDcml0",
+ "aWNhbBADEhEKDU5vdGlmeVN1Y2Nlc3MQBEIjCiFjb20udHdpbmUudGFuZ28u",
+ "cG1yLm1hY2hpbmVzdGF0dXNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(new[] {typeof(global::Tango.PMR.MachineStatus.NotificationType), }, null));
+ }
+ #endregion
+
+ }
+ #region Enums
+ public enum NotificationType {
+ [pbr::OriginalName("NotifyInfo")] NotifyInfo = 0,
+ [pbr::OriginalName("NotifyWarning")] NotifyWarning = 1,
+ [pbr::OriginalName("NotifyError")] NotifyError = 2,
+ [pbr::OriginalName("NotifyCritical")] NotifyCritical = 3,
+ [pbr::OriginalName("NotifySuccess")] NotifySuccess = 4,
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationRequest.cs b/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationRequest.cs
new file mode 100644
index 000000000..002c42984
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationRequest.cs
@@ -0,0 +1,131 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: StartNotificationRequest.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.MachineStatus {
+
+ /// <summary>Holder for reflection information generated from StartNotificationRequest.proto</summary>
+ public static partial class StartNotificationRequestReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for StartNotificationRequest.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StartNotificationRequestReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch5TdGFydE5vdGlmaWNhdGlvblJlcXVlc3QucHJvdG8SF1RhbmdvLlBNUi5N",
+ "YWNoaW5lU3RhdHVzIhoKGFN0YXJ0Tm90aWZpY2F0aW9uUmVxdWVzdEIjCiFj",
+ "b20udHdpbmUudGFuZ28ucG1yLm1hY2hpbmVzdGF0dXNiBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.MachineStatus.StartNotificationRequest), global::Tango.PMR.MachineStatus.StartNotificationRequest.Parser, null, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class StartNotificationRequest : pb::IMessage<StartNotificationRequest> {
+ private static readonly pb::MessageParser<StartNotificationRequest> _parser = new pb::MessageParser<StartNotificationRequest>(() => new StartNotificationRequest());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<StartNotificationRequest> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.MachineStatus.StartNotificationRequestReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationRequest(StartNotificationRequest other) : this() {
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationRequest Clone() {
+ return new StartNotificationRequest(this);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as StartNotificationRequest);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(StartNotificationRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ 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) {
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(StartNotificationRequest other) {
+ if (other == null) {
+ return;
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationResponse.cs b/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationResponse.cs
new file mode 100644
index 000000000..5b6210b8f
--- /dev/null
+++ b/Software/Visual_Studio/Tango.PMR/MachineStatus/StartNotificationResponse.cs
@@ -0,0 +1,246 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: StartNotificationResponse.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.MachineStatus {
+
+ /// <summary>Holder for reflection information generated from StartNotificationResponse.proto</summary>
+ public static partial class StartNotificationResponseReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for StartNotificationResponse.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static StartNotificationResponseReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "Ch9TdGFydE5vdGlmaWNhdGlvblJlc3BvbnNlLnByb3RvEhdUYW5nby5QTVIu",
+ "TWFjaGluZVN0YXR1cxoWTm90aWZpY2F0aW9uVHlwZS5wcm90byKIAQoZU3Rh",
+ "cnROb3RpZmljYXRpb25SZXNwb25zZRI3CgRUeXBlGAEgASgOMikuVGFuZ28u",
+ "UE1SLk1hY2hpbmVTdGF0dXMuTm90aWZpY2F0aW9uVHlwZRISCgpJc0Jsb2Nr",
+ "aW5nGAIgASgIEg0KBVRpdGxlGAMgASgJEg8KB01lc3NhZ2UYBCABKAlCIwoh",
+ "Y29tLnR3aW5lLnRhbmdvLnBtci5tYWNoaW5lc3RhdHVzYgZwcm90bzM="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { global::Tango.PMR.MachineStatus.NotificationTypeReflection.Descriptor, },
+ new pbr::GeneratedClrTypeInfo(null, new pbr::GeneratedClrTypeInfo[] {
+ new pbr::GeneratedClrTypeInfo(typeof(global::Tango.PMR.MachineStatus.StartNotificationResponse), global::Tango.PMR.MachineStatus.StartNotificationResponse.Parser, new[]{ "Type", "IsBlocking", "Title", "Message" }, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ public sealed partial class StartNotificationResponse : pb::IMessage<StartNotificationResponse> {
+ private static readonly pb::MessageParser<StartNotificationResponse> _parser = new pb::MessageParser<StartNotificationResponse>(() => new StartNotificationResponse());
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pb::MessageParser<StartNotificationResponse> Parser { get { return _parser; } }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Tango.PMR.MachineStatus.StartNotificationResponseReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationResponse(StartNotificationResponse other) : this() {
+ type_ = other.type_;
+ isBlocking_ = other.isBlocking_;
+ title_ = other.title_;
+ message_ = other.message_;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public StartNotificationResponse Clone() {
+ return new StartNotificationResponse(this);
+ }
+
+ /// <summary>Field number for the "Type" field.</summary>
+ public const int TypeFieldNumber = 1;
+ private global::Tango.PMR.MachineStatus.NotificationType type_ = 0;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public global::Tango.PMR.MachineStatus.NotificationType Type {
+ get { return type_; }
+ set {
+ type_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "IsBlocking" field.</summary>
+ public const int IsBlockingFieldNumber = 2;
+ private bool isBlocking_;
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool IsBlocking {
+ get { return isBlocking_; }
+ set {
+ isBlocking_ = value;
+ }
+ }
+
+ /// <summary>Field number for the "Title" field.</summary>
+ public const int TitleFieldNumber = 3;
+ private string title_ = "";
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public string Title {
+ get { return title_; }
+ set {
+ title_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
+ }
+ }
+
+ /// <summary>Field number for the "Message" field.</summary>
+ public const int MessageFieldNumber = 4;
+ private string message_ = "";
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public string Message {
+ get { return message_; }
+ set {
+ message_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override bool Equals(object other) {
+ return Equals(other as StartNotificationResponse);
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public bool Equals(StartNotificationResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (Type != other.Type) return false;
+ if (IsBlocking != other.IsBlocking) return false;
+ if (Title != other.Title) return false;
+ if (Message != other.Message) return false;
+ return true;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public override int GetHashCode() {
+ int hash = 1;
+ if (Type != 0) hash ^= Type.GetHashCode();
+ if (IsBlocking != false) hash ^= IsBlocking.GetHashCode();
+ if (Title.Length != 0) hash ^= Title.GetHashCode();
+ if (Message.Length != 0) hash ^= Message.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 (Type != 0) {
+ output.WriteRawTag(8);
+ output.WriteEnum((int) Type);
+ }
+ if (IsBlocking != false) {
+ output.WriteRawTag(16);
+ output.WriteBool(IsBlocking);
+ }
+ if (Title.Length != 0) {
+ output.WriteRawTag(26);
+ output.WriteString(Title);
+ }
+ if (Message.Length != 0) {
+ output.WriteRawTag(34);
+ output.WriteString(Message);
+ }
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public int CalculateSize() {
+ int size = 0;
+ if (Type != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Type);
+ }
+ if (IsBlocking != false) {
+ size += 1 + 1;
+ }
+ if (Title.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(Title);
+ }
+ if (Message.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(Message);
+ }
+ return size;
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
+ public void MergeFrom(StartNotificationResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.Type != 0) {
+ Type = other.Type;
+ }
+ if (other.IsBlocking != false) {
+ IsBlocking = other.IsBlocking;
+ }
+ if (other.Title.Length != 0) {
+ Title = other.Title;
+ }
+ if (other.Message.Length != 0) {
+ Message = other.Message;
+ }
+ }
+
+ [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: {
+ type_ = (global::Tango.PMR.MachineStatus.NotificationType) input.ReadEnum();
+ break;
+ }
+ case 16: {
+ IsBlocking = input.ReadBool();
+ break;
+ }
+ case 26: {
+ Title = input.ReadString();
+ break;
+ }
+ case 34: {
+ Message = input.ReadString();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/Software/Visual_Studio/Tango.PMR/Tango.PMR.csproj b/Software/Visual_Studio/Tango.PMR/Tango.PMR.csproj
index 79dab6329..aedc6495c 100644
--- a/Software/Visual_Studio/Tango.PMR/Tango.PMR.csproj
+++ b/Software/Visual_Studio/Tango.PMR/Tango.PMR.csproj
@@ -169,6 +169,7 @@
<Compile Include="Diagnostics\StopDiagnosticsResponse.cs" />
<Compile Include="Diagnostics\StopEventsNotificationRequest.cs" />
<Compile Include="Diagnostics\StopEventsNotificationResponse.cs" />
+ <Compile Include="Diagnostics\TelemetryWire.cs" />
<Compile Include="Diagnostics\ThreadAbortJoggingRequest.cs" />
<Compile Include="Diagnostics\ThreadAbortJoggingResponse.cs" />
<Compile Include="Diagnostics\ThreadJoggingRequest.cs" />
@@ -307,6 +308,7 @@
<Compile Include="MachineStatus\IDSPackLevel.cs" />
<Compile Include="MachineStatus\MachineState.cs" />
<Compile Include="MachineStatus\MachineStatus.cs" />
+ <Compile Include="MachineStatus\NotificationType.cs" />
<Compile Include="MachineStatus\PumpState.cs" />
<Compile Include="MachineStatus\PumpStatus.cs" />
<Compile Include="MachineStatus\PumpType.cs" />
@@ -323,6 +325,8 @@
<Compile Include="MachineStatus\SpoolTypeChangedResponse.cs" />
<Compile Include="MachineStatus\StartMachineStatusUpdateRequest.cs" />
<Compile Include="MachineStatus\StartMachineStatusUpdateResponse.cs" />
+ <Compile Include="MachineStatus\StartNotificationRequest.cs" />
+ <Compile Include="MachineStatus\StartNotificationResponse.cs" />
<Compile Include="MachineStatus\Status.cs" />
<Compile Include="MachineStatus\StopMachineStatusUpdateRequest.cs" />
<Compile Include="MachineStatus\StopMachineStatusUpdateResponse.cs" />