tbf/TBF/Rig/GenericDevices/IScale.cs
2021-06-18 15:35:46 +02:00

43 lines
1.5 KiB
C#

///
/// Copyright (c) 2013-2020 Sensus Slovensko a.s.
///
using TBF.Boxes;
namespace TBF.Rig.GenericDevices
{
/// <summary>
/// Scale with a water tank functions
/// </summary>
public interface IScale : IScaleOrTank
{
float BuoyancyTemp { get; } ///
float BuoyancyPress { get; } /// Displayed in Metrology tab page
float BuoyancyHumi { get; } ///
double Mass { get; }
/// <summary>
/// Events: BalanceDone, Error
/// </summary>
/// <returns>ZeroOp instance reference casted to IOperaton</returns>
IOperation ZeroOp();
/// <summary>
/// Events: BalanceDone, Timeout, Error
/// </summary>
/// <param name="result">Reference to a variable for the measured mass in kg</param>
/// <param name="readingsCount">Required mass readings count (>= 3)</param>
/// <param name="maxSpread">Maximum spread of measurements in kg (otherwise the measurement continues)</param>
/// <param name="method">Method: false = slow (precise), true = fast (immediate)</param>
/// <returns>ReadMassAverageOp instance reference casted to IOperaton</returns>
IOperation ReadStableMassOp(ref DoubleBox mass, int delayBefore, Common.MassMethod method, int readingsCount, double maxSpread);
/// <summary>
/// Events: Done, Error
/// </summary>
/// <param name="serialNumber">Reference to the serialNumber</param>
/// <returns>GetBalanceSerNumOp instance reference casted to IOperaton</returns>
IOperation GetSerNumOp(ref string serialNumber);
}
}