1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using ProGauge_StartItaliana_Probe.MessageEntity.Outgoing;
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace ProGauge_StartItaliana_Probe.MessageEntity.Incoming
- {
- public class DiagnosticResponse
- {
-
-
-
-
- public double WaterLevel { get; private set; }
-
-
-
-
- public double ProductLevel { get; private set; }
-
-
-
- public double TotalLenghtInPulseValue { get; private set; }
- public double TemperatureCompensationFactor { get; private set; }
- public double OffestSignal { get; private set; }
- public double PulseSignal { get; private set; }
- public double PowerSupply { get; private set; }
-
-
-
- public double AlarmSet { get; private set; }
- public double AlarmStatus { get; private set; }
- public static DiagnosticResponse Parse(byte[] raw)
- {
- var response = new DiagnosticResponse();
- var msg = Encoding.ASCII.GetString(raw);
- var parts = msg.Split(' ');
- if (parts.Length != 9)
- throw new ArgumentException("msg must has 8 chars of ' '");
- response.WaterLevel = double.Parse(parts[0]);
- response.ProductLevel = double.Parse(parts[1]);
- response.TotalLenghtInPulseValue = double.Parse(parts[2]);
- response.TemperatureCompensationFactor = double.Parse(parts[3]);
- response.OffestSignal = double.Parse(parts[4]);
- response.PulseSignal = double.Parse(parts[5]);
- response.PowerSupply = double.Parse(parts[6]);
- response.AlarmSet = double.Parse(parts[7]);
- response.AlarmStatus = double.Parse(parts[8]);
- return response;
- }
- }
- }
|