diff --git a/Config/Config.csproj b/Config/Config.csproj
index b1193fc17..8f65fd754 100644
--- a/Config/Config.csproj
+++ b/Config/Config.csproj
@@ -77,6 +77,7 @@
+
diff --git a/Config/Entities/ComponentProcedure.cs b/Config/Entities/ComponentProcedure.cs
index 2f970fff0..e0b17982c 100644
--- a/Config/Entities/ComponentProcedure.cs
+++ b/Config/Entities/ComponentProcedure.cs
@@ -1,5 +1,5 @@
///
-/// Copyright (c) 2013-2017 Sensus Metering Systems
+/// Copyright (c) 2013-2018 Sensus Slovensko a.s.
///
using System;
using System.IO;
@@ -13,13 +13,25 @@ namespace Config.Entities
public virtual string Parameters { get; set; }
public virtual Procedure Procedure { get; set; }
+ IParamsProvider paramsProvider;
+ ///
+ public virtual IParamsProvider GetParamsProvider() { return paramsProvider; }
+ public virtual void SetParamsProvider(IParamsProvider paramsProvider) { this.paramsProvider = paramsProvider; }
+
+
+ protected ComponentProcedure() { }
+
+ public ComponentProcedure(string name, string parameters, Procedure procedure)
+ {
+ this.CmpntName = name;
+ this.Parameters = parameters;
+ this.Procedure = procedure;
+ }
+
+
public virtual ComponentProcedure Clone(Procedure newProcedure)
{
- ComponentProcedure result = new ComponentProcedure();
- result.CmpntName = CmpntName;
- result.Parameters = Parameters;
- result.Procedure = newProcedure;
- return result;
+ return new ComponentProcedure(CmpntName, Parameters, newProcedure);
}
public virtual void Export(StreamWriter output)
@@ -34,11 +46,16 @@ namespace Config.Entities
if (string.IsNullOrEmpty(firstLine)) return null;
- ComponentProcedure result = new ComponentProcedure();
- result.CmpntName = firstLine;
- result.Parameters = input.ReadLine().Replace("~", Environment.NewLine);
- result.Procedure = newProcedure;
- return result;
+ try
+ {
+ string cmptnName = firstLine;
+ string parameters = input.ReadLine().Replace("~", Environment.NewLine);
+ return new ComponentProcedure(cmptnName, parameters, newProcedure);
+ }
+ catch (Exception)
+ {
+ return null;
+ }
}
}
}
diff --git a/Config/Entities/ComponentTest.cs b/Config/Entities/ComponentTest.cs
index 869c672dc..ab0599282 100644
--- a/Config/Entities/ComponentTest.cs
+++ b/Config/Entities/ComponentTest.cs
@@ -1,5 +1,5 @@
///
-/// Copyright (c) 2013-2017 Sensus Metering Systems
+/// Copyright (c) 2013-2018 Sensus Slovensko a.s.
///
using System;
using System.IO;
@@ -13,13 +13,25 @@ namespace Config.Entities
public virtual string Parameters { get; set; }
public virtual Test Test { get; set; }
+ IParamsProvider paramsProvider;
+ ///
+ public virtual IParamsProvider GetParamsProvider() { return paramsProvider; }
+ public virtual void SetParamsProvider(IParamsProvider paramsProvider) { this.paramsProvider = paramsProvider; }
+
+
+ protected ComponentTest() { }
+
+ public ComponentTest(string name, string parameters, Test test)
+ {
+ this.CmpntName = name;
+ this.Parameters = parameters;
+ this.Test = test;
+ }
+
+
public virtual ComponentTest Clone()
{
- ComponentTest result = new ComponentTest();
- result.CmpntName = CmpntName;
- result.Parameters = Parameters;
- result.Test = Test;
- return result;
+ return new ComponentTest(CmpntName, Parameters, Test);
}
public virtual void Export(StreamWriter output)
@@ -34,11 +46,16 @@ namespace Config.Entities
if (string.IsNullOrEmpty(firstLine)) return null;
- ComponentTest result = new ComponentTest();
- result.CmpntName = firstLine;
- result.Parameters = input.ReadLine().Replace("~", Environment.NewLine);
- result.Test = newTest;
- return result;
+ try
+ {
+ string cmptnName = firstLine;
+ string parameters = input.ReadLine().Replace("~", Environment.NewLine);
+ return new ComponentTest(cmptnName, parameters, newTest);
+ }
+ catch (Exception)
+ {
+ return null;
+ }
}
}
}
diff --git a/TBF/BenchControl/Generic/IParamsProvider.cs b/Config/Entities/IParamsProvider.cs
similarity index 85%
rename from TBF/BenchControl/Generic/IParamsProvider.cs
rename to Config/Entities/IParamsProvider.cs
index e161e64ab..4a3b34ec6 100644
--- a/TBF/BenchControl/Generic/IParamsProvider.cs
+++ b/Config/Entities/IParamsProvider.cs
@@ -1,10 +1,17 @@
///
-/// Copyright (c) 2013-2015 Sensus Metering Systems
+/// Copyright (c) 2013-2018 Sensus Slovensko a.s.
///
-namespace TBF.BenchControl.Generic
+using System.Xml.Serialization;
+
+namespace Config.Entities
{
public interface IParamsProvider
{
+ ///
+ /// Get XML Serializer
+ ///
+ XmlSerializer GetSerializer();
+
string ComponentName { get; }
///
@@ -45,7 +52,7 @@ namespace TBF.BenchControl.Generic
/// String representation of the parameter
void UpdateParam(int ix, string strValue);
- void UpdateDbEntity();
+ void UpdateEmbeddedDbEntity();
///
/// Creates an object copy
diff --git a/Config/Entities/Procedure.cs b/Config/Entities/Procedure.cs
index cc88bc52b..64504c102 100644
--- a/Config/Entities/Procedure.cs
+++ b/Config/Entities/Procedure.cs
@@ -225,6 +225,15 @@ namespace Config.Entities
return diff.ToString();
}
+ public virtual ComponentProcedure GetProcedureParamsEntity(string cmpntName)
+ {
+ foreach (var procPrms in MoreParams)
+ {
+ if (procPrms.CmpntName == cmpntName) return procPrms;
+ }
+ return null;
+ }
+
public override string ToString()
{
return string.Format("{0}, rev.{1}", Name, Revision);
diff --git a/Config/Entities/Test.cs b/Config/Entities/Test.cs
index 9d6c2ac17..9047f0358 100644
--- a/Config/Entities/Test.cs
+++ b/Config/Entities/Test.cs
@@ -301,6 +301,15 @@ namespace Config.Entities
return diff.ToString();
}
+ public virtual ComponentTest GetTestParamsEntity(string cmpntName)
+ {
+ foreach (var tstPrms in MoreParams)
+ {
+ if (tstPrms.CmpntName == cmpntName) return tstPrms;
+ }
+ return null;
+ }
+
public virtual float GetErrLimLo(float flow)
{
if (ErrLimLo <= ErrLimHi)
diff --git a/Config/Properties/AssemblyInfo.cs b/Config/Properties/AssemblyInfo.cs
index f440c1e37..651363788 100644
--- a/Config/Properties/AssemblyInfo.cs
+++ b/Config/Properties/AssemblyInfo.cs
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("2.18.883.0")]
-[assembly: AssemblyFileVersion("2.18.883.0")]
+[assembly: AssemblyVersion("2.18.891.0")]
+[assembly: AssemblyFileVersion("2.18.891.0")]
diff --git a/TBF/BenchControl/ComponentCfgBase.cs b/TBF/BenchControl/ComponentCfgBase.cs
index 8a65cc287..17a5e01d1 100644
--- a/TBF/BenchControl/ComponentCfgBase.cs
+++ b/TBF/BenchControl/ComponentCfgBase.cs
@@ -124,56 +124,146 @@ namespace TBF.BenchControl
}
}
- ///
- /// Default implementation returning null - no test aprameters.
- /// In case there are any test parameters, this function override should return
- /// a reference to a class that implements IParamsProvider and ITestParams.
- ///
- /// Test parameters obtained by the last UpdateTestParams(test)
- public virtual IParamsProvider GetTestParams()
- {
- return null;
- }
- ///
- /// Default implementation returning null - no procedure parameters.
- /// In case there are any procedure parameters, this function override should return
- /// a reference to a class that implements IParamsProvider and IProcedureParams.
- ///
- /// Procedure parameters obtained by the last UpdateProcedureParams(procedure)
- public virtual IParamsProvider GetProcedureParams()
+ public void LoadTestParamsFromDB(Test test)
{
- return null;
- }
-
-
- public void UpdateTestParams(Test test)
- {
- ITestParams tstPrms = (GetTestParams() as ITestParams);
+ ITestParams tstPrms = (GetRuntimeTestParamsProvider() as ITestParams);
if (tstPrms != null)
{
- tstPrms.UpdateTestParams(Name, test);
+ tstPrms.FromDbEntity(Name, test);
}
}
- public void UpdateProcedureParams(Procedure procedure)
+
+ public void LoadProcedureParamsFromDB(Procedure procedure)
{
- IProcedureParams procPrms = (GetProcedureParams() as IProcedureParams);
+ IProcedureParams procPrms = (GetRuntimeProcParamsProvider() as IProcedureParams);
if (procPrms != null)
{
- procPrms.UpdateProcedureParams(Name, procedure);
+ procPrms.FromDbEntity(Name, procedure);
}
}
- public virtual IParamsProvider CreateTestParams(Test test)
- {
- return null;
- }
+ ///
+ /// If there are any procedure parameters, this function should be overriden
+ /// by one returning a reference to a newly created object
+ /// implementing IParamsProvider and IProcedureParams.
+ ///
+ /// This default implementation returns null = no procedure parameters.
+ ///
+ /// Procedure parameters provider for this component or null
+ public virtual IParamsProvider CreateProcParamsProvider()
+ {
+ return null;
+ }
- public virtual IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- return null;
- }
+ ///
+ /// If there are any procedure parameters, this function should be overriden
+ /// by one returning a reference to an object
+ /// implementing IParamsProvider and IProcedureParams used in runtime.
+ ///
+ /// This default implementation returns null = no procedure parameters.
+ ///
+ /// Procedure parameters provider for this component or null
+ public virtual IParamsProvider GetRuntimeProcParamsProvider()
+ {
+ return null;
+ }
+
+ public virtual IParamsProvider GetUIProcParamsProvider(Procedure procedure)
+ {
+ if (GetRuntimeProcParamsProvider() == null)
+ {
+ /// Component has no test parametes
+ return null;
+ }
+
+ ComponentProcedure procParamsEntity = procedure.GetProcedureParamsEntity(Name);
+
+ if (procParamsEntity != null)
+ {
+ if (procParamsEntity.GetParamsProvider() != null)
+ {
+ /// Parameters provider for this entity already fetched - return it
+ return procParamsEntity.GetParamsProvider();
+ }
+ else
+ {
+ /// Parameters provider for this entity will be created and updated from the entity later on
+ IParamsProvider paramsProvider = CreateProcParamsProvider();
+ (paramsProvider as IProcedureParams).UpdateFromDbEntity(procParamsEntity);
+ procParamsEntity.SetParamsProvider(paramsProvider);
+ return paramsProvider;
+ }
+ }
+ else
+ {
+ IParamsProvider paramsProvider = CreateProcParamsProvider();
+ (paramsProvider as IProcedureParams).FromDbEntity(Name, procedure);
+ return paramsProvider;
+ }
+ }
+
+
+ ///
+ /// If there are any procedure parameters, this function should be overriden
+ /// by one returning a reference to a newly created object
+ /// implementing IParamsProvider and ITestParams.
+ ///
+ /// This default implementation returns null = no test parameters.
+ ///
+ /// Procedure parameters provider for this component or null
+ public virtual IParamsProvider CreateTestParamsProvider()
+ {
+ return null;
+ }
+
+ ///
+ /// If there are any test parameters, this function should be overriden
+ /// by one returning a reference to an object
+ /// implementing IParamsProvider and ITestParams used in runtime.
+ ///
+ /// This default implementation returns null = no test parameters.
+ ///
+ /// Test parameters provider for this component or null
+ public virtual IParamsProvider GetRuntimeTestParamsProvider()
+ {
+ return null;
+ }
+
+ public virtual IParamsProvider GetUITestParamsProvider(Test test)
+ {
+ if (GetRuntimeTestParamsProvider() == null)
+ {
+ /// Component has no test parametes
+ return null;
+ }
+
+ ComponentTest testParamsEntity = test.GetTestParamsEntity(Name);
+
+ if (testParamsEntity != null)
+ {
+ if (testParamsEntity.GetParamsProvider() != null)
+ {
+ /// Parameters provider for this entity already fetched - return it
+ return testParamsEntity.GetParamsProvider();
+ }
+ else
+ {
+ /// Parameters provider for this entity will be created and updated from the entity later on
+ IParamsProvider paramsProvider = CreateTestParamsProvider();
+ (paramsProvider as ITestParams).UpdateFromDbEntity(testParamsEntity);
+ testParamsEntity.SetParamsProvider(paramsProvider);
+ return paramsProvider;
+ }
+ }
+ else
+ {
+ IParamsProvider paramsProvider = CreateTestParamsProvider();
+ (paramsProvider as ITestParams).FromDbEntity(Name, test);
+ return paramsProvider;
+ }
+ }
}
}
diff --git a/TBF/BenchControl/Elde/FixedStartRegisterReader/RRProcedureParams.cs b/TBF/BenchControl/Elde/FixedStartRegisterReader/RRProcedureParams.cs
index d4207ae21..beaad638c 100644
--- a/TBF/BenchControl/Elde/FixedStartRegisterReader/RRProcedureParams.cs
+++ b/TBF/BenchControl/Elde/FixedStartRegisterReader/RRProcedureParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.Elde.FixedStartRegisterReader
public class RRProcedureParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RRProcedureParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public double PulsesPerLtr; /// Target low limit of the flow increase or decrease
@@ -81,7 +81,7 @@ namespace TBF.BenchControl.Elde.FixedStartRegisterReader
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReaderCfg.cs b/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReaderCfg.cs
index 726ee015f..df62fe524 100644
--- a/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReaderCfg.cs
+++ b/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReaderCfg.cs
@@ -20,20 +20,15 @@ namespace TBF.BenchControl.Elde.FixedStartRegisterReader
/// Procedure parameters
[XmlIgnore]
public RRProcedureParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- RRProcedureParams procParams = new RRProcedureParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new RRProcedureParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
RegisterReaderCfg()
{
Name = "Dummy";
ParentName = "CB";
- ProcParams = new RRProcedureParams(true);
+ ProcParams = new RRProcedureParams(true);
}
public RegisterReaderCfg(IComponentFactory factory)
diff --git a/TBF/BenchControl/Elde/RegisterReader/RRProcedureParams.cs b/TBF/BenchControl/Elde/RegisterReader/RRProcedureParams.cs
index 328d2f9c3..f37593ae5 100644
--- a/TBF/BenchControl/Elde/RegisterReader/RRProcedureParams.cs
+++ b/TBF/BenchControl/Elde/RegisterReader/RRProcedureParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.Elde.RegisterReader
public class RRProcedureParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RRProcedureParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public double PulsesPerLtr; /// [l^-1]
@@ -81,7 +81,7 @@ namespace TBF.BenchControl.Elde.RegisterReader
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/Elde/RegisterReader/RegisterReaderCfg.cs b/TBF/BenchControl/Elde/RegisterReader/RegisterReaderCfg.cs
index bb640f21d..928459ffc 100644
--- a/TBF/BenchControl/Elde/RegisterReader/RegisterReaderCfg.cs
+++ b/TBF/BenchControl/Elde/RegisterReader/RegisterReaderCfg.cs
@@ -10,7 +10,7 @@ namespace TBF.BenchControl.Elde.RegisterReader
public class RegisterReaderCfg : ComponentCfgBase, Generic.IChildComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RegisterReaderCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new RegisterReaderCfgCtrl(); }
@@ -22,18 +22,13 @@ namespace TBF.BenchControl.Elde.RegisterReader
/// Procedure parameters
[XmlIgnore]
public RRProcedureParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- RRProcedureParams procParams = new RRProcedureParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new RRProcedureParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
RegisterReaderCfg()
{
- ProcParams = new RRProcedureParams(true);
+ ProcParams = new RRProcedureParams(true);
}
public RegisterReaderCfg(string name, IComponentFactory factory)
diff --git a/TBF/BenchControl/Generic/IComponentCfg.cs b/TBF/BenchControl/Generic/IComponentCfg.cs
index c3785f8c8..f7e0aab9a 100644
--- a/TBF/BenchControl/Generic/IComponentCfg.cs
+++ b/TBF/BenchControl/Generic/IComponentCfg.cs
@@ -2,6 +2,7 @@
/// Copyright (c) 2013-2016 Sensus Metering Systems
///
using System.Collections.Generic;
+using Config.Entities;
namespace TBF.BenchControl.Generic
{
@@ -52,19 +53,51 @@ namespace TBF.BenchControl.Generic
///
IComponentCfgCtrl GetControl();
- ///
- /// Procedure parameters provider support
- ///
- IParamsProvider GetProcedureParams();
- void UpdateProcedureParams(Config.Entities.Procedure procedure);
- IParamsProvider CreateProcedureParams(Config.Entities.Procedure procedure);
+
+ ///
+ /// Creates a procedure parameters provider (specific for each component).
+ ///
+ /// Prodedure parameters provider or null
+ IParamsProvider CreateProcParamsProvider();
+
+ ///
+ /// Returns runtime procedure parameters provider - one per component updated by LoadProcedureParamsFromDB(...).
+ ///
+ /// Prodedure parameters provider or null
+ IParamsProvider GetRuntimeProcParamsProvider();
+
+ ///
+ /// Returns UI procedure parameters provider - one per ComponentProcedure DB entity.
+ ///
+ /// Prodedure parameters provider or null
+ IParamsProvider GetUIProcParamsProvider(Config.Entities.Procedure procedure);
+
+
+ ///
+ /// Creates a test parameters provider (specific for each component).
+ ///
+ /// Test parameters provider or null
+ IParamsProvider CreateTestParamsProvider();
+
+ ///
+ /// Returns runtime test parameters provider - one per component updated by LoadtestParamsFromDB(...).
+ ///
+ /// Test parameters provider or null
+ IParamsProvider GetRuntimeTestParamsProvider();
+
+ ///
+ /// Returns UI test parameters provider - one per ComponentTest DB entity.
+ ///
+ /// Test parameters provider or null
+ IParamsProvider GetUITestParamsProvider(Config.Entities.Test test);
+
+
+ ///
+ /// Used in run time when a procedure is loaded or a test is started
+ ///
+ void LoadProcedureParamsFromDB(Config.Entities.Procedure procedure);
+ void LoadTestParamsFromDB(Config.Entities.Test test);
- ///
- /// Test parameters provider support
- ///
- IParamsProvider GetTestParams();
- void UpdateTestParams(Config.Entities.Test test);
- IParamsProvider CreateTestParams(Config.Entities.Test test);
string ToString(int i);
}
diff --git a/TBF/BenchControl/Generic/IProcedureParams.cs b/TBF/BenchControl/Generic/IProcedureParams.cs
index caccedf45..01c36af4e 100644
--- a/TBF/BenchControl/Generic/IProcedureParams.cs
+++ b/TBF/BenchControl/Generic/IProcedureParams.cs
@@ -1,11 +1,14 @@
///
-/// Copyright (c) 2013-2015 Sensus Metering Systems
+/// Copyright (c) 2013-2018 Sensus Slovensko a.s.
///
+using Config.Entities;
+
namespace TBF.BenchControl.Generic
{
public interface IProcedureParams
{
- void UpdateProcedureParams(string componentName, Config.Entities.Procedure procedure);
- Config.Entities.ComponentProcedure ToDbEntity(string componentName, Config.Entities.Procedure procedure);
+ void UpdateFromDbEntity(ComponentProcedure dbEntity);
+ void FromDbEntity(string componentName, Procedure procedure);
+ ComponentProcedure ToDbEntity(string componentName, Procedure procedure);
}
}
diff --git a/TBF/BenchControl/Generic/ITestParams.cs b/TBF/BenchControl/Generic/ITestParams.cs
index b7e9391b0..7cbb5b966 100644
--- a/TBF/BenchControl/Generic/ITestParams.cs
+++ b/TBF/BenchControl/Generic/ITestParams.cs
@@ -1,11 +1,14 @@
///
-/// Copyright (c) 2013-2015 Sensus Metering Systems
+/// Copyright (c) 2013-2018 Sensus Slovensko a.s.
///
+using Config.Entities;
+
namespace TBF.BenchControl.Generic
{
public interface ITestParams
{
- void UpdateTestParams(string componentName, Config.Entities.Test test);
- Config.Entities.ComponentTest ToDbEntity(string componentName, Config.Entities.Test test);
+ void UpdateFromDbEntity(ComponentTest dbEntity);
+ void FromDbEntity(string componentName, Test test);
+ ComponentTest ToDbEntity(string componentName, Test test);
}
}
diff --git a/TBF/BenchControl/Modbus/Easytherm/EasythermCfg.cs b/TBF/BenchControl/Modbus/Easytherm/EasythermCfg.cs
index 40b4eedd5..536bb3294 100644
--- a/TBF/BenchControl/Modbus/Easytherm/EasythermCfg.cs
+++ b/TBF/BenchControl/Modbus/Easytherm/EasythermCfg.cs
@@ -11,7 +11,7 @@ namespace TBF.BenchControl.Modbus.Easytherm
public class EasythermCfg : ComponentCfgBase, Generic.IChildComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(EasythermCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new EasythermCfgCtrl(); }
@@ -25,13 +25,8 @@ namespace TBF.BenchControl.Modbus.Easytherm
/// Procedure parameters
[XmlIgnore]
public ProcParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcParams procParams = new ProcParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
@@ -40,7 +35,7 @@ namespace TBF.BenchControl.Modbus.Easytherm
Name = "Easytherm";
ParentName = "Modbus";
ModbusAddress = 49;
- ProcParams = new ProcParams(true);
+ ProcParams = CreateProcParamsProvider() as ProcParams;
}
public EasythermCfg(IComponentFactory factory)
diff --git a/TBF/BenchControl/Modbus/Easytherm/ProcParams.cs b/TBF/BenchControl/Modbus/Easytherm/ProcParams.cs
index a336069f3..f1cb74514 100644
--- a/TBF/BenchControl/Modbus/Easytherm/ProcParams.cs
+++ b/TBF/BenchControl/Modbus/Easytherm/ProcParams.cs
@@ -12,7 +12,7 @@ namespace TBF.BenchControl.Modbus.Easytherm
public class ProcParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float RequiredTemp; /// [°C] target temperature for a temperature controller or 0=not communicated to the controller
@@ -99,7 +99,7 @@ namespace TBF.BenchControl.Modbus.Easytherm
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/Network/Camera/Roi/ProcedureParams.cs b/TBF/BenchControl/Network/Camera/Roi/ProcedureParams.cs
index 5259a9698..76207964f 100644
--- a/TBF/BenchControl/Network/Camera/Roi/ProcedureParams.cs
+++ b/TBF/BenchControl/Network/Camera/Roi/ProcedureParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.Network.Camera.Roi
public class ProcedureParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcedureParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public double PulsesPerLtr; /// [l^-1]
public int DetectionImagesCount;
@@ -113,7 +113,7 @@ namespace TBF.BenchControl.Network.Camera.Roi
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/Network/Camera/Roi/RoiCfg.cs b/TBF/BenchControl/Network/Camera/Roi/RoiCfg.cs
index d642e90a7..46cbe0935 100644
--- a/TBF/BenchControl/Network/Camera/Roi/RoiCfg.cs
+++ b/TBF/BenchControl/Network/Camera/Roi/RoiCfg.cs
@@ -28,13 +28,8 @@ namespace TBF.BenchControl.Network.Camera.Roi
/// Procedure parameters
[XmlIgnore]
public ProcedureParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcedureParams procParams = new ProcedureParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcedureParams(true); }
public int DetectionImagesCount { get { return ProcParams.DetectionImagesCount; } }
public int DetectionPeriod1 { get { return ProcParams.DetectionPeriod1; } }
@@ -45,7 +40,7 @@ namespace TBF.BenchControl.Network.Camera.Roi
/// Private parameterless constructor invoked by all other (public) constructors
RoiCfg()
{
- ProcParams = new ProcedureParams(true);
+ ProcParams = new ProcedureParams(true);
}
public RoiCfg(string name, IComponentFactory factory)
diff --git a/TBF/BenchControl/Network/Camera/RoiForFixedStart/ProcedureParams.cs b/TBF/BenchControl/Network/Camera/RoiForFixedStart/ProcedureParams.cs
index 08d874bc6..b958f0823 100644
--- a/TBF/BenchControl/Network/Camera/RoiForFixedStart/ProcedureParams.cs
+++ b/TBF/BenchControl/Network/Camera/RoiForFixedStart/ProcedureParams.cs
@@ -12,7 +12,7 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart
public class ProcedureParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcedureParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public double PulsesPerLtr; /// [l^-1]
@@ -79,7 +79,7 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/Network/Camera/RoiForFixedStart/RoiCfg.cs b/TBF/BenchControl/Network/Camera/RoiForFixedStart/RoiCfg.cs
index e1df56b55..4fd82d3e2 100644
--- a/TBF/BenchControl/Network/Camera/RoiForFixedStart/RoiCfg.cs
+++ b/TBF/BenchControl/Network/Camera/RoiForFixedStart/RoiCfg.cs
@@ -10,7 +10,7 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart
public class RoiCfg : ComponentCfgBase, IChildComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RoiCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new RoiCfgCtrl(); }
@@ -24,19 +24,14 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart
/// Procedure parameters
[XmlIgnore]
public ProcedureParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcedureParams procParams = new ProcedureParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcedureParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
RoiCfg()
{
- ProcParams = new ProcedureParams(true);
- }
+ ProcParams = new ProcedureParams(true);
+ }
public RoiCfg(string name, IComponentFactory factory)
: this()
diff --git a/TBF/BenchControl/ProcedureParamsBase.cs b/TBF/BenchControl/ProcedureParamsBase.cs
index 91a61103a..9eec109f2 100644
--- a/TBF/BenchControl/ProcedureParamsBase.cs
+++ b/TBF/BenchControl/ProcedureParamsBase.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl
{
protected ComponentProcedure procedureParamsEntity;
- protected virtual XmlSerializer GetSerializer() { return new XmlSerializer(GetType()); }
+ public virtual XmlSerializer GetSerializer() { return new XmlSerializer(GetType()); }
public string ComponentName { get { return componentName; } }
protected string componentName;
@@ -36,46 +36,37 @@ namespace TBF.BenchControl
}
/// To be overridden
- public virtual void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public virtual void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
}
- public void UpdateProcedureParams(string cmpntName, Procedure procedure)
+ public void FromDbEntity(string cmpntName, Procedure procedure)
{
- /// Search for an existing matching entity
- foreach (var procPrms in procedure.MoreParams)
- {
- if (procPrms.CmpntName.Equals(cmpntName))
- {
- UpdateProcedureParams(procPrms);
- return;
- }
- }
+ ComponentProcedure componentProc = procedure.GetProcedureParamsEntity(cmpntName);
+ if (componentProc != null)
+ {
+ UpdateFromDbEntity(componentProc);
+ return;
+ }
/// Create a new entity and add it to the list test.MoreParams
this.procedureParamsEntity = this.ToDbEntity(cmpntName, procedure);
- this.procedure = procedure;
+ this.procedureParamsEntity.SetParamsProvider(this as IParamsProvider);
+ this.procedure = procedure;
this.componentName = cmpntName;
procedure.MoreParams.Add(procedureParamsEntity);
}
- public ComponentProcedure ToDbEntity(string componentName, Procedure procedure)
+ public ComponentProcedure ToDbEntity(string cmpntName, Procedure procedure)
{
using (var writer = new StringWriter())
{
- /// Serialize this class with parameters
- GetSerializer().Serialize(writer, this);
-
- /// Create and return the ComponentProcedure entity
- ComponentProcedure entity = new ComponentProcedure();
- entity.CmpntName = componentName;
- entity.Parameters = writer.ToString();
- entity.Procedure = procedure;
- return entity;
+ GetSerializer().Serialize(writer, this); /// Serialize this class with parameters
+ return new ComponentProcedure(cmpntName, writer.ToString(), procedure); /// Return new ComponentProcedure entity
}
}
- public void UpdateDbEntity()
+ public void UpdateEmbeddedDbEntity()
{
using (var writer = new StringWriter())
{
diff --git a/TBF/BenchControl/Sequences/MainSeq.cs b/TBF/BenchControl/Sequences/MainSeq.cs
index 8ae2d8f0c..86a1053f5 100644
--- a/TBF/BenchControl/Sequences/MainSeq.cs
+++ b/TBF/BenchControl/Sequences/MainSeq.cs
@@ -1478,7 +1478,7 @@ namespace TBF.BenchControl.Sequences
Generic.IComponent testMethodComp = TbfComponents.FindComponent(test.Method);
if (testMethodComp == null) break;
- testMethodComp.Cfg.UpdateTestParams(test);
+ testMethodComp.Cfg.LoadTestParamsFromDB(test);
ISimultTestMethod simultTest = testMethodComp as ISimultTestMethod;
MetersPath sensPath = StateMachine.GetMetersPath(test);
@@ -1495,7 +1495,7 @@ namespace TBF.BenchControl.Sequences
}
simultWithPurgingTests.Add(test);
- simultWithPurgingParams.Add(testMethodComp.Cfg.GetTestParams().Clone() as Generic.ITestParams);
+ simultWithPurgingParams.Add(testMethodComp.Cfg.GetRuntimeTestParamsProvider().Clone() as Generic.ITestParams);
simultWithPurgingCount++;
}
@@ -1514,7 +1514,7 @@ namespace TBF.BenchControl.Sequences
Generic.IComponent testMethodComp = TbfComponents.FindComponent(test.Method);
if (testMethodComp == null) break;
- testMethodComp.Cfg.UpdateTestParams(test);
+ testMethodComp.Cfg.LoadTestParamsFromDB(test);
ISimultTestMethod simultTest = testMethodComp as ISimultTestMethod;
MetersPath sensPath = StateMachine.GetMetersPath(test);
@@ -1531,7 +1531,7 @@ namespace TBF.BenchControl.Sequences
}
simultWithEvacuationTests.Insert(0, test);
- simultWithEvacuationParams.Insert(0, testMethodComp.Cfg.GetTestParams().Clone() as Generic.ITestParams);
+ simultWithEvacuationParams.Insert(0, testMethodComp.Cfg.GetRuntimeTestParamsProvider().Clone() as Generic.ITestParams);
simultWithEvacuationCount++;
}
}
diff --git a/TBF/BenchControl/StateMachine.cs b/TBF/BenchControl/StateMachine.cs
index 6ec0821e6..7b2d36918 100644
--- a/TBF/BenchControl/StateMachine.cs
+++ b/TBF/BenchControl/StateMachine.cs
@@ -415,7 +415,7 @@ namespace TBF.BenchControl
{
foreach (var cmpnt in components)
{
- cmpnt.Cfg.UpdateProcedureParams(procedure);
+ cmpnt.Cfg.LoadProcedureParamsFromDB(procedure);
}
}
@@ -423,7 +423,7 @@ namespace TBF.BenchControl
{
foreach (var cmpnt in components)
{
- cmpnt.Cfg.UpdateTestParams(test);
+ cmpnt.Cfg.LoadTestParamsFromDB(test);
}
}
diff --git a/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetTestParams.cs b/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetTestParams.cs
index c593f8b8f..841c7f3a1 100644
--- a/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetTestParams.cs
+++ b/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetTestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.CombinedWithDetection
public class CombinedWithDetTestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(CombinedWithDetTestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float TargetQ; /// Target=terminal flow durning detection when increasing or decreasing the flow
public float RelativeQfrom; /// Tested flow low range related to the detected flow
@@ -119,7 +119,7 @@ namespace TBF.BenchControl.TestMethods.CombinedWithDetection
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/CombinedWithDetection/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/CombinedWithDetection/TestMethodCfg.cs
index 950e44fb9..1e143d6e6 100644
--- a/TBF/BenchControl/TestMethods/CombinedWithDetection/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/CombinedWithDetection/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.CombinedWithDetection
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public CombinedWithDetTestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- CombinedWithDetTestParams testParams = new CombinedWithDetTestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new CombinedWithDetTestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/Endurance/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/Endurance/TestMethodCfg.cs
index ec6b24849..9943bef16 100644
--- a/TBF/BenchControl/TestMethods/Endurance/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/Endurance/TestMethodCfg.cs
@@ -23,16 +23,11 @@ namespace TBF.BenchControl.TestMethods.Endurance
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
#endif
- /// Private parameterless constructor invoked by all other (public) constructors
+ /// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
{
#if false
diff --git a/TBF/BenchControl/TestMethods/Endurance/TestParams.cs b/TBF/BenchControl/TestMethods/Endurance/TestParams.cs
index 1812c4cbb..6c413eb3d 100644
--- a/TBF/BenchControl/TestMethods/Endurance/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/Endurance/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.Endurance
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public bool BooleanParam; /// Main meter readings are ignored during test (suitable for small flows)
@@ -79,7 +79,7 @@ namespace TBF.BenchControl.TestMethods.Endurance
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestMethodCfg.cs
index 0e09bf249..0f127bc92 100644
--- a/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FixedStart.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestParams.cs
index 71f395fe9..6e89110b9 100644
--- a/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FixedStart/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FixedStart.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float ErrorLimitLo; /// [%]
public float ErrorLimitHi; /// [%]
@@ -157,7 +157,7 @@ namespace TBF.BenchControl.TestMethods.FixedStart.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestMethodCfg.cs
index b2074dddb..c515ff0ea 100644
--- a/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FixedStartDeferredEvaluation.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
- public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public TestParams TestParams; /// Created in constructor
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestParams.cs
index 062949953..6ce952681 100644
--- a/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FixedStartDeferredEvaluation/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FixedStartDeferredEvaluation.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float ErrorLimitLo; /// [%]
public float ErrorLimitHi; /// [%]
@@ -157,7 +157,7 @@ namespace TBF.BenchControl.TestMethods.FixedStartDeferredEvaluation.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestMethodCfg.cs
index d2b8521f0..edf986140 100644
--- a/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestParams.cs
index b82e7597a..fd586b425 100644
--- a/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FixedStartMassCollection/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float ErrorLimitLo; /// [%]
public float ErrorLimitHi; /// [%]
@@ -157,7 +157,7 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestMethodCfg.cs
index 3d146600e..232c8d3d4 100644
--- a/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.Compound
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestParams.cs
index efd470f66..87fa2f663 100644
--- a/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStart/Compound/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.Compound
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public bool SupressTrills; /// Main meter readings are ignored during test (suitable for small flows)
@@ -79,7 +79,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.Compound
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestMethodCfg.cs
index 528aeb9ad..070ab2d3b 100644
--- a/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestParams.cs
index c8e169267..39ff98ab8 100644
--- a/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStart/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float ErrorLimitLo; /// [%]
public float ErrorLimitHi; /// [%]
@@ -157,7 +157,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestMethodCfg.cs
index 1e836bcea..8cec583fa 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Compoun
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestParams.cs
index 7c952b18b..a95e107d0 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Compound/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Compoun
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float NextTestVolume;
public bool SupressTrills; /// Main meter readings are ignored during test (suitable for small flows)
@@ -89,7 +89,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Compoun
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestMethodCfg.cs
index a7d44c170..9fc56900c 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.HeatMet
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestParams.cs
index 2805bfda4..3a48ffaf1 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.HeatMet
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float NextTestVolume; /// [l]
public float ErrorLimitLo; /// [%]
@@ -166,7 +166,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.HeatMet
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestMethodCfg.cs
index 156ad5d91..d03f4ab99 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Single
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestParams.cs
index 421e236ae..0c392a523 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/Single/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Single
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float NextTestVolume; /// [l]
@@ -80,7 +80,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl.Single
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestMethodCfg.cs
index ed9820ffc..c04a7962c 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Compound
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestParams.cs
index e3f4bc3ef..e83870a14 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Compound/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Compound
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float VolumeToTank;
public bool SupressTrills; /// Main meter readings are ignored during test (suitable for small flows)
@@ -89,7 +89,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Compound
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestMethodCfg.cs
index c46d4a4a9..3ffb4b477 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestParams.cs
index 1b9ebc3ba..4fc179911 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float VolumeToTank; /// [l]
public float ErrorLimitLo; /// [%]
@@ -166,7 +166,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestMethodCfg.cs
index 3417d042d..d362d8ca8 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Single
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestParams.cs
index c3a4641fc..9012edcf5 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/Single/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Single
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float VolumeToTank; /// [l]
@@ -80,7 +80,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged.Single
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/CombinedTestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/CombinedTestParams.cs
index 2cefe370f..b9ed446af 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/CombinedTestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/CombinedTestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.Compound
public class CombinedTestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(CombinedTestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public bool SupressTrills; /// Main meter readings are ignored during test (suitable for small flows)
@@ -79,7 +79,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.Compound
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/TestMethodCfg.cs
index adbf93d64..d211071d5 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/Compound/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.Compound
public class TestMethodCfg : ComponentCfgBase, IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public CombinedTestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- CombinedTestParams testParams = new CombinedTestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new CombinedTestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestMethodCfg.cs
index 93f1089c8..92b0dd8ff 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.HeatMeters
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams testParams = new TestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestParams.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestParams.cs
index 6b0ddb0c4..14c4ae946 100644
--- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestParams.cs
+++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/HeatMeters/TestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.HeatMeters
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float ErrorLimitLo; /// [%]
public float ErrorLimitHi; /// [%]
@@ -157,7 +157,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection.HeatMeters
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/LeakTest/LeakTestParams.cs b/TBF/BenchControl/TestMethods/LeakTest/LeakTestParams.cs
index aa3a78d4d..abbfc53f2 100644
--- a/TBF/BenchControl/TestMethods/LeakTest/LeakTestParams.cs
+++ b/TBF/BenchControl/TestMethods/LeakTest/LeakTestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.LeakTest
public class LeakTestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(LeakTestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float PressureLo; /// Presure range low limit in [bar]
public float PressureHi; /// Presure range high limit in [bar]
@@ -104,7 +104,7 @@ namespace TBF.BenchControl.TestMethods.LeakTest
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/LeakTest/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/LeakTest/TestMethodCfg.cs
index 4be035ccb..64ec09d57 100644
--- a/TBF/BenchControl/TestMethods/LeakTest/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/LeakTest/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.LeakTest
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public LeakTestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- LeakTestParams testParams = new LeakTestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new LeakTestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/PMaxTest/PMaxTestParams.cs b/TBF/BenchControl/TestMethods/PMaxTest/PMaxTestParams.cs
index 40f11afa6..ec92a5a63 100644
--- a/TBF/BenchControl/TestMethods/PMaxTest/PMaxTestParams.cs
+++ b/TBF/BenchControl/TestMethods/PMaxTest/PMaxTestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.PMaxTest
public class PMaxTestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(PMaxTestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float PressureLo; /// Presure range low limit in [bar]
public float PressureHi; /// Presure range high limit in [bar]
@@ -97,7 +97,7 @@ namespace TBF.BenchControl.TestMethods.PMaxTest
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/PMaxTest/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/PMaxTest/TestMethodCfg.cs
index 83e35b3a5..4c267d699 100644
--- a/TBF/BenchControl/TestMethods/PMaxTest/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/PMaxTest/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.PMaxTest
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public PMaxTestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- PMaxTestParams testParams = new PMaxTestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new PMaxTestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestParams.cs b/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestParams.cs
index dce1f0337..72afeed5e 100644
--- a/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestParams.cs
+++ b/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest
public class SensitivityTestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(SensitivityTestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public float TargetQ; /// Target=terminal flow durning detection when increasing or decreasing the flow
public float RateOfChange; /// Each step is calculated as (TargetQfrom - Qfrom) * RateOfChange, text form is displayed in % (*100)
@@ -103,7 +103,7 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/SensitivityTest/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/SensitivityTest/TestMethodCfg.cs
index 889f999bb..86facb2f4 100644
--- a/TBF/BenchControl/TestMethods/SensitivityTest/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/SensitivityTest/TestMethodCfg.cs
@@ -13,20 +13,15 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
/// Test parameters
[XmlIgnore]
public SensitivityTestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- SensitivityTestParams testParams = new SensitivityTestParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new SensitivityTestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/TestMethodCfg.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/TestMethodCfg.cs
index 8ba2f0219..b1b477856 100644
--- a/TBF/BenchControl/TestMethods/iPerlCommunication/TestMethodCfg.cs
+++ b/TBF/BenchControl/TestMethods/iPerlCommunication/TestMethodCfg.cs
@@ -13,7 +13,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication
public class TestMethodCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestMethodCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new TestMethodCfgCtrl(); }
@@ -33,13 +33,9 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication
/// Test parameters
[XmlIgnore]
public iPerlCommunicationParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- iPerlCommunicationParams testParams = new iPerlCommunicationParams(true);
- testParams.UpdateTestParams(Name, test);
- return testParams;
- }
+
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new iPerlCommunicationParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
TestMethodCfg()
@@ -55,7 +51,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication
RfidPortNrBoard1 = 53;
RfidPortNrBoard1 = 54;
- TestParams = new iPerlCommunicationParams(true);
+ TestParams = CreateTestParamsProvider() as iPerlCommunicationParams;
}
public TestMethodCfg(IComponentFactory factory)
diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationParams.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationParams.cs
index abdc8f920..dc39151f8 100644
--- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationParams.cs
+++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication
public class iPerlCommunicationParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(iPerlCommunicationParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public string Activity; /// Communication activity
public bool SimultWithPrevious;
@@ -94,7 +94,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHeadCfg.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHeadCfg.cs
index 2989bf93c..144c1b0d3 100644
--- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHeadCfg.cs
+++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHeadCfg.cs
@@ -16,7 +16,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
public class IperlHeadCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(IperlHeadCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new IperlHeadCfgCtrl(); }
@@ -34,13 +34,8 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
/// Procedure parameters
[XmlIgnore]
public ProcParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcParams procParams = new ProcParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcParams(true); }
[XmlIgnore]
public MeterType MeterType { get { return (ProcParams != null) ? ProcParams.MeterType : MeterType.AutoDetect; } }
@@ -54,8 +49,8 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
OptoComPortNr = 10;
RfidComPortNr = 0; /// = use mux. board
MuxBoardNr = 1;
- ProcParams = new ProcParams(true);
- }
+ ProcParams = CreateProcParamsProvider() as ProcParams;
+ }
public IperlHeadCfg(IComponentFactory factory)
: this()
diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/ProcParams.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/ProcParams.cs
index e7c410012..1663ed5d2 100644
--- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/ProcParams.cs
+++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/ProcParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
public class ProcParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public MeterType MeterType;
public float CalibTarget; /// Target error after calibration in [%]
@@ -143,7 +143,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/TestParamsBase.cs b/TBF/BenchControl/TestParamsBase.cs
index afebe1556..642eae5e9 100644
--- a/TBF/BenchControl/TestParamsBase.cs
+++ b/TBF/BenchControl/TestParamsBase.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl
{
protected ComponentTest testParamsEntity;
- protected virtual XmlSerializer GetSerializer() { return new XmlSerializer(GetType()); }
+ public virtual XmlSerializer GetSerializer() { return new XmlSerializer(GetType()); }
public string ComponentName { get { return componentName; } }
protected string componentName;
@@ -36,47 +36,38 @@ namespace TBF.BenchControl
}
/// To be overridden
- public virtual void UpdateTestParams(ComponentTest dbEntity)
+ public virtual void UpdateFromDbEntity(ComponentTest dbEntity)
{
}
- public void UpdateTestParams(string cmpntName, Test test)
+ public void FromDbEntity(string cmpntName, Test test)
{
- /// Search for an existing matching entity
- foreach (var tstPrms in test.MoreParams)
+ ComponentTest componentTest = test.GetTestParamsEntity(cmpntName);
+ if (componentTest != null)
{
- if (tstPrms.CmpntName.Equals(cmpntName))
- {
- UpdateTestParams(tstPrms);
- return;
- }
+ UpdateFromDbEntity(componentTest);
+ return;
}
/// Create a new entity and add it to the list test.MoreParams
InitializeAll();
this.testParamsEntity = this.ToDbEntity(cmpntName, test);
+ this.testParamsEntity.SetParamsProvider(this as IParamsProvider);
this.test = test;
this.componentName = cmpntName;
test.MoreParams.Add(testParamsEntity);
}
- public ComponentTest ToDbEntity(string componentName, Test test)
+ public ComponentTest ToDbEntity(string cmpntName, Test test)
{
using (var writer = new StringWriter())
{
- /// Serialize this class with parameters
- GetSerializer().Serialize(writer, this);
-
- /// Create and return the ComponentTest entity
- ComponentTest entity = new ComponentTest();
- entity.CmpntName = componentName;
- entity.Parameters = writer.ToString();
- entity.Test = test;
- return entity;
+ GetSerializer().Serialize(writer, this); /// Serialize this class with parameters
+ return new ComponentTest(cmpntName, writer.ToString(), test); /// Return new ComponentTest entity
}
}
- public void UpdateDbEntity()
+ public void UpdateEmbeddedDbEntity()
{
using (var writer = new StringWriter())
{
diff --git a/TBF/BenchControl/Various/ErrorFlags/ErrorsCfg.cs b/TBF/BenchControl/Various/ErrorFlags/ErrorsCfg.cs
index 09211f023..44ec74464 100644
--- a/TBF/BenchControl/Various/ErrorFlags/ErrorsCfg.cs
+++ b/TBF/BenchControl/Various/ErrorFlags/ErrorsCfg.cs
@@ -10,7 +10,7 @@ namespace TBF.BenchControl.Various.ErrorFlags
public class ErrorsCfg : ComponentCfgBase, IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ErrorsCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new ErrorsCfgCtrl(); }
@@ -24,13 +24,8 @@ namespace TBF.BenchControl.Various.ErrorFlags
/// Test parameters
[XmlIgnore]
public TestParams TestParams;
- public override IParamsProvider GetTestParams() { return TestParams; }
- public override IParamsProvider CreateTestParams(Test test)
- {
- TestParams procParams = new TestParams(true);
- procParams.UpdateTestParams(Name, test);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeTestParamsProvider() { return TestParams; }
+ public override IParamsProvider CreateTestParamsProvider() { return new TestParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
ErrorsCfg()
diff --git a/TBF/BenchControl/Various/ErrorFlags/TestParams.cs b/TBF/BenchControl/Various/ErrorFlags/TestParams.cs
index ceb002206..1b96b47d7 100644
--- a/TBF/BenchControl/Various/ErrorFlags/TestParams.cs
+++ b/TBF/BenchControl/Various/ErrorFlags/TestParams.cs
@@ -12,7 +12,7 @@ namespace TBF.BenchControl.Various.ErrorFlags
public class TestParams : TestParamsBase, IParamsProvider, ITestParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(TestParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public ErrorFlagsMode Mode; /// 0 = Off, 1 = Info (show only), 2 = On (show and evaluate)
public bool E1;
@@ -338,7 +338,7 @@ namespace TBF.BenchControl.Various.ErrorFlags
return pars;
}
- public override void UpdateTestParams(ComponentTest dbEntity)
+ public override void UpdateFromDbEntity(ComponentTest dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/WaterMeters/Munich/ProcParams.cs b/TBF/BenchControl/WaterMeters/Munich/ProcParams.cs
index a814ee20e..50bfa889b 100644
--- a/TBF/BenchControl/WaterMeters/Munich/ProcParams.cs
+++ b/TBF/BenchControl/WaterMeters/Munich/ProcParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.WaterMeters.Munich
public class ProcParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public string ProductName; /// Znak fabryczny (PL)
public string Producer; /// Producent (PL), Hersteller (D)
@@ -164,7 +164,7 @@ namespace TBF.BenchControl.WaterMeters.Munich
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/WaterMeters/Munich/WaterMeterCfg.cs b/TBF/BenchControl/WaterMeters/Munich/WaterMeterCfg.cs
index 7a48eb175..b179d1ac5 100644
--- a/TBF/BenchControl/WaterMeters/Munich/WaterMeterCfg.cs
+++ b/TBF/BenchControl/WaterMeters/Munich/WaterMeterCfg.cs
@@ -14,28 +14,23 @@ namespace TBF.BenchControl.WaterMeters.Munich
public class WaterMeterCfg : ComponentCfgBase, Generic.IComponentCfg
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(WaterMeterCfg) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ protected override XmlSerializer GetSerializer() { return Serializer; }
public IComponentCfgCtrl GetControl() { return new WaterMeterCfgCtrl(); }
/// Procedure parameters
[XmlIgnore]
public ProcParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcParams procParams = new ProcParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
WaterMeterCfg()
{
Name = "WM";
ParentName = string.Empty;
- ProcParams = new ProcParams(true);
- }
+ ProcParams = CreateProcParamsProvider() as ProcParams;
+ }
public WaterMeterCfg(IComponentFactory factory)
: this()
diff --git a/TBF/BenchControl/WaterMeters/WaterMeter/ProcParams.cs b/TBF/BenchControl/WaterMeters/WaterMeter/ProcParams.cs
index 3647f6b09..8bf69b8ed 100644
--- a/TBF/BenchControl/WaterMeters/WaterMeter/ProcParams.cs
+++ b/TBF/BenchControl/WaterMeters/WaterMeter/ProcParams.cs
@@ -14,7 +14,7 @@ namespace TBF.BenchControl.WaterMeters.WaterMeter
public class ProcParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
{
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(ProcParams) })[0];
- protected override XmlSerializer GetSerializer() { return Serializer; }
+ public override XmlSerializer GetSerializer() { return Serializer; }
public string ProductName; /// Znak fabryczny (PL)
@@ -305,7 +305,7 @@ namespace TBF.BenchControl.WaterMeters.WaterMeter
return pars;
}
- public override void UpdateProcedureParams(ComponentProcedure dbEntity)
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
{
if (dbEntity == null) return;
try
diff --git a/TBF/BenchControl/WaterMeters/WaterMeter/WaterMeterCfg.cs b/TBF/BenchControl/WaterMeters/WaterMeter/WaterMeterCfg.cs
index e846e93ab..715c91783 100644
--- a/TBF/BenchControl/WaterMeters/WaterMeter/WaterMeterCfg.cs
+++ b/TBF/BenchControl/WaterMeters/WaterMeter/WaterMeterCfg.cs
@@ -18,21 +18,16 @@ namespace TBF.BenchControl.WaterMeters.WaterMeter
/// Procedure parameters
[XmlIgnore]
public ProcParams ProcParams;
- public override IParamsProvider GetProcedureParams() { return ProcParams; }
- public override IParamsProvider CreateProcedureParams(Procedure procedure)
- {
- ProcParams procParams = new ProcParams(true);
- procParams.UpdateProcedureParams(Name, procedure);
- return procParams;
- }
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new ProcParams(true); }
/// Private parameterless constructor invoked by all other (public) constructors
WaterMeterCfg()
{
Name = "WM";
ParentName = string.Empty;
- ProcParams = new ProcParams(true);
- }
+ ProcParams = CreateProcParamsProvider() as ProcParams;
+ }
public WaterMeterCfg(IComponentFactory factory)
: this()
diff --git a/TBF/ProcedureDlg.cs b/TBF/ProcedureDlg.cs
index 9fd16abf0..5ba2a2d51 100644
--- a/TBF/ProcedureDlg.cs
+++ b/TBF/ProcedureDlg.cs
@@ -179,7 +179,7 @@ namespace TBF
/// Create a tab with a TestParamsCtrl control for each used test method
foreach (var method in UsedTestMethods)
{
- if (method.Cfg.GetTestParams() != null)
+ if (method.Cfg.GetRuntimeTestParamsProvider() != null)
{
TabPage nwTab = new TabPage(method.Cfg.Name);
TestParamsCtrl nwCtrl = new TestParamsCtrl(this, method, true);
@@ -192,7 +192,7 @@ namespace TBF
/// Create a control for another component with Test parameters which was not handled yet
foreach (var cmpnt in TbfComponents)
{
- if ((cmpnt.Cfg.GetTestParams() != null) && !(cmpnt is ITestMethod))
+ if ((cmpnt.Cfg.GetRuntimeTestParamsProvider() != null) && !(cmpnt is ITestMethod))
{
TabPage nwTab = new TabPage(cmpnt.Cfg.Name);
TestParamsCtrl nwCtrl = new TestParamsCtrl(this, cmpnt, true);
@@ -2136,7 +2136,7 @@ namespace TBF
DetectionPeriod2 = roiData.P2,
RoiParams = roiData.GetRoiParams()
};
- roiParams.UpdateProcedureParams(cmpnt.Name, LoadedProcedure);
+ roiParams.FromDbEntity(cmpnt.Name, LoadedProcedure);
}
}
}
diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs
index 0d674e837..970ad20b6 100644
--- a/TBF/Properties/AssemblyInfo.cs
+++ b/TBF/Properties/AssemblyInfo.cs
@@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number
// Revision
//
-[assembly: AssemblyVersion("2.18.890.0")]
-[assembly: AssemblyFileVersion("2.18.890.0")]
+[assembly: AssemblyVersion("2.18.891.0")]
+[assembly: AssemblyFileVersion("2.18.891.0")]
diff --git a/TBF/TBF.csproj b/TBF/TBF.csproj
index 0dcc819fa..3a0822c1b 100644
--- a/TBF/TBF.csproj
+++ b/TBF/TBF.csproj
@@ -1465,7 +1465,6 @@
-
diff --git a/TBF/UiControls/ProcedureParamsCtrl.cs b/TBF/UiControls/ProcedureParamsCtrl.cs
index 4b8b6877e..8a3370f20 100644
--- a/TBF/UiControls/ProcedureParamsCtrl.cs
+++ b/TBF/UiControls/ProcedureParamsCtrl.cs
@@ -4,6 +4,7 @@
using System;
using System.Collections.Generic;
using System.Windows.Forms;
+using Config.Entities;
using TBF.BenchControl.Generic;
using TBF.Resources;
@@ -67,19 +68,19 @@ namespace TBF.UiControls
foreach (var cmpnt in selectedCmpnts)
{
- if (cmpnt != null && (cmpnt.Cfg.GetProcedureParams() != null))
- {
- IParamsProvider procedureParams = cmpnt.Cfg.CreateProcedureParams(parent.LoadedProcedure);
- if (sampleToCreateHeader == null || procedureParams.ParamsCount() > sampleToCreateHeader.ParamsCount())
+ IParamsProvider procedureParams = null;
+
+ if (cmpnt != null)
+ {
+ procedureParams = cmpnt.Cfg.GetUIProcParamsProvider(parent.LoadedProcedure);
+ if ((sampleToCreateHeader == null) ||
+ ((procedureParams != null) && (procedureParams.ParamsCount() > sampleToCreateHeader.ParamsCount())))
{
sampleToCreateHeader = procedureParams;
}
- cmpntsParams.Add(procedureParams);
- }
- else
- {
- cmpntsParams.Add(null);
- }
+ }
+
+ cmpntsParams.Add(procedureParams);
}
if (sampleToCreateHeader != null)
@@ -189,7 +190,7 @@ namespace TBF.UiControls
foreach (ListViewItem lvi in listViewEx.Items)
{
- if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateDbEntity();
+ if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity();
}
}
}
diff --git a/TBF/UiControls/TestParamsCtrl.cs b/TBF/UiControls/TestParamsCtrl.cs
index b8078336e..8eeef1b75 100644
--- a/TBF/UiControls/TestParamsCtrl.cs
+++ b/TBF/UiControls/TestParamsCtrl.cs
@@ -92,28 +92,18 @@ namespace TBF.UiControls
IList GetTestParamsProviders(IList tests, out IParamsProvider sampleToCreateHeader)
{
- IList result = new List();
+ IList providers = new List();
sampleToCreateHeader = null;
/// For each test (with an appropriate method in case of ITestMethod-s)
foreach (var test in tests)
{
- if ((cmpnt.Cfg.GetTestParams() != null) &&
- (!(cmpnt is BenchControl.GenericDevices.ITestMethod) || (test.Method == cmpnt.Cfg.Name)))
- {
- /// Load ComponentTest entity or create it if it does not exist
- IParamsProvider testParams = cmpnt.Cfg.CreateTestParams(test);
- if (sampleToCreateHeader == null) sampleToCreateHeader = testParams;
- result.Add(testParams);
- }
- else
- {
- /// In case of ITestMethod: Insert null for a test without an appropriate method.
- result.Add(null);
- }
+ IParamsProvider testParams = cmpnt.Cfg.GetUITestParamsProvider(test);
+ if (sampleToCreateHeader == null) sampleToCreateHeader = testParams;
+ providers.Add(testParams);
}
- return result;
+ return providers;
}
private void listViewEx_SubItemClicked(object sender, Results.Forms.SubItemEventArgs e)
@@ -207,12 +197,17 @@ namespace TBF.UiControls
{
if (test.Method == cmpnt.Cfg.Name)
{
- ComponentTest entity = new ComponentTest();
- entity.CmpntName = test.Method;
- entity.Test = test;
- IParamsProvider testParams = cmpnt.Cfg.CreateTestParams(test); /// Load or create ComponentTest entity
- testParamsProviders.Add(testParams);
- DrawOne(testParams, test.Name);
+ IParamsProvider testParams = cmpnt.Cfg.CreateTestParamsProvider(); /// Load or create ComponentTest entity
+ if (testParams != null)
+ {
+ var writer = new System.IO.StringWriter();
+ testParams.GetSerializer().Serialize(writer, testParams); /// Serialize this class with parameters
+
+ ComponentTest entity = new ComponentTest(test.Method, writer.ToString(), test);
+ entity.SetParamsProvider(testParams);
+ testParamsProviders.Add(testParams);
+ }
+ DrawOne(testParams, test.Name);
}
else
{
@@ -227,7 +222,7 @@ namespace TBF.UiControls
foreach (ListViewItem lvi in listViewEx.Items)
{
- if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateDbEntity();
+ if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity();
}
}
}
diff --git a/TODO.txt b/TODO.txt
index ed3cd44d7..402bd69ca 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,3 +1,9 @@
+Igor
+- cerveny RV
+- testovanie citlivosti vodomera
+- zivotnostne: menit prietok 15 min.
+- diverter test (prietok 1x, vahy bud vzdy alebo 1x)
+
iPerl:
- neukladat process data pre UnknownPcbNr... vodomery