MiniPrf: - adapted to static methods in FM2014

This commit is contained in:
Thomas Wiedebusch 2026-02-11 17:16:23 +01:00
parent 26e1ea6378
commit 91fa956e41
4 changed files with 531 additions and 461 deletions

View File

@ -503,7 +503,7 @@ namespace Sensus.Common.Hardware.WaterMeter.MechanicalMeter.FM2014.FM2014Core
public UInt16 DutPulses_per_cm
{
get => _dutPulses_per_cm;
private set
set
{
// Check limits and equality, the DUT max input is 9999 as this will be
// directly stored to FM2014'V' - 'DUT pulses per volume'
@ -876,6 +876,18 @@ namespace Sensus.Common.Hardware.WaterMeter.MechanicalMeter.FM2014.FM2014Core
if (firstActiveFm2014 == null)
return false;
// Publish setting to all connected and logged in FM2014s as those will be delivered
// for all via broadcast
foreach (var fm2014 in RegisteredFm2014s.Where(fm2014 => fm2014.IsLoggedOn))
{
fm2014.RefPulseCtrOn = refPulseCtrOn;
fm2014.DutPulseCtrOn = dutPulseCtrOn;
// Remove the measurement ready lock used for cyclic request
fm2014.MeasurementIsReady = false;
// Remove error marker
fm2014.ErrorIsDetected = false;
}
// Check if any pulse counter is required
if (!firstActiveFm2014.RefPulseCtrOn && !firstActiveFm2014.DutPulseCtrOn)
{
@ -1573,7 +1585,7 @@ namespace Sensus.Common.Hardware.WaterMeter.MechanicalMeter.FM2014.FM2014Core
// Check all remaining DUT and REF pulses are counted on all connected devices and finalize process by
// reading out all results
//TODO THW rework to take timeout for unresponsive device into account
//TODO THW take timeout for unresponsive device into account and if REF and/or DUT
if (RegisteredFm2014s.All(fm2014 => fm2014.RefPulsesRemaining == 0 &&
fm2014.DutPulsesRemaining == 0))
{

View File

@ -865,10 +865,14 @@ namespace Sensus.Ui.FM2014TestBench
tbxScaleRefToDut.Background = ColorProcessFailed;
tbxScaleRefToDut.Text = Properties.Resources.StrError;
btnSaveRegulationSetup.IsEnabled = false;
btnDutToRefRegulation.IsEnabled = false;
});
return false;
}
Dispatcher.Invoke(() =>
{
tbxScaleRefToDut.Background = ColorStandardDisplayField;
});
return true;
}
@ -1137,7 +1141,8 @@ namespace Sensus.Ui.FM2014TestBench
break;
case CmdName.CMD_DUT_GET_PLS_CTR:
case CmdName.CMD_DUT_GET_PLS_CTR_BU:
UpdateTextBox(tbxDutPulsesMeasured, $"{resp.IntValue:D}");
if (firstFm2014 != null && firstFm2014.Address == fm2014.Address)
UpdateTextBox(tbxDutPulsesMeasured, $"{resp.IntValue:D}");
ucFm2014.SetValue(CTR_LBL_IDX_DUT_PLS, $"{resp.IntValue:D}");
break;
case CmdName.CMD_REF_LPP_SCALE:
@ -1262,10 +1267,6 @@ namespace Sensus.Ui.FM2014TestBench
foreach (var measLbl in MeasurementLabels)
UiElmEnable(measLbl, false, false);
// Backup if meanwhile anything has changed
if (_configSetupHasChanged || _calibrationSetupHasChanged)
StoreFM2014SettingsToConfigFile();
// Set the measurement labels
UpdateContentControl(MeasurementLabels[CAL_LBL_IDX_REF_REQ_PLS], Properties.Resources.StrLblRefPulsesRequired);
UpdateContentControl(MeasurementLabels[CAL_LBL_IDX_REF_RMN_PLS], Properties.Resources.StrLblRefPulsesRemaining);
@ -1289,8 +1290,8 @@ namespace Sensus.Ui.FM2014TestBench
UInt16? refPulsesRequired = null;
UInt16? dutPulsesRequired = null;
UInt16 doublePulseDeadtime_ms = 0;
Double tolerenceThresholdMax_percent = 1.0;
Double tolerenceThresholdMin_percent = -0.7;
Double toleranceThresholdMax_percent = 1.0;
Double toleranceThresholdMin_percent = -0.7;
Dispatcher.Invoke(() =>
{
if (int.TryParse(tbxRefPulsesRequired.Text, out var pulses) &&
@ -1315,12 +1316,12 @@ namespace Sensus.Ui.FM2014TestBench
var englishNumberFormat = tbxDutToRefTolMax.Text.Replace(',', '.');
if (double.TryParse(englishNumberFormat, NumberStyles.Any, new CultureInfo("en"), out var tolerance))
{
tolerenceThresholdMax_percent = tolerance;
toleranceThresholdMax_percent = tolerance;
}
englishNumberFormat = tbxDutToRefTolMin.Text.Replace(',', '.');
if (double.TryParse(englishNumberFormat, NumberStyles.Any, new CultureInfo("en"), out tolerance))
{
tolerenceThresholdMin_percent = tolerance;
toleranceThresholdMin_percent = tolerance;
}
});
@ -1336,12 +1337,16 @@ namespace Sensus.Ui.FM2014TestBench
ucFM2014.SetValue(CAL_LBL_IDX_DUT_REQ_PLS, dutPulsesRequired != null ? $"{dutPulsesRequired}" : "---");
// Set thresholds for tolerance verification
fm2014.DutToRefCalibrationToleranceMax_percent = tolerenceThresholdMax_percent;
fm2014.DutToRefCalibrationToleranceMin_percent = tolerenceThresholdMin_percent;
fm2014.DutToRefCalibrationToleranceMax_percent = toleranceThresholdMax_percent;
fm2014.DutToRefCalibrationToleranceMin_percent = toleranceThresholdMin_percent;
}
if (FM2014.PulseTimeMeasurement(refPulsesRequired, dutPulsesRequired, doublePulseDeadtime_ms))
{
// Backup if meanwhile anything has changed
if (_configSetupHasChanged || _calibrationSetupHasChanged)
StoreFM2014SettingsToConfigFile();
_autoProgressBar = false;
ActionControl(true);
UpdateContentControl(btnDutToRefCalibration, Properties.Resources.StrBtnStopCalibration);
@ -1388,6 +1393,7 @@ namespace Sensus.Ui.FM2014TestBench
UInt16 dutPulses_per_cm = 100;
UInt16 doublePulseDeadtime_ms = 0;
Byte currentOutputAttenuation = 1;
Int32 toleranceSetup = 1;
Dispatcher.Invoke(() =>
{
if (int.TryParse(tbxRefPulsesPerCm.Text, out var pulses_per_cm) &&
@ -1416,6 +1422,13 @@ namespace Sensus.Ui.FM2014TestBench
{
currentOutputAttenuation = attenuation;
}
if (int.TryParse(cbxToleranceCalc.SelectedItem.ToString(), out var tolerance) &&
(tolerance == FM2014.STANDARD_NOMINAL_TOLERANCE_INPUT_percent ||
tolerance == FM2014.EXTENDED_NOMINAL_TOLERANCE_INPUT_percent))
{
toleranceSetup = tolerance;
}
});
// Adjust the user control
@ -1424,6 +1437,7 @@ namespace Sensus.Ui.FM2014TestBench
var idx = fm2014.Address - 1;
var ucFM2014 = (UcFM2014Device)UcFM2014s[idx];
ucFM2014.EnableMeasurements(REG_MEASURE_COUNT);
fm2014.Tolerance_percent = toleranceSetup;
}
if (FM2014.RegulationMeasurement(refPulses_per_cm, dutPulses_per_cm, doublePulseDeadtime_ms,
@ -1482,8 +1496,8 @@ namespace Sensus.Ui.FM2014TestBench
var idx = fm2014.Address - 1;
var ucFM2014 = (UcFM2014Device)UcFM2014s[idx];
ucFM2014.EnableMeasurements(CTR_MEASURE_COUNT);
fm2014.RefPulseCtrOn = true;
fm2014.DutPulseCtrOn = measureDutPulses;
//fm2014.RefPulseCtrOn = true;
//fm2014.DutPulseCtrOn = measureDutPulses;
}
if (FM2014.PulseCounterMeasurement(true, measureDutPulses))
@ -1541,12 +1555,6 @@ namespace Sensus.Ui.FM2014TestBench
tolerance == FM2014.EXTENDED_NOMINAL_TOLERANCE_INPUT_percent) &&
firstFm2014.Tolerance_percent != tolerance)
{
firstFm2014.Tolerance_percent = tolerance;
// Dispatch settings to all connected FM2014
foreach (var fm2014 in FM2014.RegisteredFm2014s)
{
fm2014.Tolerance_percent = tolerance;
}
_regulationSetupHasChanged = true;
btnSaveRegulationSetup.IsEnabled = true;
}
@ -2231,8 +2239,6 @@ namespace Sensus.Ui.FM2014TestBench
if (string.IsNullOrEmpty(tbxRefPulsesPerCm.Text))
{
tbxRefPulsesPerCm.Background = ColorProcessFailed;
tbxDutPulsesPerCm.Background = ColorProcessFailed;
tbxScaleRefToDut.Background = ColorProcessFailed;
btnSaveRegulationSetup.IsEnabled = false;
btnDutToRefRegulation.IsEnabled = false;
return;
@ -2247,6 +2253,11 @@ namespace Sensus.Ui.FM2014TestBench
FM2014.REF_PULSES_PER_CM_REGULATION_INPUT_MAX >= pulses_per_cm)
{
// During setup of the 'Ref_pulse_per_cm' the 'RefToDutScaleStr' will be generated
foreach (var fm2014 in FM2014.RegisteredFm2014s)
{
fm2014.RefPulses_per_cm = (UInt32)pulses_per_cm;
}
if (!UpdateRefToDutScale())
{
tbxRefPulsesPerCm.Background = ColorProcessFailed;
@ -2327,9 +2338,7 @@ namespace Sensus.Ui.FM2014TestBench
{
if (string.IsNullOrEmpty(tbxDutPulsesPerCm.Text))
{
tbxRefPulsesPerCm.Background = ColorProcessFailed;
tbxDutPulsesPerCm.Background = ColorProcessFailed;
tbxScaleRefToDut.Background = ColorProcessFailed;
btnSaveRegulationSetup.IsEnabled = false;
btnDutToRefRegulation.IsEnabled = false;
return;
@ -2344,6 +2353,11 @@ namespace Sensus.Ui.FM2014TestBench
FM2014.PULSES_PER_CM_REGULATION_SETUP_MAX >= pulses_per_cm)
{
// During setup of the 'Dut_pulse_per_cm' the 'RefToDutScaleStr' will be generated
foreach (var fm2014 in FM2014.RegisteredFm2014s)
{
fm2014.DutPulses_per_cm = (UInt16)pulses_per_cm;
}
if (!UpdateRefToDutScale())
{
tbxDutPulsesPerCm.Background = ColorProcessFailed;

View File

@ -52,8 +52,8 @@
this.lblDutPulsePerVolume = new System.Windows.Forms.Label();
this.lblAttenuation = new System.Windows.Forms.Label();
this.lblScaleRefToDut = new System.Windows.Forms.Label();
this.tbxRefPulsePerCm = new System.Windows.Forms.TextBox();
this.tbxDutPulsePerCm = new System.Windows.Forms.TextBox();
this.tbxRefPulsesPerCm = new System.Windows.Forms.TextBox();
this.tbxDutPulsesPerCm = new System.Windows.Forms.TextBox();
this.tbxScaleRefToDut = new System.Windows.Forms.TextBox();
this.lblUpdateTimeValue = new System.Windows.Forms.Label();
this.tmrProgressUpdate = new System.Windows.Forms.Timer(this.components);
@ -64,13 +64,13 @@
this.btnDutToRefRegulation = new System.Windows.Forms.Button();
this.gbxManualRefCalibration = new System.Windows.Forms.GroupBox();
this.cbxMeasuredDutPulses = new System.Windows.Forms.CheckBox();
this.tbxMeasuredDutPulses = new System.Windows.Forms.TextBox();
this.tbxDutPulsesMeasured = new System.Windows.Forms.TextBox();
this.lblPulseVolumeCmRelation = new System.Windows.Forms.Label();
this.tbxRefCalibrationResultPulsePerCm = new System.Windows.Forms.TextBox();
this.lblWeightScaleVolume = new System.Windows.Forms.Label();
this.tbxManualInputVolumeLiters = new System.Windows.Forms.TextBox();
this.tbxVolumeMeasuredLiters = new System.Windows.Forms.TextBox();
this.lblMeasuredRefPulses = new System.Windows.Forms.Label();
this.tbxMeasuredRefPulses = new System.Windows.Forms.TextBox();
this.tbxRefPulsesMeasured = new System.Windows.Forms.TextBox();
this.btnManualRefCalibration = new System.Windows.Forms.Button();
this.gbxDutToRefRegulation = new System.Windows.Forms.GroupBox();
this.lblRefFrequencyHz = new System.Windows.Forms.Label();
@ -292,8 +292,8 @@
this.gbxRegulationSetup.Controls.Add(this.lblDutPulsePerVolume);
this.gbxRegulationSetup.Controls.Add(this.lblAttenuation);
this.gbxRegulationSetup.Controls.Add(this.lblScaleRefToDut);
this.gbxRegulationSetup.Controls.Add(this.tbxRefPulsePerCm);
this.gbxRegulationSetup.Controls.Add(this.tbxDutPulsePerCm);
this.gbxRegulationSetup.Controls.Add(this.tbxRefPulsesPerCm);
this.gbxRegulationSetup.Controls.Add(this.tbxDutPulsesPerCm);
this.gbxRegulationSetup.Controls.Add(this.tbxScaleRefToDut);
this.gbxRegulationSetup.Location = new System.Drawing.Point(8, 239);
this.gbxRegulationSetup.Name = "gbxRegulationSetup";
@ -369,25 +369,25 @@
this.lblScaleRefToDut.TabIndex = 64;
this.lblScaleRefToDut.Text = "REF/DUT Scale [norm]";
//
// tbxRefPulsePerCm
// tbxRefPulsesPerCm
//
this.tbxRefPulsePerCm.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxRefPulsePerCm.Location = new System.Drawing.Point(220, 26);
this.tbxRefPulsePerCm.Name = "tbxRefPulsePerCm";
this.tbxRefPulsePerCm.Size = new System.Drawing.Size(60, 20);
this.tbxRefPulsePerCm.TabIndex = 4;
this.tbxRefPulsePerCm.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxRefPulsesPerCm_KeyDown);
this.tbxRefPulsePerCm.Leave += new System.EventHandler(this.tbxRefPulsesPerCm_Leave);
this.tbxRefPulsesPerCm.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxRefPulsesPerCm.Location = new System.Drawing.Point(220, 26);
this.tbxRefPulsesPerCm.Name = "tbxRefPulsesPerCm";
this.tbxRefPulsesPerCm.Size = new System.Drawing.Size(60, 20);
this.tbxRefPulsesPerCm.TabIndex = 4;
this.tbxRefPulsesPerCm.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxRefPulsesPerCm_KeyDown);
this.tbxRefPulsesPerCm.Leave += new System.EventHandler(this.tbxRefPulsesPerCm_Leave);
//
// tbxDutPulsePerCm
// tbxDutPulsesPerCm
//
this.tbxDutPulsePerCm.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxDutPulsePerCm.Location = new System.Drawing.Point(220, 51);
this.tbxDutPulsePerCm.Name = "tbxDutPulsePerCm";
this.tbxDutPulsePerCm.Size = new System.Drawing.Size(60, 20);
this.tbxDutPulsePerCm.TabIndex = 5;
this.tbxDutPulsePerCm.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxDutPulsesPerCm_KeyDown);
this.tbxDutPulsePerCm.Leave += new System.EventHandler(this.tbxDutPulsesPerCm_Leave);
this.tbxDutPulsesPerCm.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxDutPulsesPerCm.Location = new System.Drawing.Point(220, 51);
this.tbxDutPulsesPerCm.Name = "tbxDutPulsesPerCm";
this.tbxDutPulsesPerCm.Size = new System.Drawing.Size(60, 20);
this.tbxDutPulsesPerCm.TabIndex = 5;
this.tbxDutPulsesPerCm.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxDutPulsesPerCm_KeyDown);
this.tbxDutPulsesPerCm.Leave += new System.EventHandler(this.tbxDutPulsesPerCm_Leave);
//
// tbxScaleRefToDut
//
@ -461,13 +461,13 @@
// gbxManualRefCalibration
//
this.gbxManualRefCalibration.Controls.Add(this.cbxMeasuredDutPulses);
this.gbxManualRefCalibration.Controls.Add(this.tbxMeasuredDutPulses);
this.gbxManualRefCalibration.Controls.Add(this.tbxDutPulsesMeasured);
this.gbxManualRefCalibration.Controls.Add(this.lblPulseVolumeCmRelation);
this.gbxManualRefCalibration.Controls.Add(this.tbxRefCalibrationResultPulsePerCm);
this.gbxManualRefCalibration.Controls.Add(this.lblWeightScaleVolume);
this.gbxManualRefCalibration.Controls.Add(this.tbxManualInputVolumeLiters);
this.gbxManualRefCalibration.Controls.Add(this.tbxVolumeMeasuredLiters);
this.gbxManualRefCalibration.Controls.Add(this.lblMeasuredRefPulses);
this.gbxManualRefCalibration.Controls.Add(this.tbxMeasuredRefPulses);
this.gbxManualRefCalibration.Controls.Add(this.tbxRefPulsesMeasured);
this.gbxManualRefCalibration.Controls.Add(this.btnManualRefCalibration);
this.gbxManualRefCalibration.Location = new System.Drawing.Point(302, 75);
this.gbxManualRefCalibration.Name = "gbxManualRefCalibration";
@ -486,14 +486,14 @@
this.cbxMeasuredDutPulses.Text = "Measured DUT [Pulses]:";
this.cbxMeasuredDutPulses.UseVisualStyleBackColor = true;
//
// tbxMeasuredDutPulses
// tbxDutPulsesMeasured
//
this.tbxMeasuredDutPulses.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxMeasuredDutPulses.Location = new System.Drawing.Point(164, 51);
this.tbxMeasuredDutPulses.Name = "tbxMeasuredDutPulses";
this.tbxMeasuredDutPulses.ReadOnly = true;
this.tbxMeasuredDutPulses.Size = new System.Drawing.Size(60, 20);
this.tbxMeasuredDutPulses.TabIndex = 75;
this.tbxDutPulsesMeasured.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxDutPulsesMeasured.Location = new System.Drawing.Point(164, 51);
this.tbxDutPulsesMeasured.Name = "tbxDutPulsesMeasured";
this.tbxDutPulsesMeasured.ReadOnly = true;
this.tbxDutPulsesMeasured.Size = new System.Drawing.Size(60, 20);
this.tbxDutPulsesMeasured.TabIndex = 75;
//
// lblPulseVolumeCmRelation
//
@ -522,15 +522,15 @@
this.lblWeightScaleVolume.TabIndex = 70;
this.lblWeightScaleVolume.Text = "Volume [liters]:";
//
// tbxManualInputVolumeLiters
// tbxVolumeMeasuredLiters
//
this.tbxManualInputVolumeLiters.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxManualInputVolumeLiters.Location = new System.Drawing.Point(164, 77);
this.tbxManualInputVolumeLiters.Name = "tbxManualInputVolumeLiters";
this.tbxManualInputVolumeLiters.Size = new System.Drawing.Size(60, 20);
this.tbxManualInputVolumeLiters.TabIndex = 8;
this.tbxManualInputVolumeLiters.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxManualInputVolumeLiters_KeyStoke);
this.tbxManualInputVolumeLiters.Leave += new System.EventHandler(this.tbxManualInputVolumeLiters_Leave);
this.tbxVolumeMeasuredLiters.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxVolumeMeasuredLiters.Location = new System.Drawing.Point(164, 77);
this.tbxVolumeMeasuredLiters.Name = "tbxVolumeMeasuredLiters";
this.tbxVolumeMeasuredLiters.Size = new System.Drawing.Size(60, 20);
this.tbxVolumeMeasuredLiters.TabIndex = 8;
this.tbxVolumeMeasuredLiters.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbxManualInputVolumeLiters_KeyStoke);
this.tbxVolumeMeasuredLiters.Leave += new System.EventHandler(this.tbxManualInputVolumeLiters_Leave);
//
// lblMeasuredRefPulses
//
@ -541,14 +541,14 @@
this.lblMeasuredRefPulses.TabIndex = 68;
this.lblMeasuredRefPulses.Text = "Measured REF [Pulses]:";
//
// tbxMeasuredRefPulses
// tbxRefPulsesMeasured
//
this.tbxMeasuredRefPulses.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxMeasuredRefPulses.Location = new System.Drawing.Point(164, 26);
this.tbxMeasuredRefPulses.Name = "tbxMeasuredRefPulses";
this.tbxMeasuredRefPulses.ReadOnly = true;
this.tbxMeasuredRefPulses.Size = new System.Drawing.Size(60, 20);
this.tbxMeasuredRefPulses.TabIndex = 69;
this.tbxRefPulsesMeasured.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbxRefPulsesMeasured.Location = new System.Drawing.Point(164, 26);
this.tbxRefPulsesMeasured.Name = "tbxRefPulsesMeasured";
this.tbxRefPulsesMeasured.ReadOnly = true;
this.tbxRefPulsesMeasured.Size = new System.Drawing.Size(60, 20);
this.tbxRefPulsesMeasured.TabIndex = 69;
//
// btnManualRefCalibration
//
@ -877,8 +877,8 @@
private System.Windows.Forms.Label lblDutPulsePerVolume;
private System.Windows.Forms.Label lblAttenuation;
private System.Windows.Forms.Label lblScaleRefToDut;
private System.Windows.Forms.TextBox tbxRefPulsePerCm;
private System.Windows.Forms.TextBox tbxDutPulsePerCm;
private System.Windows.Forms.TextBox tbxRefPulsesPerCm;
private System.Windows.Forms.TextBox tbxDutPulsesPerCm;
private System.Windows.Forms.TextBox tbxScaleRefToDut;
private System.Windows.Forms.Label lblUpdateTimeValue;
private System.Windows.Forms.Timer tmrProgressUpdate;
@ -899,11 +899,11 @@
private System.Windows.Forms.GroupBox gbxManualRefCalibration;
private System.Windows.Forms.GroupBox gbxDutToRefRegulation;
private System.Windows.Forms.Button btnManualRefCalibration;
private System.Windows.Forms.TextBox tbxMeasuredRefPulses;
private System.Windows.Forms.TextBox tbxRefPulsesMeasured;
private System.Windows.Forms.Label lblPulseVolumeCmRelation;
private System.Windows.Forms.TextBox tbxRefCalibrationResultPulsePerCm;
private System.Windows.Forms.Label lblWeightScaleVolume;
private System.Windows.Forms.TextBox tbxManualInputVolumeLiters;
private System.Windows.Forms.TextBox tbxVolumeMeasuredLiters;
private System.Windows.Forms.Label lblActualMeasuredTolerance;
private System.Windows.Forms.TextBox tbxActualMeasuredToleranceDutToRef;
private System.Windows.Forms.Label lblActualFlowRateCmPerHour;
@ -931,7 +931,7 @@
private System.Windows.Forms.Label label7;
private System.Windows.Forms.TextBox tbxRefFlowRateFromRefFrequencyCmPerH;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.TextBox tbxMeasuredDutPulses;
private System.Windows.Forms.TextBox tbxDutPulsesMeasured;
private System.Windows.Forms.CheckBox cbxMeasuredDutPulses;
private System.Windows.Forms.Label lblMeasuredRefPulses;
}

File diff suppressed because it is too large Load Diff