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 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 assignedSensors); void SetShowOnline(bool showOnline); void SetAssignedSensors(IReadOnlyDictionary serialNumbers); void SetOnline(Dictionary 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); } }