/// /// Copyright (c) 2013-2015 Sensus Metering Systems /// using System; using System.Collections.Generic; using log4net; using TBF.BenchControl; namespace TBF.BenchControl.WaterMeters.WaterMeter { /// /// This component = instance of this class is a placeholder for a combined main watermeter /// public class WaterMeter : ComponentBase, GenericDevices.IWaterMeter { private static readonly ILog log = LogManager.GetLogger(typeof(WaterMeter)); public override string ToString() { return string.Format("WaterMeter({0})", Cfg.ToString(1)); } readonly WaterMeterCfg waterMeterCfg; /// WaterMeter producer public string ProductName { get { return waterMeterCfg.ProcParams.ProductName; } } /// WaterMeter producer public string Producer { get { return waterMeterCfg.ProcParams.Producer; } } /// Nominal water flow in [m3/h] public float Qn { get { return waterMeterCfg. ProcParams.Qn; } } /// Nominal water flow in [m3/h] public float Qt { get { return waterMeterCfg.ProcParams.Qt; } } /// Nominal water flow in [m3/h] public float Qmin { get { return waterMeterCfg.ProcParams.Qmin; } } /// Metrological class public string MetrologicalClass { get { return waterMeterCfg.ProcParams.MetrologicalClass; } } /// WaterMeter approval information or signature public string ApprovalInfo { get { return waterMeterCfg.ProcParams.ApprovalInfo; } } /// Water: cold / hot public Config.Entities.Medium WaterTemp { get { return waterMeterCfg.ProcParams.WaterTemp; } } /// Properties set by the Begin and the End form public string SerialNr { get { return serialNr; } set { serialNr = value; } } string serialNr; public string EndState { get { return endState; } set { endState = value; } } string endState; public string BeginState { get { return beginState; } set { beginState = value; } } string beginState; public bool Disabled { get { return disabled; } set { disabled = value; } } bool disabled; public WaterMeter() { ClearData(); } public WaterMeter(WaterMeterCfg cfg) : base(cfg) { ClearData(); waterMeterCfg = cfg; log.Debug(this.ToString()); } public void ClearData() { serialNr = string.Empty; endState = string.Empty; beginState = string.Empty; disabled = false; } } }