using System; using System.Collections.Generic; using System.Linq; using System.Text; using Crestron.SimplSharp; using PepperDash.Essentials.Core; namespace PepperDash.Essentials.Bridges { public class DmTxControllerJoinMap : JoinMapBase { #region Digitals /// /// High when device is online (if not attached to a DMP3 or DM chassis with a CPU3 card /// public uint IsOnline { get; set; } /// /// High when video sync is detected /// public uint VideoSyncStatus { get; set; } #endregion #region Analogs /// /// Sets and reports the video source /// public uint VideoInput { get; set; } /// /// Sets and reports the audio source /// public uint AudioInput { get; set; } /// /// Reports the highest supported HDCP state level for the corresponding input card /// public uint HdcpSupportCapability { get; set; } /// /// Sets and reports the current HDCP state for the corresponding input port /// public uint Port1HdcpState { get; set; } /// /// Sets and reports the current HDCP state for the corresponding input port /// public uint Port2HdcpState { get; set; } #endregion #region Serials /// /// Reports the current input resolution /// public uint CurrentInputResolution { get; set; } #endregion public DmTxControllerJoinMap() { // Digital IsOnline = 1; VideoSyncStatus = 2; // Serial CurrentInputResolution = 1; // Analog VideoInput = 1; AudioInput = 2; HdcpSupportCapability = 3; Port1HdcpState = 4; Port2HdcpState = 5; } public override void OffsetJoinNumbers(uint joinStart) { var joinOffset = joinStart - 1; IsOnline = IsOnline + joinOffset; VideoSyncStatus = VideoSyncStatus + joinOffset; CurrentInputResolution = CurrentInputResolution + joinOffset; VideoInput = VideoInput + joinOffset; AudioInput = AudioInput + joinOffset; HdcpSupportCapability = HdcpSupportCapability + joinOffset; Port1HdcpState = Port1HdcpState + joinOffset; Port2HdcpState = Port2HdcpState + joinOffset; } } }