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 { /// /// represents a single record in a TTS Import /// 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; } /// /// returns true if the record is empty (no channel code and no sensor serial number) /// bool IsEmptyRecord { get; } IHardwareChannel HardwareChannel { get; set; } /// /// returns whether the channelcode is valid or not /// bool IsChannelCodeValid { get; set; } bool IsJCodeValid { get; set; } bool IsRangeValid { get; set; } bool IsFilterValid { get; set; } /// /// disabled channels are channels which are in the test setup, but aren't used during run test /// bool Disabled { get; set; } /// /// for squibs, what firemode to use /// SquibFireMode SquibFireMode { get; set; } /// /// the delay in ms between trigger and squib fire /// double SquibFireDelayMs { get; set; } /// /// whether to limit the duration or not of squib fire /// bool LimitDuration { get; set; } /// /// the duration of the squib fire in ms from the start of firing /// (if limiting duration) /// double SquibFireDurationMs { get; set; } /// /// the limit for current (amps) /// double SquibFireCurrent { get; set; } /// /// the squib resistance tolerance low value (ohms) /// double SquibFireResistanceLowOhm { get; set; } /// /// the squib resistance tolerance high value (ohms) /// double SquibFireResistanceHighOhm { get; set; } /// /// the digital input mode (if relevant) /// DigitalInputModes DigitalInputMode { get; set; } /// /// the digital output mode (if relevant) /// DigitalOutputModes DigitalOutputMode { get; set; } /// /// the delay between trigger and output (if relevant) /// double DigitalOutputDelay { get; set; } /// /// the duration of output after output started (if relevant) /// double DigitalOutputDuration { get; set; } IEditFileViewModel Parent { get; set; } //bool ValidationNeeded { get; set; } ITTSChannelRecord Copy(); Visibility RangeVisible { get; } Visibility FilterVisible { get; } bool OriginallyRequestedChannel { get; set; } /// /// 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 /// bool DiagnosticsMode { get; set; } bool IsModified { get; set; } /// /// returns an array of bytes to represent the channel, for use in CRC and hashing /// /// array of bytes representing the channel byte[] GetBytes(); } }