mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-16 13:15:03 +00:00
wip: update XML comments
This commit is contained in:
@@ -5,6 +5,10 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IAudioZone : IBasicVolumeWithFeedback
|
public interface IAudioZone : IBasicVolumeWithFeedback
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Selects the specified input
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="input">The input to select</param>
|
||||||
void SelectInput(ushort input);
|
void SelectInput(ushort input);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,10 +5,26 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IBasicVolumeWithFeedback : IBasicVolumeControls
|
public interface IBasicVolumeWithFeedback : IBasicVolumeControls
|
||||||
{
|
{
|
||||||
BoolFeedback MuteFeedback { get; }
|
|
||||||
|
/// <summary>
|
||||||
|
/// Mutes the volume
|
||||||
|
/// </summary>
|
||||||
void MuteOn();
|
void MuteOn();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Unmutes the volume
|
||||||
|
/// </summary>
|
||||||
void MuteOff();
|
void MuteOff();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sets the volume to the specified level
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">The volume level to set</param>
|
||||||
void SetVolume(ushort level);
|
void SetVolume(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the mute feedback
|
||||||
|
/// </summary>
|
||||||
IntFeedback VolumeLevelFeedback { get; }
|
IntFeedback VolumeLevelFeedback { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,8 +5,14 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IBasicVolumeWithFeedbackAdvanced : IBasicVolumeWithFeedback
|
public interface IBasicVolumeWithFeedbackAdvanced : IBasicVolumeWithFeedback
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the raw volume level
|
||||||
|
/// </summary>
|
||||||
int RawVolumeLevel { get; }
|
int RawVolumeLevel { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the volume level units
|
||||||
|
/// </summary>
|
||||||
eVolumeLevelUnits Units { get; }
|
eVolumeLevelUnits Units { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,26 +7,56 @@ using PepperDash.Essentials.Core.SmartObjects;
|
|||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// Defines the contract for IChannel
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IChannel
|
public interface IChannel
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Channel up
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
|
///
|
||||||
void ChannelUp(bool pressRelease);
|
void ChannelUp(bool pressRelease);
|
||||||
|
/// <summary>
|
||||||
|
/// Channel down
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void ChannelDown(bool pressRelease);
|
void ChannelDown(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Last channel
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void LastChannel(bool pressRelease);
|
void LastChannel(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Guide
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
|
///
|
||||||
void Guide(bool pressRelease);
|
void Guide(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Info
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Info(bool pressRelease);
|
void Info(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Exit
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Exit(bool pressRelease);
|
void Exit(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IChannelExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class IChannelExtensions
|
public static class IChannelExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LinkButtons method
|
/// LinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void LinkButtons(this IChannel dev, BasicTriList triList)
|
public static void LinkButtons(this IChannel dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.SetBoolSigAction(123, dev.ChannelUp);
|
triList.SetBoolSigAction(123, dev.ChannelUp);
|
||||||
@@ -37,9 +67,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
triList.SetBoolSigAction(134, dev.Exit);
|
triList.SetBoolSigAction(134, dev.Exit);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void UnlinkButtons(this IChannel dev, BasicTriList triList)
|
public static void UnlinkButtons(this IChannel dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(123);
|
triList.ClearBoolSigAction(123);
|
||||||
|
|||||||
@@ -7,24 +7,45 @@ using PepperDash.Essentials.Core.SmartObjects;
|
|||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IColor interface
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IColor
|
public interface IColor
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Red button
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Red(bool pressRelease);
|
void Red(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Green button
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Green(bool pressRelease);
|
void Green(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Yellow button
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Yellow(bool pressRelease);
|
void Yellow(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Blue button
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">indicates whether this is a press or release</param>
|
||||||
void Blue(bool pressRelease);
|
void Blue(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IColorExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class IColorExtensions
|
public static class IColorExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LinkButtons method
|
/// LinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The IColor device</param>
|
||||||
|
/// <param name="TriList">The BasicTriList to link</param>
|
||||||
public static void LinkButtons(this IColor dev, BasicTriList TriList)
|
public static void LinkButtons(this IColor dev, BasicTriList TriList)
|
||||||
{
|
{
|
||||||
TriList.SetBoolSigAction(155, dev.Red);
|
TriList.SetBoolSigAction(155, dev.Red);
|
||||||
@@ -33,9 +54,11 @@ namespace PepperDash.Essentials.Core
|
|||||||
TriList.SetBoolSigAction(158, dev.Blue);
|
TriList.SetBoolSigAction(158, dev.Blue);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The IColor device</param>
|
||||||
|
/// <param name="triList">The BasicTriList to unlink</param>
|
||||||
public static void UnlinkButtons(this IColor dev, BasicTriList triList)
|
public static void UnlinkButtons(this IColor dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(155);
|
triList.ClearBoolSigAction(155);
|
||||||
|
|||||||
@@ -11,23 +11,57 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDPad : IKeyed
|
public interface IDPad : IKeyed
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Up button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Up(bool pressRelease);
|
void Up(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Down button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Down(bool pressRelease);
|
void Down(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Left button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Left(bool pressRelease);
|
void Left(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Right button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Right(bool pressRelease);
|
void Right(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Select button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Select(bool pressRelease);
|
void Select(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Menu button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Menu(bool pressRelease);
|
void Menu(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Exit button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Exit(bool pressRelease);
|
void Exit(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IDPadExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class IDPadExtensions
|
public static class IDPadExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LinkButtons method
|
/// LinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void LinkButtons(this IDPad dev, BasicTriList triList)
|
public static void LinkButtons(this IDPad dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.SetBoolSigAction(138, dev.Up);
|
triList.SetBoolSigAction(138, dev.Up);
|
||||||
@@ -39,9 +73,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
triList.SetBoolSigAction(134, dev.Exit);
|
triList.SetBoolSigAction(134, dev.Exit);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void UnlinkButtons(this IDPad dev, BasicTriList triList)
|
public static void UnlinkButtons(this IDPad dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(138);
|
triList.ClearBoolSigAction(138);
|
||||||
|
|||||||
@@ -16,24 +16,40 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDvr : IDPad
|
public interface IDvr : IDPad
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// DVR List button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void DvrList(bool pressRelease);
|
void DvrList(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Record button press
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void Record(bool pressRelease);
|
void Record(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IDvrExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class IDvrExtensions
|
public static class IDvrExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LinkButtons method
|
/// LinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">IDvr device</param>
|
||||||
|
/// <param name="triList">BasicTriList to link to</param>
|
||||||
public static void LinkButtons(this IDvr dev, BasicTriList triList)
|
public static void LinkButtons(this IDvr dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.SetBoolSigAction(136, dev.DvrList);
|
triList.SetBoolSigAction(136, dev.DvrList);
|
||||||
triList.SetBoolSigAction(152, dev.Record);
|
triList.SetBoolSigAction(152, dev.Record);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// UnlinkButtons method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="dev">IDvr device</param>
|
||||||
|
/// <param name="triList">BasicTriList to unlink from</param>
|
||||||
public static void UnlinkButtons(this IDvr dev, BasicTriList triList)
|
public static void UnlinkButtons(this IDvr dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(136);
|
triList.ClearBoolSigAction(136);
|
||||||
|
|||||||
@@ -11,7 +11,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IEmergencyOSD
|
public interface IEmergencyOSD
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Shows an emergency message on the OSD
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="url">The URL of the emergency message to display</param>
|
||||||
void ShowEmergencyMessage(string url);
|
void ShowEmergencyMessage(string url);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Hides the emergency message from the OSD
|
||||||
|
/// </summary>
|
||||||
void HideEmergencyMessage();
|
void HideEmergencyMessage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,37 +5,149 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFullAudioSettings : IBasicVolumeWithFeedback
|
public interface IFullAudioSettings : IBasicVolumeWithFeedback
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// SetBalance method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">level to set</param>
|
||||||
void SetBalance(ushort level);
|
void SetBalance(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BalanceLeft method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void BalanceLeft(bool pressRelease);
|
void BalanceLeft(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BalanceRight method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void BalanceRight(bool pressRelease);
|
void BalanceRight(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SetBass method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">level to set</param>
|
||||||
void SetBass(ushort level);
|
void SetBass(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BassUp method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void BassUp(bool pressRelease);
|
void BassUp(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BassDown method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void BassDown(bool pressRelease);
|
void BassDown(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SetTreble method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">level to set</param>
|
||||||
void SetTreble(ushort level);
|
void SetTreble(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// TrebleUp method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void TrebleUp(bool pressRelease);
|
void TrebleUp(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// TrebleDown method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void TrebleDown(bool pressRelease);
|
void TrebleDown(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// hasMaxVolume property
|
||||||
|
/// </summary>
|
||||||
bool hasMaxVolume { get; }
|
bool hasMaxVolume { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SetMaxVolume method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">level to set</param>
|
||||||
void SetMaxVolume(ushort level);
|
void SetMaxVolume(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MaxVolumeUp method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void MaxVolumeUp(bool pressRelease);
|
void MaxVolumeUp(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MaxVolumeDown method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void MaxVolumeDown(bool pressRelease);
|
void MaxVolumeDown(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// hasDefaultVolume property
|
||||||
|
/// </summary>
|
||||||
bool hasDefaultVolume { get; }
|
bool hasDefaultVolume { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SetDefaultVolume method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">level to set</param>
|
||||||
void SetDefaultVolume(ushort level);
|
void SetDefaultVolume(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DefaultVolumeUp method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void DefaultVolumeUp(bool pressRelease);
|
void DefaultVolumeUp(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DefaultVolumeDown method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button is pressed or released</param>
|
||||||
void DefaultVolumeDown(bool pressRelease);
|
void DefaultVolumeDown(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// LoudnessToggle method
|
||||||
|
/// </summary>
|
||||||
void LoudnessToggle();
|
void LoudnessToggle();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MonoToggle method
|
||||||
|
/// </summary>
|
||||||
void MonoToggle();
|
void MonoToggle();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// LoudnessFeedback property
|
||||||
|
/// </summary>
|
||||||
BoolFeedback LoudnessFeedback { get; }
|
BoolFeedback LoudnessFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MonoFeedback property
|
||||||
|
/// </summary>
|
||||||
BoolFeedback MonoFeedback { get; }
|
BoolFeedback MonoFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BalanceFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback BalanceFeedback { get; }
|
IntFeedback BalanceFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// BassFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback BassFeedback { get; }
|
IntFeedback BassFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// TrebleFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback TrebleFeedback { get; }
|
IntFeedback TrebleFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MaxVolumeFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback MaxVolumeFeedback { get; }
|
IntFeedback MaxVolumeFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DefaultVolumeFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback DefaultVolumeFeedback { get; }
|
IntFeedback DefaultVolumeFeedback { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,7 +7,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasBranding
|
public interface IHasBranding
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Gets whether branding is enabled
|
||||||
|
/// </summary>
|
||||||
bool BrandingEnabled { get; }
|
bool BrandingEnabled { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes branding for the device
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="roomKey">The key identifying the room for branding purposes</param>
|
||||||
void InitializeBranding(string roomKey);
|
void InitializeBranding(string roomKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,11 +7,24 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasCurrentVolumeControls
|
public interface IHasCurrentVolumeControls
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// CurrentVolumeControls property
|
||||||
|
/// </summary>
|
||||||
IBasicVolumeControls CurrentVolumeControls { get; }
|
IBasicVolumeControls CurrentVolumeControls { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// CurrentVolumeDeviceChange event
|
||||||
|
/// </summary>
|
||||||
event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
event EventHandler<VolumeDeviceChangeEventArgs> CurrentVolumeDeviceChange;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SetDefaultLevels method
|
||||||
|
/// </summary>
|
||||||
void SetDefaultLevels();
|
void SetDefaultLevels();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ZeroVolumeWhenSwtichingVolumeDevices property
|
||||||
|
/// </summary>
|
||||||
bool ZeroVolumeWhenSwtichingVolumeDevices { get; }
|
bool ZeroVolumeWhenSwtichingVolumeDevices { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,9 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasFarEndContentStatus
|
public interface IHasFarEndContentStatus
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Gets whether far end content is being received
|
||||||
|
/// </summary>
|
||||||
BoolFeedback ReceivingContent { get; }
|
BoolFeedback ReceivingContent { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </example>
|
/// </example>
|
||||||
public interface IHasInputs<T> : IKeyName
|
public interface IHasInputs<T> : IKeyName
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Gets the collection of inputs
|
||||||
|
/// </summary>
|
||||||
ISelectableItems<T> Inputs { get; }
|
ISelectableItems<T> Inputs { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasMuteControl
|
public interface IHasMuteControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// MuteToggle method
|
||||||
|
/// </summary>
|
||||||
void MuteToggle();
|
void MuteToggle();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,8 +5,19 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasMuteControlWithFeedback : IHasMuteControl
|
public interface IHasMuteControlWithFeedback : IHasMuteControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// MuteFeedback property
|
||||||
|
/// </summary>
|
||||||
BoolFeedback MuteFeedback { get; }
|
BoolFeedback MuteFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MuteOn method
|
||||||
|
/// </summary>
|
||||||
void MuteOn();
|
void MuteOn();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MuteOff method
|
||||||
|
/// </summary>
|
||||||
void MuteOff();
|
void MuteOff();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -8,11 +8,36 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasPhoneDialing
|
public interface IHasPhoneDialing
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback that indicates whether the phone is off-hook
|
||||||
|
/// </summary>
|
||||||
BoolFeedback PhoneOffHookFeedback { get; }
|
BoolFeedback PhoneOffHookFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback that provides the caller ID name
|
||||||
|
/// </summary>
|
||||||
StringFeedback CallerIdNameFeedback { get; }
|
StringFeedback CallerIdNameFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback that provides the caller ID number
|
||||||
|
/// </summary>
|
||||||
StringFeedback CallerIdNumberFeedback { get; }
|
StringFeedback CallerIdNumberFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Dials a phone call to the specified number
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="number">the number to dial</param>
|
||||||
void DialPhoneCall(string number);
|
void DialPhoneCall(string number);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Ends the current phone call
|
||||||
|
/// </summary>
|
||||||
void EndPhoneCall();
|
void EndPhoneCall();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sends a DTMF digit to the phone
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="digit">the DTMF digit to send</param>
|
||||||
void SendDtmfToPhone(string digit);
|
void SendDtmfToPhone(string digit);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,10 +11,18 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// Describes a device that has selectable surround sound modes
|
/// Describes a device that has selectable surround sound modes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <typeparam name="TKey">the type to use as the key for each input item. Most likely an enum or string</typeparam>
|
/// <typeparam name="TKey">the type to use as the key for each input item. Most likely an enum or string</typeparam>
|
||||||
|
/// <typeparam name="TSelector">the type used to select an item. Most likely an enum or string</typeparam>
|
||||||
public interface IHasSurroundSoundModes<TKey, TSelector>: IKeyName
|
public interface IHasSurroundSoundModes<TKey, TSelector>: IKeyName
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The available surround sound modes
|
||||||
|
/// </summary>
|
||||||
ISelectableItems<TKey> SurroundSoundModes { get; }
|
ISelectableItems<TKey> SurroundSoundModes { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The currently selected surround sound mode
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="selector">the selector for the surround sound mode</param>
|
||||||
void SetSurroundSoundMode(TSelector selector);
|
void SetSurroundSoundMode(TSelector selector);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,16 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasVolumeControl
|
public interface IHasVolumeControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// VolumeUp method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the volume up command is a press or release action</param>
|
||||||
void VolumeUp(bool pressRelease);
|
void VolumeUp(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// VolumeDown method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the volume down command is a press or release action</param>
|
||||||
void VolumeDown(bool pressRelease);
|
void VolumeDown(bool pressRelease);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,7 +5,15 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasVolumeControlWithFeedback : IHasVolumeControl
|
public interface IHasVolumeControlWithFeedback : IHasVolumeControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// SetVolume method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="level">The volume level to set</param>
|
||||||
void SetVolume(ushort level);
|
void SetVolume(ushort level);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// VolumeLevelFeedback property
|
||||||
|
/// </summary>
|
||||||
IntFeedback VolumeLevelFeedback { get; }
|
IntFeedback VolumeLevelFeedback { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasVolumeDevice
|
public interface IHasVolumeDevice
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// VolumeDevice property
|
||||||
|
/// </summary>
|
||||||
IBasicVolumeControls VolumeDevice { get; }
|
IBasicVolumeControls VolumeDevice { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,9 +11,28 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasWebView
|
public interface IHasWebView
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Indicates whether the webview is currently visible
|
||||||
|
/// </summary>
|
||||||
bool WebviewIsVisible { get; }
|
bool WebviewIsVisible { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Shows the webview with the specified parameters
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="url">the URL to display in the webview</param>
|
||||||
|
/// <param name="mode">the display mode for the webview</param>
|
||||||
|
/// <param name="title">the title to display on the webview</param>
|
||||||
|
/// <param name="target">the target for the webview</param>
|
||||||
void ShowWebView(string url, string mode, string title, string target);
|
void ShowWebView(string url, string mode, string title, string target);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Hides the webview
|
||||||
|
/// </summary>
|
||||||
void HideWebView();
|
void HideWebView();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Event raised when the webview status changes
|
||||||
|
/// </summary>
|
||||||
event EventHandler<WebViewStatusChangedEventArgs> WebViewStatusChanged;
|
event EventHandler<WebViewStatusChangedEventArgs> WebViewStatusChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -27,6 +46,10 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string Status { get; }
|
public string Status { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructor for WebViewStatusChangedEventArgs
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="status">the new status of the webview</param>
|
||||||
public WebViewStatusChangedEventArgs(string status)
|
public WebViewStatusChangedEventArgs(string status)
|
||||||
{
|
{
|
||||||
Status = status;
|
Status = status;
|
||||||
|
|||||||
@@ -8,14 +8,49 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ILanguageDefinition
|
public interface ILanguageDefinition
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The locale name for the language definition
|
||||||
|
/// </summary>
|
||||||
string LocaleName { get; set; }
|
string LocaleName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The friendly name for the language definition
|
||||||
|
/// </summary>
|
||||||
string FriendlyName { get; set; }
|
string FriendlyName { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Indicates whether the language definition is enabled
|
||||||
|
/// </summary>
|
||||||
bool Enable { get; set; }
|
bool Enable { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The UI labels for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> UiLabels { get; set; }
|
List<LanguageLabel> UiLabels { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The source and destination labels for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> Sources { get; set; }
|
List<LanguageLabel> Sources { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The destination labels for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> Destinations { get; set; }
|
List<LanguageLabel> Destinations { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The source group names for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> SourceGroupNames { get; set; }
|
List<LanguageLabel> SourceGroupNames { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The destination group names for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> DestinationGroupNames { get; set; }
|
List<LanguageLabel> DestinationGroupNames { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The room names for the language definition
|
||||||
|
/// </summary>
|
||||||
List<LanguageLabel> RoomNames { get; set; }
|
List<LanguageLabel> RoomNames { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,8 +8,14 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ILanguageProvider
|
public interface ILanguageProvider
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The current language definition
|
||||||
|
/// </summary>
|
||||||
ILanguageDefinition CurrentLanguage { get; set; }
|
ILanguageDefinition CurrentLanguage { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Event raised when the current language changes
|
||||||
|
/// </summary>
|
||||||
event EventHandler CurrentLanguageChanged;
|
event EventHandler CurrentLanguageChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ILevelControls
|
public interface ILevelControls
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The level control points
|
||||||
|
/// </summary>
|
||||||
Dictionary<string, IBasicVolumeWithFeedback> LevelControlPoints { get; }
|
Dictionary<string, IBasicVolumeWithFeedback> LevelControlPoints { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,8 +8,14 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IMobileControlAction
|
public interface IMobileControlAction
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The messenger to use for mobile control actions
|
||||||
|
/// </summary>
|
||||||
IMobileControlMessenger Messenger { get; }
|
IMobileControlMessenger Messenger { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The action to perform for mobile control actions
|
||||||
|
/// </summary>
|
||||||
Action<string, string, JToken> Action { get; }
|
Action<string, string, JToken> Action { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3,14 +3,26 @@ using Newtonsoft.Json.Linq;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Defines the contract for IMobileControlMessage
|
||||||
|
/// </summary>
|
||||||
public interface IMobileControlMessage
|
public interface IMobileControlMessage
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The type of mobile control message
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("type")]
|
[JsonProperty("type")]
|
||||||
string Type { get; }
|
string Type { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The client ID for the mobile control message
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("clientId", NullValueHandling = NullValueHandling.Ignore)]
|
[JsonProperty("clientId", NullValueHandling = NullValueHandling.Ignore)]
|
||||||
string ClientId { get; }
|
string ClientId { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The content of the mobile control message
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("content", NullValueHandling = NullValueHandling.Ignore)]
|
[JsonProperty("content", NullValueHandling = NullValueHandling.Ignore)]
|
||||||
JToken Content { get; }
|
JToken Content { get; }
|
||||||
|
|
||||||
|
|||||||
@@ -8,26 +8,60 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IMobileControlRoomMessenger : IKeyed
|
public interface IMobileControlRoomMessenger : IKeyed
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the user code changes
|
||||||
|
/// </summary>
|
||||||
event EventHandler<EventArgs> UserCodeChanged;
|
event EventHandler<EventArgs> UserCodeChanged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the user is prompted for the code
|
||||||
|
/// </summary>
|
||||||
event EventHandler<EventArgs> UserPromptedForCode;
|
event EventHandler<EventArgs> UserPromptedForCode;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when a client joins the room
|
||||||
|
/// </summary>
|
||||||
event EventHandler<EventArgs> ClientJoined;
|
event EventHandler<EventArgs> ClientJoined;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the app url changes
|
||||||
|
/// </summary>
|
||||||
event EventHandler<EventArgs> AppUrlChanged;
|
event EventHandler<EventArgs> AppUrlChanged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The user code for joining the room
|
||||||
|
/// </summary>
|
||||||
string UserCode { get; }
|
string UserCode { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The QR code URL for joining the room
|
||||||
|
/// </summary>
|
||||||
string QrCodeUrl { get; }
|
string QrCodeUrl { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The QR code checksum
|
||||||
|
/// </summary>
|
||||||
string QrCodeChecksum { get; }
|
string QrCodeChecksum { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The Mobile Control server URL
|
||||||
|
/// </summary>
|
||||||
string McServerUrl { get; }
|
string McServerUrl { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The name of the room
|
||||||
|
/// </summary>
|
||||||
string RoomName { get; }
|
string RoomName { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The Mobile Control app URL
|
||||||
|
/// </summary>
|
||||||
string AppUrl { get; }
|
string AppUrl { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Updates the url of the Mobile Control app
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="url">The new URL of the Mobile Control app</param>
|
||||||
void UpdateAppUrl(string url);
|
void UpdateAppUrl(string url);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -10,37 +10,119 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface INumericKeypad:IKeyed
|
public interface INumericKeypad:IKeyed
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 0
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit0(bool pressRelease);
|
void Digit0(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 1
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit1(bool pressRelease);
|
void Digit1(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 2
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit2(bool pressRelease);
|
void Digit2(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 3
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit3(bool pressRelease);
|
void Digit3(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 4
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease"></param>
|
||||||
void Digit4(bool pressRelease);
|
void Digit4(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 5
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit5(bool pressRelease);
|
void Digit5(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 6
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit6(bool pressRelease);
|
void Digit6(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 7
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit7(bool pressRelease);
|
void Digit7(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 8
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit8(bool pressRelease);
|
void Digit8(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Digit buttons 9
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the digit button command is a press or release action</param>
|
||||||
void Digit9(bool pressRelease);
|
void Digit9(bool pressRelease);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Used to hide/show the button and/or text on the left-hand keypad button
|
/// Used to hide/show the button and/or text on the left-hand keypad button
|
||||||
/// </summary>
|
/// </summary>
|
||||||
bool HasKeypadAccessoryButton1 { get; }
|
bool HasKeypadAccessoryButton1 { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Label for the left-hand keypad button
|
||||||
|
/// </summary>
|
||||||
string KeypadAccessoryButton1Label { get; }
|
string KeypadAccessoryButton1Label { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Left-hand keypad button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button command is a press or release action</param>
|
||||||
void KeypadAccessoryButton1(bool pressRelease);
|
void KeypadAccessoryButton1(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Used to hide/show the button and/or text on the right-hand keypad button
|
||||||
|
/// </summary>
|
||||||
bool HasKeypadAccessoryButton2 { get; }
|
bool HasKeypadAccessoryButton2 { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Label for the right-hand keypad button
|
||||||
|
/// </summary>
|
||||||
string KeypadAccessoryButton2Label { get; }
|
string KeypadAccessoryButton2Label { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Right-hand keypad button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button command is a press or release action</param>
|
||||||
void KeypadAccessoryButton2(bool pressRelease);
|
void KeypadAccessoryButton2(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Defines the contract for ISetTopBoxNumericKeypad
|
||||||
|
/// </summary>
|
||||||
public interface ISetTopBoxNumericKeypad : INumericKeypad
|
public interface ISetTopBoxNumericKeypad : INumericKeypad
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Dash button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button command is a press or release action</param>
|
||||||
void Dash(bool pressRelease);
|
void Dash(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Keypad Enter button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button command is a press or release action</param>
|
||||||
void KeypadEnter(bool pressRelease);
|
void KeypadEnter(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// INumericExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class INumericExtensions
|
public static class INumericExtensions
|
||||||
{
|
{
|
||||||
@@ -65,9 +147,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
trilist.StringInput[111].StringValue = dev.KeypadAccessoryButton2Label;
|
trilist.StringInput[111].StringValue = dev.KeypadAccessoryButton2Label;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static void UnlinkButtons(this INumericKeypad dev, BasicTriList trilist)
|
public static void UnlinkButtons(this INumericKeypad dev, BasicTriList trilist)
|
||||||
{
|
{
|
||||||
trilist.ClearBoolSigAction(110);
|
trilist.ClearBoolSigAction(110);
|
||||||
|
|||||||
@@ -19,10 +19,13 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Submits the password
|
/// Submits the password
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="password"></param>
|
/// <param name="password">The password to submit</param>
|
||||||
void SubmitPassword(string password);
|
void SubmitPassword(string password);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// PasswordPromptEventArgs class
|
||||||
|
/// </summary>
|
||||||
public class PasswordPromptEventArgs : EventArgs
|
public class PasswordPromptEventArgs : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -45,6 +48,13 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string Message { get; private set; }
|
public string Message { get; private set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructor
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="lastAttemptIncorrect">indicates if the last submitted password was incorrect</param>
|
||||||
|
/// <param name="loginFailed">indicates if the login attempt failed</param>
|
||||||
|
/// <param name="loginCancelled">indicates if the login attempt was cancelled</param>
|
||||||
|
/// <param name="message">provides a message related to the password prompt</param>
|
||||||
public PasswordPromptEventArgs(bool lastAttemptIncorrect, bool loginFailed, bool loginCancelled, string message)
|
public PasswordPromptEventArgs(bool lastAttemptIncorrect, bool loginFailed, bool loginCancelled, string message)
|
||||||
{
|
{
|
||||||
LastAttemptWasIncorrect = lastAttemptIncorrect;
|
LastAttemptWasIncorrect = lastAttemptIncorrect;
|
||||||
|
|||||||
@@ -19,6 +19,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasPowerControlWithFeedback : IHasPowerControl
|
public interface IHasPowerControlWithFeedback : IHasPowerControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback indicating whether the device is powered on
|
||||||
|
/// </summary>
|
||||||
BoolFeedback PowerIsOnFeedback { get; }
|
BoolFeedback PowerIsOnFeedback { get; }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -27,13 +30,24 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IHasPowerControl
|
public interface IHasPowerControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Powers the device on
|
||||||
|
/// </summary>
|
||||||
void PowerOn();
|
void PowerOn();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Powers the device off
|
||||||
|
/// </summary>
|
||||||
void PowerOff();
|
void PowerOff();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Toggles the power state of the device
|
||||||
|
/// </summary>
|
||||||
void PowerToggle();
|
void PowerToggle();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// IHasPowerControlExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class IHasPowerControlExtensions
|
public static class IHasPowerControlExtensions
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,26 +5,60 @@ using Newtonsoft.Json.Converters;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines the contract for IProjectorScreenLiftControl
|
/// Defines the contract for IProjectorScreenLiftControl
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IProjectorScreenLiftControl
|
public interface IProjectorScreenLiftControl
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Raises the screen/lift
|
||||||
|
/// </summary>
|
||||||
void Raise();
|
void Raise();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Lowers the screen/lift
|
||||||
|
/// </summary>
|
||||||
void Lower();
|
void Lower();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Stops the screen/lift
|
||||||
|
/// </summary>
|
||||||
BoolFeedback IsInUpPosition { get; }
|
BoolFeedback IsInUpPosition { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets whether the screen/lift is in the up position
|
||||||
|
/// </summary>
|
||||||
bool InUpPosition { get; }
|
bool InUpPosition { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets whether the screen/lift is in the down position
|
||||||
|
/// </summary>
|
||||||
event EventHandler<EventArgs> PositionChanged;
|
event EventHandler<EventArgs> PositionChanged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The device key of the display associated with this screen/lift
|
||||||
|
/// </summary>
|
||||||
string DisplayDeviceKey { get; }
|
string DisplayDeviceKey { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The type of device
|
||||||
|
/// </summary>
|
||||||
eScreenLiftControlType Type { get; } // screen/lift
|
eScreenLiftControlType Type { get; } // screen/lift
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Enumeration of eScreenLiftControlType values
|
/// Enumeration of eScreenLiftControlType values
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public enum eScreenLiftControlType
|
public enum eScreenLiftControlType
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Lift type device
|
||||||
|
/// </summary>
|
||||||
lift,
|
lift,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Screen type device
|
||||||
|
/// </summary>
|
||||||
screen
|
screen
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -10,10 +10,20 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ISelectableItem : IKeyName
|
public interface ISelectableItem : IKeyName
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the item is updated
|
||||||
|
/// </summary>
|
||||||
event EventHandler ItemUpdated;
|
event EventHandler ItemUpdated;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets whether the item is selected
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("isSelected")]
|
[JsonProperty("isSelected")]
|
||||||
bool IsSelected { get; set; }
|
bool IsSelected { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Selects the item
|
||||||
|
/// </summary>
|
||||||
void Select();
|
void Select();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -9,12 +9,25 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ISelectableItems<TKey, TValue> where TValue : ISelectableItem
|
public interface ISelectableItems<TKey, TValue> where TValue : ISelectableItem
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the items are updated
|
||||||
|
/// </summary>
|
||||||
event EventHandler ItemsUpdated;
|
event EventHandler ItemsUpdated;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Raised when the current item changes
|
||||||
|
/// </summary>
|
||||||
event EventHandler CurrentItemChanged;
|
event EventHandler CurrentItemChanged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets the collection of selectable items
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("items")]
|
[JsonProperty("items")]
|
||||||
Dictionary<TKey, TValue> Items { get; set; }
|
Dictionary<TKey, TValue> Items { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets the current selected item key
|
||||||
|
/// </summary>
|
||||||
[JsonProperty("currentItem")]
|
[JsonProperty("currentItem")]
|
||||||
TKey CurrentItem { get; set; }
|
TKey CurrentItem { get; set; }
|
||||||
|
|
||||||
@@ -24,9 +37,6 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// Describes a collection of items that can be selected
|
/// Describes a collection of items that can be selected
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <typeparam name="TKey">type for the keys in the collection. Probably a string or enum</typeparam>
|
/// <typeparam name="TKey">type for the keys in the collection. Probably a string or enum</typeparam>
|
||||||
/// <summary>
|
|
||||||
/// Defines the contract for ISelectableItems
|
|
||||||
/// </summary>
|
|
||||||
public interface ISelectableItems<TKey> : ISelectableItems<TKey, ISelectableItem>
|
public interface ISelectableItems<TKey> : ISelectableItems<TKey, ISelectableItem>
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,9 +5,9 @@ using PepperDash.Essentials.Core.SmartObjects;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines the contract for ISetTopBoxControls
|
/// Defines the contract for ISetTopBoxControls
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ISetTopBoxControls : IChannel, IColor, IDPad, ISetTopBoxNumericKeypad,
|
public interface ISetTopBoxControls : IChannel, IColor, IDPad, ISetTopBoxNumericKeypad,
|
||||||
ITransport, IUiDisplayInfo
|
ITransport, IUiDisplayInfo
|
||||||
{
|
{
|
||||||
@@ -31,27 +31,51 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
bool HasDpad { get; }
|
bool HasDpad { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// TV Presets model
|
||||||
|
/// </summary>
|
||||||
PepperDash.Essentials.Core.Presets.DevicePresetsModel TvPresets { get; }
|
PepperDash.Essentials.Core.Presets.DevicePresetsModel TvPresets { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// LoadPresets method
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filePath">path to file that contains the presets</param>
|
||||||
void LoadPresets(string filePath);
|
void LoadPresets(string filePath);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DvrList button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void DvrList(bool pressRelease);
|
void DvrList(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Replay button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Replay(bool pressRelease);
|
void Replay(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ISetTopBoxControlsExtensions class
|
||||||
|
/// </summary>
|
||||||
public static class ISetTopBoxControlsExtensions
|
public static class ISetTopBoxControlsExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// LinkButtons method
|
/// LinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The ISetTopBoxControls device</param>
|
||||||
|
/// <param name="triList">The BasicTriList to link buttons to</param>
|
||||||
public static void LinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
|
public static void LinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.SetBoolSigAction(136, dev.DvrList);
|
triList.SetBoolSigAction(136, dev.DvrList);
|
||||||
triList.SetBoolSigAction(152, dev.Replay);
|
triList.SetBoolSigAction(152, dev.Replay);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The ISetTopBoxControls device</param>
|
||||||
|
/// <param name="triList">The BasicTriList to unlink buttons from</param>
|
||||||
public static void UnlinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
|
public static void UnlinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(136);
|
triList.ClearBoolSigAction(136);
|
||||||
|
|||||||
@@ -17,9 +17,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
IntFeedback TemperatureFeedback { get; }
|
IntFeedback TemperatureFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The temperature in Celsius format
|
||||||
|
/// </summary>
|
||||||
BoolFeedback TemperatureInCFeedback { get; }
|
BoolFeedback TemperatureInCFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sets the temperature format to Celsius or Fahrenheit
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="setToC">If true, sets the format to Celsius; otherwise, sets it to Fahrenheit.</param>
|
||||||
void SetTemperatureFormat(bool setToC);
|
void SetTemperatureFormat(bool setToC);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,25 +7,65 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ITransport
|
public interface ITransport
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Play button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Play(bool pressRelease);
|
void Play(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pause button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Pause(bool pressRelease);
|
void Pause(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Rewind button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Rewind(bool pressRelease);
|
void Rewind(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Fast Forward button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void FFwd(bool pressRelease);
|
void FFwd(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Chapter Minus button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void ChapMinus(bool pressRelease);
|
void ChapMinus(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Chapter Plus button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void ChapPlus(bool pressRelease);
|
void ChapPlus(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Stop button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Stop(bool pressRelease);
|
void Stop(bool pressRelease);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Record button action
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pressRelease">determines if the button action is a press or release</param>
|
||||||
void Record(bool pressRelease);
|
void Record(bool pressRelease);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// ITransportExtensions class
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class ITransportExtensions
|
public static class ITransportExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Attaches to trilist joins: Play:145, Pause:146, Stop:147, ChapPlus:148, ChapMinus:149, Rewind:150, Ffwd:151, Record:154
|
/// Attaches to trilist joins: Play:145, Pause:146, Stop:147, ChapPlus:148, ChapMinus:149, Rewind:150, Ffwd:151, Record:154
|
||||||
///
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The ITransport device</param>
|
||||||
|
/// <param name="triList">The BasicTriList to link buttons to</param>
|
||||||
public static void LinkButtons(this ITransport dev, BasicTriList triList)
|
public static void LinkButtons(this ITransport dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.SetBoolSigAction(145, dev.Play);
|
triList.SetBoolSigAction(145, dev.Play);
|
||||||
@@ -38,9 +78,11 @@ namespace PepperDash.Essentials.Core
|
|||||||
triList.SetBoolSigAction(154, dev.Record);
|
triList.SetBoolSigAction(154, dev.Record);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// UnlinkButtons method
|
/// UnlinkButtons method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="dev">The ITransport device</param>
|
||||||
|
/// <param name="triList">The BasicTriList to unlink buttons from</param>
|
||||||
public static void UnlinkButtons(this ITransport dev, BasicTriList triList)
|
public static void UnlinkButtons(this ITransport dev, BasicTriList triList)
|
||||||
{
|
{
|
||||||
triList.ClearBoolSigAction(145);
|
triList.ClearBoolSigAction(145);
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface ITvPresetsProvider
|
public interface ITvPresetsProvider
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The TV presets model
|
||||||
|
/// </summary>
|
||||||
DevicePresetsModel TvPresets { get; }
|
DevicePresetsModel TvPresets { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2,11 +2,14 @@
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines the contract for IUiDisplayInfo
|
/// Defines the contract for IUiDisplayInfo
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IUiDisplayInfo : IKeyed
|
public interface IUiDisplayInfo : IKeyed
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Display UI Type
|
||||||
|
/// </summary>
|
||||||
uint DisplayUiType { get; }
|
uint DisplayUiType { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,7 +11,14 @@ namespace PepperDash.Essentials.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IWarmingCooling
|
public interface IWarmingCooling
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback indicating whether the device is warming up
|
||||||
|
/// </summary>
|
||||||
BoolFeedback IsWarmingUpFeedback { get; }
|
BoolFeedback IsWarmingUpFeedback { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Feedback indicating whether the device is cooling down
|
||||||
|
/// </summary>
|
||||||
BoolFeedback IsCoolingDownFeedback { get; }
|
BoolFeedback IsCoolingDownFeedback { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,10 +1,28 @@
|
|||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Volume level units
|
||||||
|
/// </summary>
|
||||||
public enum eVolumeLevelUnits
|
public enum eVolumeLevelUnits
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Decibels
|
||||||
|
/// </summary>
|
||||||
Decibels,
|
Decibels,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Percent
|
||||||
|
/// </summary>
|
||||||
Percent,
|
Percent,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Relative
|
||||||
|
/// </summary>
|
||||||
Relative,
|
Relative,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Absolute
|
||||||
|
/// </summary>
|
||||||
Absolute
|
Absolute
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user