73 lines
1.8 KiB
C#
73 lines
1.8 KiB
C#
///
|
|
/// Copyright (c) 2013-2015 Sensus Metering Systems
|
|
///
|
|
using System.Collections.Generic;
|
|
|
|
namespace TBF.BenchControl.Generic
|
|
{
|
|
public interface IComponentCfg
|
|
{
|
|
/// <summary>
|
|
/// Unique component # (0 .. nr.of components-1)
|
|
/// </summary>
|
|
int ItemNr { get; set; }
|
|
|
|
/// <summary>
|
|
/// Component name
|
|
/// </summary>
|
|
string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// Reference to the component factory (it is a singleton)
|
|
/// </summary>
|
|
IComponentFactory Factory { get; set; }
|
|
|
|
/// <summary>
|
|
/// Component class / component type name
|
|
/// </summary>
|
|
string ParentName { get; set; }
|
|
|
|
/// <summary>
|
|
/// Debug level, 0 = debugging off
|
|
/// </summary>
|
|
Config.Entities.DebugMode DebugLevel { get; set; }
|
|
|
|
/// <summary>
|
|
/// Log level, 0 = logging off
|
|
/// </summary>
|
|
Config.Entities.LogLevel LogLevel { get; set; }
|
|
|
|
/// <summary>
|
|
/// Measurement correction values
|
|
/// </summary>
|
|
IList<Config.Entities.MeasurementCorrection> Corrections { get; set; }
|
|
|
|
/// <summary>
|
|
/// Creates a new database entity 'Component' from the parameters
|
|
/// </summary>
|
|
Config.Entities.Component CreateDbEntity();
|
|
|
|
///
|
|
/// Object instance factory-like methods
|
|
///
|
|
IComponent GetComponent(IList<IComponent> components);
|
|
IComponentCfgCtrl GetControl();
|
|
|
|
///
|
|
/// Procedure parameters provider support
|
|
///
|
|
IParamsProvider GetProcedureParams();
|
|
void UpdateProcedureParams(Config.Entities.Procedure procedure);
|
|
IParamsProvider CreateProcedureParams(Config.Entities.Procedure procedure);
|
|
|
|
///
|
|
/// Test parameters provider support
|
|
///
|
|
IParamsProvider GetTestParams();
|
|
void UpdateTestParams(Config.Entities.Test test);
|
|
IParamsProvider CreateTestParams(Config.Entities.Test test);
|
|
|
|
string ToString(int i);
|
|
}
|
|
}
|