48 lines
1.4 KiB
C#
48 lines
1.4 KiB
C#
using TBF.BenchControl.Generic;
|
|
|
|
namespace TBF.BenchControl.GenericDevices
|
|
{
|
|
public interface IValve : IComponent
|
|
{
|
|
/// <summary>
|
|
/// Valve state: true = open, false = closed
|
|
/// </summary>
|
|
bool State { get; }
|
|
|
|
/// <summary>
|
|
/// All, Feeding, Bench, Output or None
|
|
/// </summary>
|
|
ValveCategory Category { get; }
|
|
|
|
/// <summary>
|
|
/// Delay of the valve in [s] (open or close time, whichever is larger)
|
|
/// </summary>
|
|
int Delay { get; }
|
|
|
|
/// <summary>
|
|
/// Coupled valve or null.
|
|
/// This valve is a slave and follows the coupled valve, which is a master.
|
|
/// In case of CoupledValve == null, this valve can be independently controlled.
|
|
/// </summary>
|
|
IValve CoupledTo { get; }
|
|
|
|
/// <summary>
|
|
/// The coupled valve is inverted referred to the master valve.
|
|
/// This property is used only in case 'CoupledTo' is non-null.
|
|
/// </summary>
|
|
bool InvertCouple { get; }
|
|
|
|
/// <summary>
|
|
/// Delay (referred to the master valve) when opening this (coupled, slave) valve in [s]
|
|
/// This property is used only in case 'CoupledTo' is non-null.
|
|
/// </summary>
|
|
int LagOpening { get; }
|
|
|
|
/// <summary>
|
|
/// Delay (referred to the master valve) when opening this (coupled, slave) valve in [s]
|
|
/// This property is used only in case 'CoupledTo' is non-null.
|
|
/// </summary>
|
|
int LagClosing { get; }
|
|
}
|
|
}
|