using System;
using System.ComponentModel;
using System.Windows.Media;
using DTS.Common.Base;
// ReSharper disable CheckNamespace
namespace DTS.Common.Interface
{
public interface ITestChannel : INotifyPropertyChanged
{
string Group { get; set; }
string SubGroup { get; set; }
bool IsGraphChannel { get; set; }
string GraphName { get; set; }
string TestId { get; set; }
string TestSetupName { get; set; }
string ModuleSerialNumber { get; set; }
string SerialNumber { get; set; }
string ChannelId { get; set; }
string ChannelDisplayName { get; set; }
string Description { get; set; }
string IsoCode { get; set; }
string IsoChannelName { get; set; }
string UserCode { get; set; }
string UserChannelName { get; set; }
string ChannelGroupName { get; set; }
string ChannelType { get; set; }
bool IsCalculatedChannel { get; set; }
int Number { get; set; }
string DigitalMultiplier { get; set; }
string DigitalMode { get; set; }
DateTime Start { get; set; }
string Bridge { get; set; }
double BridgeResistanceOhms { get; set; }
double ZeroPoint { get; set; }
string ChannelDescriptionString { get; set; }
void SetChannelDescriptionAndDisplayName(string channelDescriptionString);
string ChannelName2 { get; set; }
string HardwareChannelName { get; set; }
double DesiredRange { get; set; }
double ActualMaxRangeEu { get; set; }
double ActualMinRangeEu { get; set; }
double ActualMaxRangeAdc { get; }
double ActualMinRangeAdc { get; }
double ActualMaxRangeMv { get; set; }
double ActualMinRangeMv { get; set; }
double Sensitivity { get; set; }
string SoftwareFilter { get; set; }
bool ProportionalToExcitation { get; set; }
bool IsInverted { get; set; }
string LinearizationFormula { get; set; }
bool IsSubsampled { get; set; }
int AbsoluteDisplayOrder { get; set; }
DateTime LastCalibrationDate { get; set; }
string SensorId { get; set; }
int OffsetToleranceLowMv { get; set; }
int OffsetToleranceHighMv { get; set; }
int DataFlag { get; set; }
string ExcitationVoltage { get; set; }
string Eu { get; set; }
bool CalSignalEnabled { get; set; }
bool ShuntEnabled { get; set; }
bool VoltageInsertionCheckEnabled { get; set; }
bool RemoveOffset { get; set; }
string ZeroMethod { get; set; }
double ZeroAverageWindowBegin { get; set; }
double ZeroAverageWindowEnd { get; set; }
int InitialEu { get; set; }
string InitialOffset { get; set; }
int UnsubsampledSampleRateHz { get; set; }
double MeasuredShuntDeflectionMv { get; set; }
double TargetShuntDeflectionMv { get; set; }
double MeasuredExcitationVoltage { get; set; }
double FactoryExcitationVoltage { get; set; }
double TimeOfFirstSample { get; set; }
double Multiplier { get; set; }
double UserOffsetEu { get; set; }
int UnitConversion { get; set; }
bool AtCapacity { get; set; }
int CapacityOutputIsBasedOn { get; set; }
string SourceChannelNumber { get; set; }
string SourceModuleNumber { get; set; }
string SourceModuleSerialNumber { get; set; }
string Calculation { get; set; }
int SampleRateHz { get; set; }
string SensitivityUnits { get; set; }
int SensorCapacity { get; set; }
string SensorPolarity { get; set; }
int ChannelNumber { get; set; }
string BinaryFileName { get; set; }
string BinaryFilePath { get; set; }
double Xmax { get; set; }
double Xmin { get; set; }
int SequentialNumbers { get; set; }
ITestSetupMetadata ParentTestSetup { get; set; }
ITestModule ParentModule { get; set; }
IBaseViewModel Parent { get; set; }
Color ChannelColor { get; set; }
string ErrorMessage { get; set; }
bool IsError { get; set; }
Color? ErrorColor { get; set; }
bool IsSelected { get; set; }
bool CanSelectChannel { get; set; }
bool IsLocked { get; set; }
bool CanLock { get; set; }
ITestChannel Copy();
ulong T1Sample { get; set; }
ulong T2Sample { get; set; }
double HIC { get; set; }
bool UseEUScaler { get; set; }
double ScaleFactorEU { get; set; }
///
/// Min value of ADC for entire dataset
///
double MinADC { get; set; }
///
/// Max value in ADC for entire dataset
///
double MaxADC { get; set; }
///
/// Average value in ADC for entire dataset
///
double AveADC { get; set; }
///
/// STD DEV in ADC for entire dataset
///
double StdDevADC { get; set; }
///
/// Value @ T0 in ADC
///
double T0ADC { get; set; }
///
/// Minimum value in mV for entire dataset
///
double MinMV { get; set; }
///
/// Maximum value in mV for entire dataset
///
double MaxMV { get; set; }
///
/// average value in mV for entire dataset
///
double AveMV { get; set; }
///
/// std dev in mV for entire dataset
///
double StdDevMV { get; set; }
///
/// value in mV at T0
///
double T0MV { get; set; }
///
/// minimum value in EU for entire dataset
///
double MinEU { get; set; }
///
/// maximum value in EU for entire dataset
///
double MaxEU { get; set; }
///
/// average value in EU for entire dataset
///
double AveEU { get; set; }
///
/// std dev in EU
///
double StdDevEU { get; set; }
///
/// value at T0 in EU
///
double T0EU { get; set; }
///
/// minimum value for whatever current units are for entire dataset
///
double MinY { get; set; }
///
/// maximum value for whatever current units are for entire dataset
///
double MaxY { get; set; }
///
/// average value for whatever current units are for entire dataset
///
double AveY { get; set; }
///
/// std deviation for whatever current units are
///
double StdDevY { get; set; }
///
/// Value at T0 in whatever current units are
///
double T0Value { get; set; }
}
}