Files
DP44/Common/DTS.CommonCore/.svn/pristine/d1/d159115865ad23dae0e54707e90263d15fc77610.svn-base

67 lines
3.1 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
using DTS.Common.Base;
using DTS.Common.Enums.Sensors;
using DTS.Common.Interface.Pagination;
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 GetSensors(int sensorCalWarningPeriodDays, bool included);
/// <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>
/// 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; }
}
}