/// /// Copyright (c) 2013-2015 Sensus Metering Systems /// using System.Collections.Generic; using TBF.BenchControl.Generic; using TBF.Boxes; namespace TBF.BenchControl.GenericDevices { /// /// Basic flow meter functions /// public interface IFlowMeter : IComponent { /// /// Nominal flow in m3/h at the maximum (2kHz) output frequency. /// In case of a flowmeter couple, the sum of two nominal flows (reached at 4kHz of summed pulses). /// float NominalFlow { get; } /// /// Nominal (uncorrected) volume per flowmeter pulse in [l]. /// float LtrPerPulse { get; } /// /// Corrected volume per flowmeter pulse in [l]. /// /// Water flow in [m3/h] float LtrPerPulseCorrected(double flow); /// /// 1 based index of the reference flowmeter /// int Idx1 { get; } /// /// Measurement correction table /// IList Corrections { get; } /// /// Events: FlowDone, Error /// /// Reference to a variable for the measured flow in xxx /// ReadFlowOp instance reference casted to IOperaton IOperation ReadFlowOp(ref DoubleBox flow); /// /// Events: flowDone, Error /// /// Reference to a variable for the measured flow in xxx /// Event returned when measurement done /// ReadFlowOp instance reference casted to IOperaton IOperation ReadFlowOp(ref DoubleBox flow, Event flowDone); } }