init
This commit is contained in:
201
Common/DTS.Common/Interface/Sensors/SensorsList/IAnalogSensor.cs
Normal file
201
Common/DTS.Common/Interface/Sensors/SensorsList/IAnalogSensor.cs
Normal file
@@ -0,0 +1,201 @@
|
||||
using DTS.Common.Enums.Sensors;
|
||||
using System;
|
||||
using DTS.Common.Enums;
|
||||
using DTS.Common.Classes.Sensors;
|
||||
using DTS.Common.Interface.Sensors.SoftwareFilters;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
/// <summary>
|
||||
/// this interface is used to describe objects used to represents sensors for UI purposes
|
||||
/// </summary>
|
||||
public interface IAnalogSensor
|
||||
{
|
||||
/// <summary>
|
||||
/// bridge mode of the sensor in question
|
||||
/// </summary>
|
||||
SensorConstants.BridgeType Bridge { get; set; }
|
||||
/// <summary>
|
||||
/// indicates if the sensor is Integrated Electronics Piezo-Electric (IEPE)
|
||||
/// </summary>
|
||||
bool IEPE { get; }
|
||||
/// <summary>
|
||||
/// id in the database if available
|
||||
/// only positive values are valid
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// used to indicate that the sensor should be checked if in a list
|
||||
/// with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// serial number of the sensor
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of the sensor
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
/// <summary>
|
||||
/// the maker of the sensor
|
||||
/// </summary>
|
||||
string Manufacturer { get; set; }
|
||||
/// <summary>
|
||||
/// the model of the sensor
|
||||
/// </summary>
|
||||
string Model { get; set; }
|
||||
/// <summary>
|
||||
/// the current capacity or desired range of the sensor in EU
|
||||
/// in general this value refers to maximum capacity, however
|
||||
/// in some contexts this can refer to desired range instead
|
||||
/// </summary>
|
||||
double Capacity { get; set; }
|
||||
/// <summary>
|
||||
/// an arbitrary EU value for range for the sensor
|
||||
/// </summary>
|
||||
double RangeHigh { get; set; }
|
||||
/// <summary>
|
||||
/// an arbitrary EU value for medium range for the sensor
|
||||
/// </summary>
|
||||
double RangeMedium { get; set; }
|
||||
/// <summary>
|
||||
/// an arbitrary EU value for the low range for the sensor
|
||||
/// </summary>
|
||||
double RangeLow { get; set; }
|
||||
/// <summary>
|
||||
/// a user display friendly string representation of the sensor's sensitivity
|
||||
/// this is suitable for tables and user display
|
||||
/// </summary>
|
||||
string Sensitivity { get; set; }
|
||||
/// <summary>
|
||||
/// in the case of dual sensitivity sensors, this is a string
|
||||
/// user friendly representation of the second calibration
|
||||
/// </summary>
|
||||
string AddedSensitivity { get; set; }
|
||||
/// <summary>
|
||||
/// resistance in ohms of the sensor
|
||||
/// </summary>
|
||||
double Resistance { get; set; }
|
||||
/// <summary>
|
||||
/// a user friendly representation of the supported excitations
|
||||
/// of the sensor
|
||||
/// </summary>
|
||||
string Excitation { get; set; }
|
||||
/// <summary>
|
||||
/// the engineering units of the sensor
|
||||
/// usually obtained from the most recent calibration
|
||||
/// </summary>
|
||||
string Units { get; set; }
|
||||
/// <summary>
|
||||
/// Electronic ID associated with the sensor, if any
|
||||
/// </summary>
|
||||
string EID { get; set; }
|
||||
/// <summary>
|
||||
/// the last (most recent) calibration date for the sensor
|
||||
/// </summary>
|
||||
DateTime CalDate { get; set; }
|
||||
/// <summary>
|
||||
/// the date the sensor is due for calibration
|
||||
/// </summary>
|
||||
DateTime CalDueDate { get; set; }
|
||||
/// <summary>
|
||||
/// the user that last modified the sensor or calibration
|
||||
/// </summary>
|
||||
string ModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// the date the sensor or calibration was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if the sensor matches the filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// used to indicate if the sensor has been assigned to a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// used to indicate if the sensor is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode associated with the sensor
|
||||
/// this is the default isocode for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the isochannel name associated with the sensor
|
||||
/// this is the default user channel name for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code associated with the sensor
|
||||
/// this is the default user code for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name associated with the sensor
|
||||
/// this is the default user channel name for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the channel filter class (CFC) associated with the sensor
|
||||
/// this is the default CFC for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
Enums.Sensors.FilterClassType CFC { get; set; }
|
||||
/// <summary>
|
||||
/// indicates whether the sensor output should be inverted or not
|
||||
/// this is the default polarity for the sensor when assigned to a new blank channel
|
||||
/// </summary>
|
||||
bool Polarity { get; set; }
|
||||
/// <summary>
|
||||
/// indicates what the type of nonlinear calculation is used for this sensor as a string
|
||||
/// </summary>
|
||||
string NonLinearCalculationType { get; set; }
|
||||
/// <summary>
|
||||
/// indicates what the type of nonlinear calculation is used for this sensor, as an enum
|
||||
/// </summary>
|
||||
NonLinearStyles NonLinearCalculationTypeEnum { get; set; }
|
||||
/// <summary>
|
||||
/// indicates what the type of software zero method is used for this sensor
|
||||
/// </summary>
|
||||
Enums.Sensors.ZeroMethodType ZeroMethod { get; set; }
|
||||
/// <summary>
|
||||
/// If ZeroMethod is Average over Time, indicates the start time
|
||||
/// </summary>
|
||||
double ZeroMethodStart { get; set; }
|
||||
/// <summary>
|
||||
/// If ZeroMethod is Average over Time, indicates the end time
|
||||
/// </summary>
|
||||
double ZeroMethodEnd { get; set; }
|
||||
string UserValue1 { get; set; }
|
||||
string UserValue2 { get; set; }
|
||||
string UserValue3 { get; set; }
|
||||
UIItemStatus SensorCalibrationOrUsageStatus { get; }
|
||||
InitialOffset[] InitialOffsets { get; set; }
|
||||
//FB 13120 define filter class
|
||||
IFilterClass FilterClass { get; set; }
|
||||
/// <summary>
|
||||
/// Date of first use (null value indicates not set)
|
||||
/// only valid when using latest calibration (as indicated by UsingLatestCalibration and LatestCalibrationId)
|
||||
/// 13065 Sensor "First Use" Date
|
||||
/// </summary>
|
||||
DateTime? FirstUseDate { get; set; }
|
||||
/// <summary>
|
||||
/// latest calibration id for sensor, null indicates not set
|
||||
/// 13065 Sensor "First Use" Date
|
||||
/// </summary>
|
||||
int? LatestCalibrationId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the sensor is using the latest calibration (as indicated by calibration id)
|
||||
/// 13065 Sensor "First Use" Date
|
||||
/// </summary>
|
||||
bool UsingLatestCalibration { get; set; }
|
||||
int SensorUsageCount { get; set; }
|
||||
int MaximumUsage { get; set; }
|
||||
string AssemblyName { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
using System.IO.Ports;
|
||||
using DTS.Common.Enums;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ICanIOSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// ID in the database for the uart i/o setting
|
||||
/// only positive numbers are valid database ids
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the uart i/o is checked in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// the serial number / setting name
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// the user who last modified setting
|
||||
/// </summary>
|
||||
string LastModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the setting was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if uart i/o matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether the uart i/o is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether the uart i/o is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode for the uart i/o
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the iso channel name for the uart i/o
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code for the uart i/o
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name for the uart i/o
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// marks the uart i/o setting as broken or not
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the uart i/o setting as donotuse
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
bool CanIsFD { get; set; }
|
||||
int CanArbBaseBitrate { get; set; }
|
||||
int CanArbBaseSJW { get; set; }
|
||||
int CanDataBitrate { get; set; }
|
||||
int CanDataSJW { get; set; }
|
||||
string CanFileType { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
using DTS.Common.Enums;
|
||||
using System;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
/// <summary>
|
||||
/// interface describes objects used in the UI to display digital inputs
|
||||
/// </summary>
|
||||
public interface IDigitalInputSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// ID in the database for the digital input setting
|
||||
/// only positive numbers are valid database ids
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the digital input is checked in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// the serial number / setting name
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
/// <summary>
|
||||
/// string representation of the Digital Input Mode of the setting
|
||||
/// </summary>
|
||||
string DIMode { get; set; }
|
||||
/// <summary>
|
||||
/// the user who last modified setting
|
||||
/// </summary>
|
||||
string ModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the setting was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if digital input matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether the digital input is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether the digital input is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// electronic id associated with the digital input
|
||||
/// </summary>
|
||||
string EID { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode for the digital input
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the iso channel name for the digital input
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code for the digital input
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name for the digital input
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the active value of digital input as a string
|
||||
/// this is the what to display when the digital input is in active state
|
||||
/// </summary>
|
||||
string ActiveValue { get; set; }
|
||||
/// <summary>
|
||||
/// the string representation of the state of the digital input in it's default state
|
||||
/// this is what to display when the digital input is in idle, inactive, or the default state
|
||||
/// </summary>
|
||||
string DefaultValue { get; set; }
|
||||
DigitalInputModes Mode { get; set; }
|
||||
/// <summary>
|
||||
/// marks the digital input setting as broken or not
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the digital input setting as donotuse
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
using System;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface IDigitalOutputSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// database id for digital output setting
|
||||
/// only ids > 0 are valid
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether digital output should have a check in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// serialnumber/setting name for digital output setting
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description/comment for setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
/// <summary>
|
||||
/// delay in ms before outputting
|
||||
/// </summary>
|
||||
double DODelay { get; set; }
|
||||
/// <summary>
|
||||
/// duration in ms of output (if limiting duration)
|
||||
/// </summary>
|
||||
double DODuration { get; set; }
|
||||
/// <summary>
|
||||
/// who last modified the digital output
|
||||
/// </summary>
|
||||
string ModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the digital output was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if the digital output matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether digital output is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether digital output was found online or not (there's no real way of finding digital output online, it has no EID)
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// isocode associated with digital output
|
||||
/// digital outputs aren't in collected data so there's not a real need for this ...
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// iso channel name associated with digital output
|
||||
/// digital outputs aren't in collected data so there's no real need for this ...
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// user code associated with digital output
|
||||
/// there's no collected data for outputs so there's no real need for this
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// user channel name associated with digital output
|
||||
/// there's no collected data for outputs so there's no real need for this
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// whether output should be limited or not
|
||||
/// </summary>
|
||||
bool LimitDuration { get; set; }
|
||||
/// <summary>
|
||||
/// the output mode for the digital output setting
|
||||
/// </summary>
|
||||
Enums.DigitalOutputModes DOMode { get; set; }
|
||||
/// <summary>
|
||||
/// used to mark whether the digital output is broken
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit group or edit test setup
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// used to mark whether the digital output should not be used
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit group or edit test setup
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
/// <summary>
|
||||
/// interface describing drag and drop payload when dragging from a sensor list
|
||||
/// this is common interface between different sensor types
|
||||
/// </summary>
|
||||
public interface IDragAndDropItem
|
||||
{
|
||||
/// <summary>
|
||||
/// serial name /setting name for sensor
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// database id associated with sensor (if any)
|
||||
/// only ids >0 are valid
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// isocode associated with sensor
|
||||
/// </summary>
|
||||
string ISOCode { get; }
|
||||
/// <summary>
|
||||
/// iso channel name associated with sensor
|
||||
/// </summary>
|
||||
string ISOChannelName { get; }
|
||||
/// <summary>
|
||||
/// user code associated with sensor
|
||||
/// </summary>
|
||||
string UserCode { get; }
|
||||
/// <summary>
|
||||
/// user channel name associated with sensor
|
||||
/// </summary>
|
||||
string UserChannelName { get; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
using DTS.Common.Base;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorTemplatesExportView : IBaseView { }
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
using DTS.Common.Base;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorTemplatesViewModel : IBaseViewModel
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
using DTS.Common.Base;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorsListEditGroupView : IBaseView
|
||||
{
|
||||
/// <summary>
|
||||
/// handles adding/removing columns done before view is displayed
|
||||
/// 13065 Sensor "First Use" Date
|
||||
/// </summary>
|
||||
void HandleColumns();
|
||||
void HandleAssemblyVisibilityColumns(bool bDontAllowDataCollectionIfOverused);
|
||||
void HandleInspectBeforeUseVisibilityColumn(bool show);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using DTS.Common.Base;
|
||||
using System.Collections.Generic;
|
||||
using DTS.Common.Enums.Sensors;
|
||||
using DTS.Common.Interface.Pagination;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorsListEditGroupViewModel : IBaseViewModel, IFilterableListView
|
||||
{
|
||||
ISensorsListEditGroupView View { get; set; }
|
||||
IAnalogSensor[] AnalogSensors { get; set; }
|
||||
ISquib[] Squibs { get; set; }
|
||||
IDigitalInputSetting[] DigitalInputSettings { get; set; }
|
||||
IDigitalOutputSetting[] DigitalOutputSettings { get; set; }
|
||||
IUartIOSetting[] UartSettings { get; set; }
|
||||
IStreamOutputSetting[] StreamOutputSettings { get; set; }
|
||||
void GetSensors(int sensorCalWarningPeriodDays, bool dontAllowDataCollectionIfOverused, int sensorUsageWarningPeriodCount, bool included);
|
||||
void SetCapacityFormat(string format);
|
||||
void Sort(object sortBy, bool bColumnClick);
|
||||
void Unset();
|
||||
void Filter(string currentFilter);
|
||||
void FilterSquib(object columnTag, string searchTerm);
|
||||
void FilterDigitalIn(object columnTag, string searchTerm);
|
||||
void FilterDigitalOut(object columnTag, string searchTerm);
|
||||
void FilterUartIO(object columnTag, string searchTerm);
|
||||
void FilterStreamOut(object columnTag, string searchTerm);
|
||||
void FilterStreamIn(object columnTag, string searchTerm);
|
||||
void SetShowAssigned(bool showAssigned, bool showUnassigned, IReadOnlyDictionary<string, bool> assignedSensors);
|
||||
void SetShowOnline(bool showOnline);
|
||||
void SetAssignedSensors(IReadOnlyDictionary<string, bool> serialNumbers);
|
||||
void SetOnline(Dictionary<string, bool> serialNumbersToOnline);
|
||||
bool IsSensorOnline(string serialNumber);
|
||||
void SetCachedSensors(ISensorData[] cachedSensors);
|
||||
void SetCachedCalibrations(ISensorCalibration[] calibrations);
|
||||
// sets the currently active tab to the type of sensor (analog/squib/di/dout)
|
||||
void SetActiveTab(PossibleFilters filter);
|
||||
void HandleAssemblyVisibilityColumns(bool bDontAllowDataCollectionIfOverused);
|
||||
void HandleInspectBeforeUseVisibilityColumn(bool allow);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
using DTS.Common.Base;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorsListOverdueView : IBaseView { }
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
using DTS.Common.Base;
|
||||
using DTS.Common.Enums.Sensors;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorsListView : IBaseView
|
||||
{
|
||||
void HandleColumns(CalibrationBehaviors calibrationBehavior);
|
||||
void SetIncludedVisible(bool bUsesIncludeColumn);
|
||||
void HandleAssemblyVisibilityColumns(bool bDontAllowDataCollectionIfOverused);
|
||||
void HandleInspectBeforeUseVisibilityColumn(bool show);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
using DTS.Common.Base;
|
||||
using DTS.Common.Enums.Sensors;
|
||||
using DTS.Common.Interface.Pagination;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorsListViewModel : IBaseViewModel, IFilterableListView
|
||||
{
|
||||
ISensorsListView View { get; set; }
|
||||
IAnalogSensor[] AnalogSensors { get; set; }
|
||||
ISquib[] Squibs { get; set; }
|
||||
IDigitalInputSetting[] DigitalInputSettings { get; set; }
|
||||
IDigitalOutputSetting[] DigitalOutputSettings { get; set; }
|
||||
IUartIOSetting[] UartIOSettings { get; set; }
|
||||
IStreamOutputSetting[] StreamOutputSettings { get; set; }
|
||||
CalibrationBehaviors CalibrationBehavior { get; set; }
|
||||
void HandleAssemblyVisibilityColumns(bool bDontAllowDataCollectionIfOverused);
|
||||
void HandleInspectBeforeUseVisibilityColumn(bool show);
|
||||
void GetSensors(int sensorCalWarningPeriodDays, bool dontAllowDataCollectionIfOverused, int sensorUsageWarningCount,
|
||||
bool included, Action OnComplete);
|
||||
/// <summary>
|
||||
/// retrieves and populates view model with all sensors matching sensors allowed
|
||||
/// </summary>
|
||||
/// <param name="sensorCalWarningPeriodDays">cal warning period in days, used for colorization</param>
|
||||
/// <param name="sensorsAllowed">array of which sensors to display</param>
|
||||
/// <param name="sensors">dictionary look up of databaseid to ISensorData for sensors in a test</param>
|
||||
void GetSensors(int sensorCalWarningPeriodDays, int[] sensorsAllowed, IReadOnlyDictionary<int, ISensorData> sensors);
|
||||
|
||||
void SetSelectedSerial(string serialNumber);
|
||||
void Sort(object sortBy, bool bColumnClick);
|
||||
void SortOverdue(object sortBy, bool bColumnClick);
|
||||
void Unset();
|
||||
void Filter(string currentFilter);
|
||||
void FilterSquib(object columnTag, string searchTerm);
|
||||
void FilterDigitalIn(object columnTag, string searchTerm);
|
||||
void FilterDigitalOut(object columnTag, string searchTerm);
|
||||
void FilterUartIO(object columnTag, string searchTerm);
|
||||
void FilterStreamIn(object columnTag, string searchTerm);
|
||||
void FilterStreamOut(object columnTag, string searchTerm);
|
||||
void SetCachedSensors(ISensorData[] cachedSensors);
|
||||
void SetCachedCalibrations(ISensorCalibration[] sensorCalibrations);
|
||||
string CapacityFormat { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// determines whether included columns are used in models/views
|
||||
/// </summary>
|
||||
/// <param name="bUsesIncludedColumn"></param>
|
||||
void UseIncludedColumn(bool bUsesIncludedColumn);
|
||||
/// <summary>
|
||||
///// determines whether the Assembly, Usage count, and Maximum usage columns are used in models/views
|
||||
///// </summary>
|
||||
///// <param name="bUsesIncludedColumn"></param>
|
||||
//void UseUsageCountColumns(bool bUsesUsageCountColumns);
|
||||
/// <summary>
|
||||
/// sets the included property for all sensors
|
||||
/// </summary>
|
||||
/// <param name="bIncluded"></param>
|
||||
void SetIncludedAll(bool bIncluded);
|
||||
/// <summary>
|
||||
/// returns all the included sensors
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
IDragAndDropItem[] GetIncludedSensors();
|
||||
/// <summary>
|
||||
/// controls whether TDC incompatible sensors should be included or not
|
||||
/// </summary>
|
||||
bool ShowOnlyTDCSensors { set; }
|
||||
/// <summary>
|
||||
/// controls whether Sliceware incompatible sensors should be included or not
|
||||
/// </summary>
|
||||
bool ShowOnlySlicewareSensors { set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
using DTS.Common.Base;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISensorTemplatesImportView : IBaseView { }
|
||||
}
|
||||
41
Common/DTS.Common/Interface/Sensors/SensorsList/ISquib.cs
Normal file
41
Common/DTS.Common/Interface/Sensors/SensorsList/ISquib.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using DTS.Common.Enums;
|
||||
using System;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface ISquib
|
||||
{
|
||||
int DatabaseId { get; set; }
|
||||
bool Included { get; set; }
|
||||
string SerialNumber { get; set; }
|
||||
string Description { get; set; }
|
||||
double ResistanceLow { get; set; }
|
||||
double ResistanceHigh { get; set; }
|
||||
string ID { get; set; }
|
||||
string SQMode { get; set; }
|
||||
double SQDelay { get; set; }
|
||||
double SQCurrent { get; set; }
|
||||
double SQDuration { get; set; }
|
||||
bool LimitDuration { get; set; }
|
||||
string ModifiedBy { get; set; }
|
||||
DateTime LastModified { get; set; }
|
||||
bool Filter(string term);
|
||||
bool Assigned { get; set; }
|
||||
bool Online { get; set; }
|
||||
string ISOCode { get; set; }
|
||||
string ISOChannelName { get; set; }
|
||||
string UserCode { get; set; }
|
||||
string UserChannelName { get; set; }
|
||||
SquibFireMode Mode { get; set; }
|
||||
/// <summary>
|
||||
/// marks the squib as broken
|
||||
/// broken sensors do not appear in lists of available sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the squib as donotuse
|
||||
/// donotuse sensors do not appear in lists of available sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using DTS.Common.Enums;
|
||||
using System;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface IStreamInputSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// ID in the database for the stream output setting
|
||||
/// only positive numbers are valid database ids
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the stream output is checked in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// the serial number / setting name
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// the user who last modified setting
|
||||
/// </summary>
|
||||
string LastModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the setting was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if stream output matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether the stream output is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether the stream output is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode for the stream output
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the iso channel name for the stream output
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code for the stream output
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name for the stream output
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// marks the stream output setting as broken or not
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the stream output setting as donotuse
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
///<summary>
|
||||
/// udp address setting value
|
||||
///</summary>
|
||||
string UDPAddress { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,136 @@
|
||||
using DTS.Common.Enums;
|
||||
using System;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface IStreamOutputSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// ID in the database for the stream output setting
|
||||
/// only positive numbers are valid database ids
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the stream output is checked in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// the serial number / setting name
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// the user who last modified setting
|
||||
/// </summary>
|
||||
string LastModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the setting was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if stream output matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether the stream output is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether the stream output is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode for the stream output
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the iso channel name for the stream output
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code for the stream output
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name for the stream output
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// marks the stream output setting as broken or not
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the stream output setting as donotuse
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
///<summary>
|
||||
/// udp profile setting value
|
||||
///</summary>
|
||||
UDPStreamProfile UDPProfile { get; set; }
|
||||
///<summary>
|
||||
/// udp address setting value
|
||||
///</summary>
|
||||
string UDPAddress { get; set; }
|
||||
///<summary>
|
||||
/// time channel id setting value
|
||||
///</summary>
|
||||
ushort UDPTimeChannelId { get; set; }
|
||||
///<summary>
|
||||
/// data channel id setting value
|
||||
///</summary>
|
||||
ushort UDPDataChannelId { get; set; }
|
||||
///<summary>
|
||||
/// tmns config setting value
|
||||
///</summary>
|
||||
string UDPTmNSConfig { get; set; }
|
||||
///<summary>
|
||||
/// irig data packet interval setting value
|
||||
///</summary>
|
||||
ushort IRIGTimeDataPacketIntervalMs { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// interval in ms between sending TMATS information while streaming
|
||||
/// http://manuscript.dts.local/f/cases/29987/Add-CG-DP-TMATS-interval-UI-support
|
||||
/// </summary>
|
||||
ushort TMATSIntervalMs { get; set; }
|
||||
bool IsCH10 { get; }
|
||||
bool IsTMNS { get; }
|
||||
bool IsIENA { get; }
|
||||
bool IsUART { get; }
|
||||
|
||||
/// <summary>
|
||||
/// TMNS sub frame id for output streaming
|
||||
/// </summary>
|
||||
uint TMNS_SubFrameId { get; set; }
|
||||
/// <summary>
|
||||
/// TMNS message id for output streaming
|
||||
/// </summary>
|
||||
uint TMNS_MsgId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// tmns PCM minor per major setting for output streaming
|
||||
/// </summary>
|
||||
uint TMNS_MinorPerMajor { get; set; }
|
||||
/// <summary>
|
||||
/// TMNS TMATs port for output streaming
|
||||
/// </summary>
|
||||
uint TMNS_TMATSPort { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// IENA key for output streaming
|
||||
/// </summary>
|
||||
ushort IENA_Key { get; set; }
|
||||
/// <summary>
|
||||
/// IENA source port for streaming
|
||||
/// </summary>
|
||||
uint IENA_SourcePort { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,100 @@
|
||||
using System;
|
||||
using System.IO.Ports;
|
||||
using DTS.Common.Enums;
|
||||
|
||||
namespace DTS.Common.Interface.Sensors.SensorsList
|
||||
{
|
||||
public interface IUartIOSetting
|
||||
{
|
||||
/// <summary>
|
||||
/// ID in the database for the uart i/o setting
|
||||
/// only positive numbers are valid database ids
|
||||
/// </summary>
|
||||
int DatabaseId { get; set; }
|
||||
/// <summary>
|
||||
/// whether the uart i/o is checked in a list with a checkbox
|
||||
/// </summary>
|
||||
bool Included { get; set; }
|
||||
/// <summary>
|
||||
/// the serial number / setting name
|
||||
/// </summary>
|
||||
string SerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// description or comment of setting
|
||||
/// </summary>
|
||||
string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// the user who last modified setting
|
||||
/// </summary>
|
||||
string LastModifiedBy { get; set; }
|
||||
/// <summary>
|
||||
/// when the setting was last modified
|
||||
/// </summary>
|
||||
DateTime LastModified { get; set; }
|
||||
/// <summary>
|
||||
/// returns true if uart i/o matches filter criteria
|
||||
/// </summary>
|
||||
/// <param name="term"></param>
|
||||
/// <returns></returns>
|
||||
bool Filter(string term);
|
||||
/// <summary>
|
||||
/// whether the uart i/o is associated with a channel
|
||||
/// </summary>
|
||||
bool Assigned { get; set; }
|
||||
/// <summary>
|
||||
/// whether the uart i/o is online or not
|
||||
/// </summary>
|
||||
bool Online { get; set; }
|
||||
/// <summary>
|
||||
/// the isocode for the uart i/o
|
||||
/// </summary>
|
||||
string ISOCode { get; set; }
|
||||
/// <summary>
|
||||
/// the iso channel name for the uart i/o
|
||||
/// </summary>
|
||||
string ISOChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// the user code for the uart i/o
|
||||
/// </summary>
|
||||
string UserCode { get; set; }
|
||||
/// <summary>
|
||||
/// the user channel name for the uart i/o
|
||||
/// </summary>
|
||||
string UserChannelName { get; set; }
|
||||
/// <summary>
|
||||
/// marks the uart i/o setting as broken or not
|
||||
/// broken sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool Broken { get; set; }
|
||||
/// <summary>
|
||||
/// marks the uart i/o setting as donotuse
|
||||
/// donotuse sensors do not appear in selectable lists of sensors in edit test setup or edit group
|
||||
/// </summary>
|
||||
bool DoNotUse { get; set; }
|
||||
/// <summary>
|
||||
/// uart baud rate
|
||||
/// </summary>
|
||||
uint BaudRate { get; set; }
|
||||
/// <summary>
|
||||
/// uart data bits
|
||||
/// </summary>
|
||||
uint DataBits { get; set; }
|
||||
/// <summary>
|
||||
/// uart stop bits
|
||||
/// </summary>
|
||||
StopBits StopBits { get; set; }
|
||||
/// <summary>
|
||||
/// uart parity
|
||||
/// </summary>
|
||||
Parity Parity { get; set; }
|
||||
/// <summary>
|
||||
/// uart flow control FB 30486 removed set. Always be NONE
|
||||
/// </summary>
|
||||
Handshake FlowControl { get; }
|
||||
/// <summary>
|
||||
/// the data format of incoming data
|
||||
/// </summary>
|
||||
UartDataFormat DataFormat { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user