Files
DP44/Common/DTS.Common/.svn/pristine/3b/3b6f87e261d9a7674f46e38336cc656d529507ce.svn-base

130 lines
5.2 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
using System.Windows;
using DTS.Common.Base;
using DTS.Common.Enums;
using DTS.Common.Enums.TTS;
using DTS.Common.Interface.DataRecorders;
namespace DTS.Common.Interface.TestSetups.Imports.TTS.ReadFile
{
/// <summary>
/// represents a single record in a TTS Import
/// </summary>
public interface ITTSChannelRecord : IBaseClass
{
int ChannelNumber { get; set; }
string ChannelCode { get; set; }
string JCodeOrDescription { get; set; }
double ChannelRange { get; set; }
int ChannelFilterHz { get; set; }
string SensorEID { get; set; }
string SensorSerialNumber { get; set; }
double SensorSensitivity { get; set; }
double SensorExcitationVolts { get; set; }
double SensorCapacity { get; set; }
string SensorEU { get; set; }
bool SensorPolarity { get; set; }
ToyotaBridgeType ChannelType { get; set; }
string Description { get; set; }
bool ProportionalToExcitation { get; set; }
double BridgeResistance { get; set; }
double InitialOffsetVoltage { get; set; }
double InitialOffsetVoltageTolerance { get; set; }
bool RemoveOffset { get; set; }
ToyotaZeroMethods ZeroMethod { get; set; }
double CableMultiplier { get; set; }
double InitialEUInMV { get; set; }
double InitialEUInEU { get; set; }
double IRTraccExponent { get; set; }
double PolynomialConstant { get; set; }
double PolynomialCoefficientC { get; set; }
double PolynomialCoefficentB { get; set; }
double PolynomialCoefficientA { get; set; }
double PolynomialCoefficientAlpha { get; set; }
string ISOCode { get; set; }
string ISODescription { get; set; }
string ISOPolarity { get; set; }
bool IsSquib { get; set; }
bool IsDigitalInput { get; set; }
bool IsDigitalOutput { get; set; }
/// <summary>
/// returns true if the record is empty (no channel code and no sensor serial number)
/// </summary>
bool IsEmptyRecord { get; }
IHardwareChannel HardwareChannel { get; set; }
/// <summary>
/// returns whether the channelcode is valid or not
/// </summary>
bool IsChannelCodeValid { get; set; }
bool IsJCodeValid { get; set; }
bool IsRangeValid { get; set; }
bool IsFilterValid { get; set; }
/// <summary>
/// disabled channels are channels which are in the test setup, but aren't used during run test
/// </summary>
bool Disabled { get; set; }
/// <summary>
/// for squibs, what firemode to use
/// </summary>
SquibFireMode SquibFireMode { get; set; }
/// <summary>
/// the delay in ms between trigger and squib fire
/// </summary>
double SquibFireDelayMs { get; set; }
/// <summary>
/// whether to limit the duration or not of squib fire
/// </summary>
bool LimitDuration { get; set; }
/// <summary>
/// the duration of the squib fire in ms from the start of firing
/// (if limiting duration)
/// </summary>
double SquibFireDurationMs { get; set; }
/// <summary>
/// the limit for current (amps)
/// </summary>
double SquibFireCurrent { get; set; }
/// <summary>
/// the squib resistance tolerance low value (ohms)
/// </summary>
double SquibFireResistanceLowOhm { get; set; }
/// <summary>
/// the squib resistance tolerance high value (ohms)
/// </summary>
double SquibFireResistanceHighOhm { get; set; }
/// <summary>
/// the digital input mode (if relevant)
/// </summary>
DigitalInputModes DigitalInputMode { get; set; }
/// <summary>
/// the digital output mode (if relevant)
/// </summary>
DigitalOutputModes DigitalOutputMode { get; set; }
/// <summary>
/// the delay between trigger and output (if relevant)
/// </summary>
double DigitalOutputDelay { get; set; }
/// <summary>
/// the duration of output after output started (if relevant)
/// </summary>
double DigitalOutputDuration { get; set; }
IEditFileViewModel Parent { get; set; }
//bool ValidationNeeded { get; set; }
ITTSChannelRecord Copy();
Visibility RangeVisible { get; }
Visibility FilterVisible { get; }
bool OriginallyRequestedChannel { get; set; }
/// <summary>
/// controls whether the channel should be marked as diagnostics mode or not
/// note that diagnostics mode is only used when the configuration supports diagnostics mode
/// even if the sensor has diagnosticsmode set to true
/// </summary>
bool DiagnosticsMode { get; set; }
bool IsModified { get; set; }
/// <summary>
/// returns an array of bytes to represent the channel, for use in CRC and hashing
/// </summary>
/// <returns>array of bytes representing the channel</returns>
byte[] GetBytes();
}
}