using System; using System.Collections.Generic; using System.Linq; using System.Text; using Crestron.SimplSharp; using PepperDash.Essentials.Core; namespace PepperDash.Essentials.Bridges { [Obsolete("Please use version PepperDash.Essentials.Core.Bridges")] public class DisplayControllerJoinMap : JoinMapBase { #region Digitals /// /// Turns the display off and reports power off feedback /// public uint PowerOff { get; set; } /// /// Turns the display on and repots power on feedback /// public uint PowerOn { get; set; } /// /// Indicates that the display device supports two way communication when high /// public uint IsTwoWayDisplay { get; set; } /// /// Increments the volume while high /// public uint VolumeUp { get; set; } /// /// Decrements teh volume while high /// public uint VolumeDown { get; set; } /// /// Toggles the mute state. Feedback is high when volume is muted /// public uint VolumeMute { get; set; } /// /// Range of digital joins to select inputs and report current input as feedback /// public uint InputSelectOffset { get; set; } /// /// Range of digital joins to report visibility for input buttons /// public uint ButtonVisibilityOffset { get; set; } /// /// High if the device is online /// public uint IsOnline { get; set; } #endregion #region Analogs /// /// Analog join to set the input and report current input as feedback /// public uint InputSelect { get; set; } /// /// Sets the volume level and reports the current level as feedback /// public uint VolumeLevel { get; set; } #endregion #region Serials /// /// Reports the name of the display as defined in config as feedback /// public uint Name { get; set; } /// /// Range of serial joins that reports the names of the inputs as feedback /// public uint InputNamesOffset { get; set; } #endregion public DisplayControllerJoinMap() { // Digital IsOnline = 50; PowerOff = 1; PowerOn = 2; IsTwoWayDisplay = 3; VolumeUp = 5; VolumeDown = 6; VolumeMute = 7; ButtonVisibilityOffset = 40; InputSelectOffset = 10; // Analog InputSelect = 11; VolumeLevel = 5; // Serial Name = 1; InputNamesOffset = 10; } public override void OffsetJoinNumbers(uint joinStart) { var joinOffset = joinStart - 1; IsOnline = IsOnline + joinOffset; PowerOff = PowerOff + joinOffset; PowerOn = PowerOn + joinOffset; IsTwoWayDisplay = IsTwoWayDisplay + joinOffset; ButtonVisibilityOffset = ButtonVisibilityOffset + joinOffset; Name = Name + joinOffset; InputNamesOffset = InputNamesOffset + joinOffset; InputSelectOffset = InputSelectOffset + joinOffset; InputSelect = InputSelect + joinOffset; VolumeUp = VolumeUp + joinOffset; VolumeDown = VolumeDown + joinOffset; VolumeMute = VolumeMute + joinOffset; VolumeLevel = VolumeLevel + joinOffset; } } }