Files
DP44/Common/DTS.Common/.svn/pristine/d6/d69a6f0cf6ab6cdbc95173238dd908180164233f.svn-base

71 lines
2.9 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
using DTS.Common.Enums;
namespace DTS.Common.Interface.Sensors
{
/// <summary>
/// this interface describes the default properties and methods for a squib
/// It's intended to allow interaction with squib defaults
/// 13574 Design for Default squib config file settings
/// </summary>
public interface ISquibSettingDefaults
{
/// <summary>
/// gets/sets the squib tolerance low default
/// the low tolerance for squib resistance in ohms
/// this is the minimum resistance value for a valid squib load
/// </summary>
double ToleranceLowDefault { get; set; }
/// <summary>
/// gets/sets the squib tolerance high default
/// the high tolerance for squib resistance in ohms
/// this is the maximum resistance value for a valid squib load
/// </summary>
double ToleranceHighDefault { get; set; }
/// <summary>
/// gets/sets the squib output current default
/// the squib output current in amps
/// this is the current outputted by a squib in constant current
/// mode. It is only observed in constant current
/// </summary>
double OutputCurrentDefault { get; set; }
/// <summary>
/// gets/sets the squib measurement type default
/// the squib measurement type controls the alternate measurement type of
/// of a squib
/// </summary>
SquibMeasurementType MeasurementTypeDefault { get; set; }
/// <summary>
/// gets/sets the squib firemode default
/// the squib fire mode determines how the squib is fired
/// [cap discharge/constant current/ac discharge]
/// </summary>
SquibFireMode FireModeDefault { get; set; }
/// <summary>
/// gets/sets whether to limit squib output duration default
/// Limit duration allows for duration of output to be constrained
/// </summary>
bool LimitDurationDefault { get; set; }
/// <summary>
/// gets/sets the squib output duration in ms default
/// the squib fire duration is the amount of time to output current
/// It is only valid if the output is being limited
/// </summary>
double FireDurationMS { get; set; }
/// <summary>
/// gets/sets the delay before firing squib in ms default
/// the squib fire delay is the amount of time after a trigger is received
/// before output begins
/// </summary>
double FireDelayMS { get; set; }
/// <summary>
/// indicates whether the setting is valid or not
/// </summary>
/// <returns></returns>
bool Validate();
/// <summary>
/// indicates whether tolerance value is valid
/// </summary>
bool ToleranceValid { get; }
}
}