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