/// /// Copyright (c) 2013-2015 Sensus Metering Systems /// using System; using System.Collections.Generic; using Dirichlet.Numerics; using TBF.Boxes; namespace TBF.Rig.GenericDevices { public interface IValveControl { /// /// /// /// Valves to be opened as a bit field /// Valves to be closed as a bit field /// List of extended valves /// UInt128 SetValves(UInt128 valvesToOpen, UInt128 valvesToClose, IList extendedValves); /// /// Open/close one valve. /// Events: ValvesSet, ValvesBusy, Error /// /// Valve to be opened /// Valve to be closed /// Newly created operation instance reference casted to IOperaton IOperation SetValvesOp(IValve valveToOpen, IValve valveToClose); /// /// Open/close multiple valves. /// Events: ValvesSet, ValvesBusy, Error /// /// A list of valves to be opened /// A list of valves to be closed /// Newly created operation instance reference casted to IOperaton IOperation SetValvesOp(IList valvesToOpen, IList valvesToClose); /// /// Open start/stop valve. /// Events: ValvesSet, ValvesBusy, Error /// /// Created operation IOperation OpenStartValveOp(); IOperation OpenStartValveOp(DateTimeBox openTimeStamp); /// /// Close start/stop valve. /// Events: ValvesSet, ValvesBusy, Error /// /// Created operation IOperation CloseStartValveOp(); IOperation CloseStartValveOp(DateTimeBox closeTimeStamp); } }