using System.Collections.Generic; using static DTS.Common.Enums.DASFactory.DFConstantsAndEnums; namespace DTS.Common.Interface.DASFactory { public interface IDiscoveredDevice { /// /// Device Serial Number /// string Serial { get; set; } MultiCastDeviceClasses DevClass { get; set; } /// /// Device Mac /// string Mac { get; set; } IDiscoveredDevice Parent { get; set; } bool IsParent(IDiscoveredDevice possibleChild); int GetPort(IDiscoveredDevice device); int GetSlot(IDiscoveredDevice child, Dictionary lookup); int GetSlotOnPort(IDiscoveredDevice child, Dictionary lookup); bool IsModule { get; set; } /// /// if I'm on a SLICE6DB, what port am I on /// int Port { get; set; } /// /// starting at the first device in the chain on the first point, up until the last device on the last chain/port, where is this device /// this is used to as we don't show SLICE6 devices when on a SLICE6Db, but we still need to know which devices is where for showing /// the channels in the UI /// int PositionOnDistributor { get; set; } /// /// where is this device in a chain of devices, only used for SLICE6 on a SLICE6Db right now /// int PositionOnChain { get; set; } /// /// Is DHCP enabled /// bool Dhcp { get; set; } /// /// Device IP /// string Ip { get; set; } /// /// Device Subnet /// string Subnet { get; set; } /// /// Device Gateway /// string Gateway { get; set; } /// /// Device DNS Sever /// string Dns { get; set; } /// /// Is Device connected to another host /// bool Connected { get; set; } /// /// Host IP that device is connected to /// string ConnectedIp { get; set; } /// /// Host Name Resolution that device is connected to /// string ConnectedHost { get; set; } /// /// User entry for Distributor ID that device is connected to /// ushort SystemId { get; set; } /// /// User entry for location of device /// string Location { get; set; } /// /// Firmware version string /// [Product Name]-[FW/BL]-[REL/DBG]-[Board #]-[FW Ver Name] /// string FirmwareVersion { get; set; } /// /// Build Server number for the firmware /// string BuildId { get; set; } IConnectedEthernetDevice [] Connections { get; set; } } }