Esplicitate le variabili stato come enum
This commit is contained in:
@@ -10,9 +10,16 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace IOB_WIN_NEXT
|
||||
{
|
||||
public enum IcoelStatus
|
||||
{
|
||||
Allarme = 0,
|
||||
Stop = 1,
|
||||
Manuale = 2,
|
||||
Automatico = 3
|
||||
}
|
||||
public class MesItemStatus
|
||||
{
|
||||
public UInt16 Stato { get; set; } = 0;
|
||||
public IcoelStatus Stato { get; set; } = 0;
|
||||
public UInt16 Velocita { get; set; } = 0;
|
||||
public bool Termico { get; set; } = false;
|
||||
public bool MagnetoTermico { get; set; } = false;
|
||||
@@ -20,7 +27,7 @@ namespace IOB_WIN_NEXT
|
||||
|
||||
public MesItemStatus(byte[] rawData)
|
||||
{
|
||||
Stato = BitConverter.ToUInt16(rawData, 0);
|
||||
Stato = (IcoelStatus)BitConverter.ToUInt16(rawData, 0);
|
||||
Velocita = BitConverter.ToUInt16(rawData, 2);
|
||||
Termico = !rawData.Skip(4).Take(1).FirstOrDefault().Equals(0);
|
||||
MagnetoTermico = !rawData.Skip(5).Take(1).FirstOrDefault().Equals(0);
|
||||
@@ -34,7 +41,7 @@ namespace IOB_WIN_NEXT
|
||||
public byte[] serialize()
|
||||
{
|
||||
byte[] answ = new byte[7];
|
||||
Buffer.BlockCopy(BitConverter.GetBytes(Stato), 0, answ, 0, 2);
|
||||
Buffer.BlockCopy(BitConverter.GetBytes((short)Stato), 0, answ, 0, 2);
|
||||
Buffer.BlockCopy(BitConverter.GetBytes(Velocita), 0, answ, 2, 2);
|
||||
Buffer.BlockCopy(BitConverter.GetBytes(Termico), 0, answ, 4, 1);
|
||||
Buffer.BlockCopy(BitConverter.GetBytes(MagnetoTermico), 0, answ, 5, 1);
|
||||
@@ -325,7 +332,7 @@ namespace IOB_WIN_NEXT
|
||||
testSendProperty(new Opc.Ua.Client.MonitoredItem() { DisplayName = $"{blockName}_AvariaInverter", NodeClass = NodeClass.Variable, StartNodeId = startNodeId }, $"{newBlock.AvariaInverter}", forceSend);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Verifica ed invia variazioni DAL FORMATO RAW data (byte[]) --> esplode oggetti e li testa 1:1
|
||||
@@ -339,7 +346,7 @@ namespace IOB_WIN_NEXT
|
||||
{
|
||||
if (NotifyValue != null && NotifyValue.Length > 0)
|
||||
{
|
||||
|
||||
|
||||
// verifico variazione "globale"
|
||||
if (!lastData.Equals(currData))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user