using System.Collections.Generic; using TBF.BenchControl.Generic; using TBF.Boxes; namespace TBF.BenchControl.GenericDevices { /// /// Basic balance functions /// public interface IBalance : IDevice, IComponent { /// /// Balance number: 0-based index required for communication with the Elde component /// int BalanceNr { get; } /// /// Balance water tank capacity in kg or ltr /// float Capacity { get; } /// /// Returns true if tank s empty, mass is less then some threshold /// bool IsEmpty(float mass); /// /// Time in seconds to empty the tank completely when it is full /// int EmptyTimeSec { get; } /// /// Measurement correction table /// IList Corrections { get; } /// /// Events: BalanceDone, Error /// /// Reference to a variable for 'tara' in kg /// TaringOp instance reference casted to IOperaton IOperation TaringOp(ref FloatBox tara); /// /// Events: BalanceDone, Error /// /// Reference to a variable for the measured mass in kg /// ReadMassOp instance reference casted to IOperaton IOperation ReadMassOp(ref FloatBox mass); /// /// Events: BalanceDone, Error /// /// Reference to a variable for the measured mass in kg /// Required mass readings count (>= 3) /// ReadMassAverageOp instance reference casted to IOperaton IOperation ReadStableMassOp(ref FloatBox mass, int readingsCount); } }