Files
DP44/Common/DTS.CommonCore/.svn/pristine/8b/8bcbfa8e419d4a45bb6e50b34e380c2d16a37c02.svn-base

151 lines
6.3 KiB
Plaintext
Raw Normal View History

2026-04-17 14:55:32 -04:00
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using DTS.Common.Base;
using DTS.Common.Classes.Hardware;
using DTS.Common.Enums;
using DTS.Common.Interface.Pagination;
using DTS.Common.Interface.TestSetups.TestSetupsList;
namespace DTS.Common.Interface.DASFactory.Diagnostics.HardwareList
{
public interface IHardwareListViewModel : IBaseViewModel, IFilterableListView
{
/// <summary>
/// a user selected slice6
/// </summary>
ISLICE6TreeNode SelectedSLICE6 { get; set; }
/// <summary>
/// all slice6 which are not associated with a given S6DB
/// </summary>
ISLICE6TreeNode[] AvailableSLICE6 { get; set; }
/// <summary>
/// currently selected SLICE6DB
/// </summary>
IHardware SelectedSLICE6DB { get; set; }
/// <summary>
/// all available SLICE6DB
/// </summary>
IHardware [] AvailableSLICE6DB { get; set; }
bool IsEdit { get; set; }
int TDASCalPeriod { get; set; }
int G5CalPeriod { get; set; }
int SLICE1CalPeriod { get; set; }
int SLICE1_5CalPeriod { get; set; }
int SLICE2_CalPeriod { get; set; }
int SLICE6_CalPeriod { get; set; }
int POWERPRO_CalPeriod { get; set; }
int SLICE6Air_CalPeriod { get; set; }
int SLICE6DB_CalPeriod { get; set; }
int TSRAir_CalPeriod { get; set; }
/// <summary>
/// the hardware replacement view
/// </summary>
IHardwareListReplaceView ReplaceView { get; set; }
IHardwareListView View { get; set; }
IHardwareListOverdueView OverdueView { get; set; }
IHardwareListSelectView SelectView { get; set; }
ISLICE6TreeView SLICE6TreeView { get; set; }
IHardware [] Hardware { get; set; }
IHardware [] OverdueHardware { get; set; }
/// <summary>
/// the hardware in the test (replacementview)
/// </summary>
IHardware [] HardwareInTest { get; set; }
/// <summary>
/// the hardware to replace
/// </summary>
IHardware HardwareToReplace { get; set; }
/// <summary>
/// the hardware that is available to replace with
/// </summary>
IHardware [] AvailableHardware { get; set; }
/// <summary>
/// initializes the replacement view given a test id
/// </summary>
void InitializeReplace(ITestSetup setup, IsoViewMode viewMode);
void GetHardware(bool bIncludeModules, bool bIncludeOverdue, bool bIncludeBridges, int? testId, int? groupId);
void GetAvailableSampleRates(int[] availableSampleRates);
void SetTestSampleRates(Dictionary<string, double> testSampleRates);
void SetHasIncludedChildren();
void UpdateTestSampleRate(string childSerialNumber, double testSampleRate);
int TestAAFRateHzColumnWidth { get; set; }
void SetTestAAFRates(Dictionary<string, float> testAAFRates);
void UpdateTestAAFilterRate(string childSerialNumber, float testAAFilterRate);
Func<SerializableAAF.DAS_TYPE, int, float> GetAAFForHardwareFunc { get; set; }
void CheckForMixedDAS(string nonParentSerialNumber, double testSampleRate);
void SetParentMixedRates(string parentDAS, bool mixedRates);
int TestSampleRateColumnWidth { get; set; }
int TestClockMasterColumnWidth { get; set; }
int PTPDomainColumnWidth { get; set; }
void SetTestClockProfiles(DTS.Common.ClockSyncProfile masterProfile, DTS.Common.ClockSyncProfile slaveProfile);
void SetTestClockMasters(Dictionary<string, bool> testClockMasters);
void UpdateTestClockMaster(string childSerialNumber, bool testClockMaster);
void SetTestPTPDomainIDs(Dictionary<string, byte> testPTPDomainIDs);
void UpdateTestPTPDomainID(string childSerialNumber, byte ptpDomainId);
void Unset();
void Sort(object o, bool columnClick);
void SortOverdue(object o, bool columnClick);
void SetIncluded(string[] serialNumbers, bool included);
void SetIncluded(int[] dasId);
void Filter(string term);
void MouseDoubleClick(int index);
void SetCache(IISOHardware[] hardware);
/// <summary>
/// whether to show a compact view (no rack modules) or
/// expanded (show rack modules)
/// </summary>
bool ShowCompact { get; set; }
/// <summary>
/// loads tree for given hardware
/// </summary>
/// <param name="serialNumber"></param>
void LoadTreeView(string serialNumber);
/// <summary>
/// all the SLICE6 associated with a S6DB
/// (LoadTreeView will set this)
/// </summary>
ISLICE6TreeNode[] SLICE6TreeNodes{ get; set; }
/// <summary>
/// associates a SLICE6 with a SLICE6DB
/// [does not commit]
/// </summary>
/// <param name="node"></param>
void Associate(ISLICE6TreeNode node);
/// <summary>
/// associates units from one SLICE6DB
/// with another
/// [does not commit]
/// </summary>
/// <param name="node"></param>
void Associate(IHardware node);
/// <summary>
/// removes the association of a SLICE6 with a SLICE6DB
/// [does not commit]
/// </summary>
/// <param name="node"></param>
void UnAssociate(ISLICE6TreeNode node);
/// <summary>
/// associates or de-associates SLICE6 from a SLICE6DB
/// </summary>
void SaveSLICE6Associations(string serialNumber);
IHardware[] GetSelectedItems();
/// <summary>
/// Replaces HardwareToReplace with ReplacementHardware
/// </summary>
void Replace();
/// <summary>
/// the selected hardware to replace with
/// </summary>
IHardware ReplacementHardware { get; set; }
void SetCalPeriods(int g5CalPeriod, int slice1CalPeriod, int slice1_5CalPeriod, int slice2_CalPeriod, int slice6_CalPeriod, int tdasCalPeriod,
int powerpro_CalPeriod, int slice6Air_CalPeriod, int slice6DB_CalPeriod, int tsrAir_CalPeriod, int slice6AirBridge_CalPeriod);
}
}