Changes in binding between KPackE.Radio and KPackE.RegisterReader (Register(), Unregister(), ver. 2.26.1636

This commit is contained in:
Milan Hanajik
2021-04-28 08:45:19 +02:00
parent 03197dc8f3
commit 4464a2025b
3 changed files with 52 additions and 41 deletions
@@ -105,6 +105,25 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.Radio
}
/// <summary>
/// Register(rr) is called from Initialize() function of RegisterReader-s
/// </summary>
/// <param name="regReader">RegisterReader reference</param>
public void Register(RegisterReader.RegisterReader regReader)
{
RegReaders.Add(regReader);
}
/// <summary>
/// Unregister(rr) is called from StopDevice() function of RegisterReader-s
/// </summary>
/// <param name="regReader">RegisterReader reference</param>
public void Unregister(RegisterReader.RegisterReader regReader)
{
RegReaders.Remove(regReader);
}
public void SendAcknowledgeNow()
{
serialPort.Write(Ack, 0, Ack.Length);
@@ -166,9 +185,8 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.Radio
{
if (rr.SerialNr == serialNr)
{
double wmState = (double)reading;
rr.WMStateReceived(wmState);
EntryForm.WMStateReceived(serialNr, wmState);
rr.WMStateReceived((int)reading);
EntryForm.WMStateReceived(serialNr, reading * rr.LtrsPerPulse);
break;
}
}
@@ -259,12 +277,9 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.Radio
/// <summary>Stop this device</summary>
public void StopDevice()
{
if (serialPort != null)
if (serialPort != null && serialPort.IsOpen)
{
//stopWorkerThread = true;
//workerThread.Join(2000);
serialPort.Close();
serialPort = null;
}
}