diff --git a/src/PepperDash.Core/Device.cs b/src/PepperDash.Core/Device.cs
index 1295463c..7124550e 100644
--- a/src/PepperDash.Core/Device.cs
+++ b/src/PepperDash.Core/Device.cs
@@ -15,23 +15,23 @@ namespace PepperDash.Core
/// Unique Key
///
public string Key { get; protected set; }
- ///
- /// Gets or sets the Name
- ///
+ ///
+ /// Gets or sets the Name
+ ///
public string Name { get; protected set; }
///
- /// Gets or sets a value indicating whether the device is enabled
+ ///
///
public bool Enabled { get; protected set; }
- // ///
- // /// A place to store reference to the original config object, if any. These values should
- // /// NOT be used as properties on the device as they are all publicly-settable values.
- // ///
+ ///
+ /// A place to store reference to the original config object, if any. These values should
+ /// NOT be used as properties on the device as they are all publicly-settable values.
+ ///
//public DeviceConfig Config { get; private set; }
- // ///
- // /// Helper method to check if Config exists
- // ///
+ ///
+ /// Helper method to check if Config exists
+ ///
//public bool HasConfig { get { return Config != null; } }
List _PreActivationActions;
diff --git a/src/PepperDash.Core/Logging/DebugConsoleSink.cs b/src/PepperDash.Core/Logging/DebugConsoleSink.cs
index 4879de2a..6363caa5 100644
--- a/src/PepperDash.Core/Logging/DebugConsoleSink.cs
+++ b/src/PepperDash.Core/Logging/DebugConsoleSink.cs
@@ -41,9 +41,6 @@ namespace PepperDash.Core
CrestronConsole.PrintLine(message);
}
- ///
- /// Constructor for DebugConsoleSink
- ///
public DebugConsoleSink(ITextFormatter formatProvider )
{
_textFormatter = formatProvider ?? new JsonFormatter();
@@ -51,9 +48,6 @@ namespace PepperDash.Core
}
- ///
- /// Provides extension methods for DebugConsoleSink
- ///
public static class DebugConsoleSinkExtensions
{
///
diff --git a/src/PepperDash.Core/Logging/DebugCrestronLoggerSink.cs b/src/PepperDash.Core/Logging/DebugCrestronLoggerSink.cs
index 3fb9c8f2..76859209 100644
--- a/src/PepperDash.Core/Logging/DebugCrestronLoggerSink.cs
+++ b/src/PepperDash.Core/Logging/DebugCrestronLoggerSink.cs
@@ -27,9 +27,6 @@ namespace PepperDash.Core.Logging
CrestronLogger.WriteToLog(message, (uint)logEvent.Level);
}
- ///
- /// Constructor for DebugCrestronLoggerSink
- ///
public DebugCrestronLoggerSink()
{
CrestronLogger.Initialize(1, LoggerModeEnum.RM);
diff --git a/src/PepperDash.Core/Logging/DebugErrorLogSink.cs b/src/PepperDash.Core/Logging/DebugErrorLogSink.cs
index 3f8a130d..9ab4dc6b 100644
--- a/src/PepperDash.Core/Logging/DebugErrorLogSink.cs
+++ b/src/PepperDash.Core/Logging/DebugErrorLogSink.cs
@@ -63,10 +63,6 @@ namespace PepperDash.Core.Logging
handler(message);
}
- ///
- /// Constructor for DebugErrorLogSink
- ///
- /// text formatter for log output
public DebugErrorLogSink(ITextFormatter formatter = null)
{
_formatter = formatter;
diff --git a/src/PepperDash.Core/Logging/DebugExtensions.cs b/src/PepperDash.Core/Logging/DebugExtensions.cs
index df6fe50a..ccee4943 100644
--- a/src/PepperDash.Core/Logging/DebugExtensions.cs
+++ b/src/PepperDash.Core/Logging/DebugExtensions.cs
@@ -4,9 +4,6 @@ using Log = PepperDash.Core.Debug;
namespace PepperDash.Core.Logging
{
- ///
- /// Provides extension methods for logging on IKeyed objects
- ///
public static class DebugExtensions
{
///
diff --git a/src/PepperDash.Core/Logging/DebugWebsocketSink.cs b/src/PepperDash.Core/Logging/DebugWebsocketSink.cs
index a5152d89..9c3df14e 100644
--- a/src/PepperDash.Core/Logging/DebugWebsocketSink.cs
+++ b/src/PepperDash.Core/Logging/DebugWebsocketSink.cs
@@ -32,9 +32,6 @@ namespace PepperDash.Core
private const string _certificateName = "selfCres";
private const string _certificatePassword = "cres12345";
- ///
- /// Gets the Port
- ///
public int Port
{ get
{
@@ -44,9 +41,6 @@ namespace PepperDash.Core
}
}
- ///
- /// Gets the Url
- ///
public string Url
{
get
@@ -64,11 +58,6 @@ namespace PepperDash.Core
private readonly ITextFormatter _textFormatter;
- ///
- /// Constructor for DebugWebsocketSink
- ///
- /// text formatter for log output
-
public DebugWebsocketSink(ITextFormatter formatProvider)
{
@@ -228,9 +217,6 @@ namespace PepperDash.Core
}
}
- ///
- /// Provides extension methods for DebugWebsocketSink
- ///
public static class DebugWebsocketSinkExtensions
{
///
@@ -251,9 +237,6 @@ namespace PepperDash.Core
{
private DateTime _connectionTime;
- ///
- /// Gets the ConnectedDuration
- ///
public TimeSpan ConnectedDuration
{
get
@@ -269,17 +252,11 @@ namespace PepperDash.Core
}
}
- ///
- /// Constructor for DebugClient
- ///
public DebugClient()
{
Debug.Console(0, "DebugClient Created");
}
- ///
- /// OnOpen method
- ///
protected override void OnOpen()
{
base.OnOpen();
@@ -290,9 +267,6 @@ namespace PepperDash.Core
_connectionTime = DateTime.Now;
}
- ///
- /// OnMessage method
- ///
protected override void OnMessage(MessageEventArgs e)
{
base.OnMessage(e);
@@ -300,9 +274,6 @@ namespace PepperDash.Core
Debug.Console(0, "WebSocket UiClient Message: {0}", e.Data);
}
- ///
- /// OnClose method
- ///
protected override void OnClose(CloseEventArgs e)
{
base.OnClose(e);
@@ -311,9 +282,6 @@ namespace PepperDash.Core
}
- ///
- /// OnError method
- ///
protected override void OnError(WebSocketSharp.ErrorEventArgs e)
{
base.OnError(e);
diff --git a/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestAsyncHandler.cs b/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestAsyncHandler.cs
index 82e5df4a..927092db 100644
--- a/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestAsyncHandler.cs
+++ b/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestAsyncHandler.cs
@@ -5,16 +5,9 @@ using System.Threading.Tasks;
namespace PepperDash.Core.Web.RequestHandlers
{
- ///
- /// CWS Base Async Handler, implements IHttpCwsHandler
- ///
public abstract class WebApiBaseRequestAsyncHandler:IHttpCwsHandler
{
private readonly Dictionary> _handlers;
-
- ///
- /// Indicates whether CORS is enabled
- ///
protected readonly bool EnableCors;
///
diff --git a/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs b/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
index e7681ac3..a02f3497 100644
--- a/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
+++ b/src/PepperDash.Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
@@ -10,10 +10,6 @@ namespace PepperDash.Core.Web.RequestHandlers
public abstract class WebApiBaseRequestHandler : IHttpCwsHandler
{
private readonly Dictionary> _handlers;
-
- ///
- /// Indicates whether CORS is enabled
- ///
protected readonly bool EnableCors;
///
diff --git a/src/PepperDash.Core/Web/WebApiServer.cs b/src/PepperDash.Core/Web/WebApiServer.cs
index 769da961..11ec4e2f 100644
--- a/src/PepperDash.Core/Web/WebApiServer.cs
+++ b/src/PepperDash.Core/Web/WebApiServer.cs
@@ -45,9 +45,9 @@ namespace PepperDash.Core.Web
///
public bool IsRegistered { get; private set; }
- // ///
- // /// Http request handler
- // ///
+ ///
+ /// Http request handler
+ ///
//public IHttpCwsHandler HttpRequestHandler
//{
// get { return _server.HttpRequestHandler; }
@@ -58,9 +58,9 @@ namespace PepperDash.Core.Web
// }
//}
- // ///
- // /// Received request event handler
- // ///
+ ///
+ /// Received request event handler
+ ///
//public event EventHandler ReceivedRequestEvent
//{
// add { _server.ReceivedRequestEvent += new HttpCwsRequestEventHandler(value); }
diff --git a/src/PepperDash.Essentials.Core/Bridges/BridgeHelper.cs b/src/PepperDash.Essentials.Core/Bridges/BridgeHelper.cs
index 599c06a6..8d183b77 100644
--- a/src/PepperDash.Essentials.Core/Bridges/BridgeHelper.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/BridgeHelper.cs
@@ -10,6 +10,10 @@ namespace PepperDash.Essentials.Core.Bridges
///
public static class BridgeHelper
{
+ ///
+ /// PrintJoinMp method
+ ///
+ /// target bridgekey to print join map for
public static void PrintJoinMap(string command)
{
var targets = command.Split(' ');
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AirMediaControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AirMediaControllerJoinMap.cs
index 6975ce3c..2bd218f6 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AirMediaControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AirMediaControllerJoinMap.cs
@@ -7,50 +7,86 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class AirMediaControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Air Media Online status
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Air Media In Sharing Session status
+ ///
[JoinName("IsInSession")]
public JoinDataComplete IsInSession = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media In Sharing Session", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Air Media Has HDMI Video Sync status
+ ///
[JoinName("HdmiVideoSync")]
public JoinDataComplete HdmiVideoSync = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Has HDMI Video Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Air Media Automatic Input Routing Enable(d)
+ ///
[JoinName("AutomaticInputRoutingEnabled")]
public JoinDataComplete AutomaticInputRoutingEnabled = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Automatic Input Routing Enable(d)", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Air Media Video Route Select / Feedback
+ ///
[JoinName("VideoOut")]
public JoinDataComplete VideoOut = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Video Route Select / Feedback", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Air Media Error Status Feedback
+ ///
[JoinName("ErrorFB")]
public JoinDataComplete ErrorFB = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Error Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Air Media Number of Users Connected Feedback
+ ///
[JoinName("NumberOfUsersConnectedFB")]
public JoinDataComplete NumberOfUsersConnectedFB = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Number of Users Connected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Air Media Login Code Set / Get
+ ///
[JoinName("LoginCode")]
public JoinDataComplete LoginCode = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Login Code Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Air Media Device Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Device Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Air Media IP Address Feedback
+ ///
[JoinName("ConnectionAddressFB")]
public JoinDataComplete ConnectionAddressFB = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media IP Address", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Air Media Hostname Feedback
+ ///
[JoinName("HostnameFB")]
public JoinDataComplete HostnameFB = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Hostname", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Air Media Serial Number Feedback
+ ///
[JoinName("SerialNumberFeedback")]
public JoinDataComplete SerialNumberFeedback = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Air Media Serial Number", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AppleTvJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AppleTvJoinMap.cs
index 0776f653..c337f9cf 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AppleTvJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/AppleTvJoinMap.cs
@@ -7,30 +7,51 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class AppleTvJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// AppleTv Nav Up
+ ///
[JoinName("UpArrow")]
public JoinDataComplete UpArrow = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Nav Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Nav Down
+ ///
[JoinName("DnArrow")]
public JoinDataComplete DnArrow = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Nav Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Nav Left
+ ///
[JoinName("LeftArrow")]
public JoinDataComplete LeftArrow = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Nav Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Nav Right
+ ///
[JoinName("RightArrow")]
public JoinDataComplete RightArrow = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Nav Right", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Menu
+ ///
[JoinName("Menu")]
public JoinDataComplete Menu = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Menu", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Select
+ ///
[JoinName("Select")]
public JoinDataComplete Select = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Select", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// AppleTv Play/Pause
+ ///
[JoinName("PlayPause")]
public JoinDataComplete PlayPause = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "AppleTv Play/Pause", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/C2nRthsControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/C2nRthsControllerJoinMap.cs
index 3d6d01b1..bb9da22f 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/C2nRthsControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/C2nRthsControllerJoinMap.cs
@@ -7,22 +7,37 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class C2nRthsControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// C2nRthsController Online status
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Temp Sensor Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Temperature Format (C/F)
+ ///
[JoinName("TemperatureFormat")]
public JoinDataComplete TemperatureFormat = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Temp Sensor Unit Format", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Temperature Sensor Feedbacks
+ ///
[JoinName("Temperature")]
public JoinDataComplete Temperature = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Temp Sensor Temperature Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Humidity Sensor Feedbacks
+ ///
[JoinName("Humidity")]
public JoinDataComplete Humidity = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Temp Sensor Humidity Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Temp Sensor Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Temp Sensor Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CameraControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CameraControllerJoinMap.cs
index 70f182cb..aad43513 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CameraControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CameraControllerJoinMap.cs
@@ -7,46 +7,117 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class CameraControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Tilt Up
+ ///
[JoinName("TiltUp")]
public JoinDataComplete TiltUp = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 }, new JoinMetadata { Description = "Tilt Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Tilt Down
+ ///
[JoinName("TiltDown")]
public JoinDataComplete TiltDown = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 }, new JoinMetadata { Description = "Tilt Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Pan Left
+ ///
[JoinName("PanLeft")]
public JoinDataComplete PanLeft = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 }, new JoinMetadata { Description = "Pan Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Pan Right
+ ///
[JoinName("PanRight")]
public JoinDataComplete PanRight = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 }, new JoinMetadata { Description = "Pan Right", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Zoom In
+ ///
[JoinName("ZoomIn")]
public JoinDataComplete ZoomIn = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 }, new JoinMetadata { Description = "Zoom In", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Zoom Out
+ ///
[JoinName("ZoomOut")]
public JoinDataComplete ZoomOut = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 }, new JoinMetadata { Description = "Zoom Out", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Is Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 }, new JoinMetadata { Description = "Is Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Power On
+ ///
[JoinName("PowerOn")]
public JoinDataComplete PowerOn = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 }, new JoinMetadata { Description = "Power On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Power Off
+ ///
[JoinName("PowerOff")]
public JoinDataComplete PowerOff = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 }, new JoinMetadata { Description = "Power Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Number Of Presets
+ ///
[JoinName("NumberOfPresets")]
public JoinDataComplete NumberOfPresets = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 }, new JoinMetadata { Description = "Tells Essentials the number of defined presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
+
+ ///
+ /// Preset Recall Start
+ ///
[JoinName("PresetRecallStart")]
public JoinDataComplete PresetRecallStart = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 20 }, new JoinMetadata { Description = "Preset Recall Start", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Preset Label Start
+ ///
[JoinName("PresetLabelStart")]
public JoinDataComplete PresetLabelStart = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 20 }, new JoinMetadata { Description = "Preset Label Start", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
+
+ ///
+ /// Preset Save Start
+ ///
[JoinName("PresetSaveStart")]
public JoinDataComplete PresetSaveStart = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 20 }, new JoinMetadata { Description = "Preset Save Start", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Camera Mode Auto
+ ///
[JoinName("CameraModeAuto")]
public JoinDataComplete CameraModeAuto = new JoinDataComplete(new JoinData { JoinNumber = 51, JoinSpan = 1 }, new JoinMetadata { Description = "Camera Mode Auto", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Camera Mode Manual
+ ///
[JoinName("CameraModeManual")]
public JoinDataComplete CameraModeManual = new JoinDataComplete(new JoinData { JoinNumber = 52, JoinSpan = 1 }, new JoinMetadata { Description = "Camera Mode Manual", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Camera Mode Off
+ ///
[JoinName("CameraModeOff")]
public JoinDataComplete CameraModeOff = new JoinDataComplete(new JoinData { JoinNumber = 53, JoinSpan = 1 }, new JoinMetadata { Description = "Camera Mode Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Supports Camera Mode Manual
+ ///
[JoinName("SupportsCameraModeAuto")]
public JoinDataComplete SupportsCameraModeAuto = new JoinDataComplete(new JoinData { JoinNumber = 55, JoinSpan = 1 }, new JoinMetadata { Description = "Supports Camera Mode Auto", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Supports Camera Mode Off
+ ///
[JoinName("SupportsCameraModeOff")]
public JoinDataComplete SupportsCameraModeOff = new JoinDataComplete(new JoinData { JoinNumber = 56, JoinSpan = 1 }, new JoinMetadata { Description = "Supports Camera Mode Off", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+
+ ///
+ /// Supports Presets
+ ///
[JoinName("SupportsPresets")]
public JoinDataComplete SupportsPresets = new JoinDataComplete(new JoinData { JoinNumber = 57, JoinSpan = 1 }, new JoinMetadata { Description = "Supports Presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CenOdtOccupancySensorBaseJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CenOdtOccupancySensorBaseJoinMap.cs
index 8ad097e6..b52c5309 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CenOdtOccupancySensorBaseJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/CenOdtOccupancySensorBaseJoinMap.cs
@@ -9,130 +9,226 @@ namespace PepperDash.Essentials.Core.Bridges
{
#region Digitals
+ ///
+ /// Online
+ ///
[JoinName("Online")]
public JoinDataComplete Online = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Force Occupied
+ ///
[JoinName("ForceOccupied")]
public JoinDataComplete ForceOccupied = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Force Occupied", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Force Vacant
+ ///
[JoinName("ForceVacant")]
public JoinDataComplete ForceVacant = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Force Vacant", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Raw States
+ ///
[JoinName("EnableRawStates")]
public JoinDataComplete EnableRawStates = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Raw States", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Raw States
+ ///
[JoinName("RoomOccupiedFeedback")]
public JoinDataComplete RoomOccupiedFeedback = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Room Occupied Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Grace Occupancy Detected Feedback
+ ///
[JoinName("GraceOccupancyDetectedFeedback")]
public JoinDataComplete GraceOccupancyDetectedFeedback = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Grace Occupancy Detected Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Room Vacant Feedback
+ ///
[JoinName("RoomVacantFeedback")]
public JoinDataComplete RoomVacantFeedback = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Room Vacant Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Raw Occupancy Feedback
+ ///
[JoinName("RawOccupancyFeedback")]
public JoinDataComplete RawOccupancyFeedback = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Raw Occupancy Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Raw Occupancy Pir Feedback
+ ///
[JoinName("RawOccupancyPirFeedback")]
public JoinDataComplete RawOccupancyPirFeedback = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Raw Occupancy Pir Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Raw Occupancy Us Feedback
+ ///
[JoinName("RawOccupancyUsFeedback")]
public JoinDataComplete RawOccupancyUsFeedback = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Raw Occupancy Us Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Identity Mode On
+ ///
[JoinName("IdentityModeOn")]
public JoinDataComplete IdentityMode = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Identity Mode", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Identity Mode Off
+ ///
[JoinName("IdentityModeFeedback")]
public JoinDataComplete IdentityModeFeedback = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Identity Mode Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Led Flash
+ ///
[JoinName("EnableLedFlash")]
public JoinDataComplete EnableLedFlash = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Led Flash", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Led Flash
+ ///
[JoinName("DisableLedFlash")]
public JoinDataComplete DisableLedFlash = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Disable Led Flash", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Short Timeout
+ ///
[JoinName("EnableShortTimeout")]
public JoinDataComplete EnableShortTimeout = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Short Timeout", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Short Timeout
+ ///
[JoinName("DisableShortTimeout")]
public JoinDataComplete DisableShortTimeout = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Disable Short Timeout", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Or When Vacated
+ ///
[JoinName("OrWhenVacated")]
public JoinDataComplete OrWhenVacated = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Or When Vacated", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// And When Vacated
+ ///
[JoinName("AndWhenVacated")]
public JoinDataComplete AndWhenVacated = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 1 },
new JoinMetadata { Description = "AndWhenVacated", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Us A
+ ///
[JoinName("EnableUsA")]
public JoinDataComplete EnableUsA = new JoinDataComplete(new JoinData { JoinNumber = 17, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Us A", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Us A
+ ///
[JoinName("DisableUsA")]
public JoinDataComplete DisableUsA = new JoinDataComplete(new JoinData { JoinNumber = 18, JoinSpan = 1 },
new JoinMetadata { Description = "Disable Us A", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Us B
+ ///
[JoinName("EnableUsB")]
public JoinDataComplete EnableUsB = new JoinDataComplete(new JoinData { JoinNumber = 19, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Us B", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Us B
+ ///
[JoinName("DisableUsB")]
public JoinDataComplete DisableUsB = new JoinDataComplete(new JoinData { JoinNumber = 20, JoinSpan = 1 },
new JoinMetadata { Description = "Disable Us B", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Enable Pir
+ ///
[JoinName("EnablePir")]
public JoinDataComplete EnablePir = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Pir", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Disable Pir
+ ///
[JoinName("DisablePir")]
public JoinDataComplete DisablePir = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "Disable Pir", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Increment Us In Occupied State
+ ///
[JoinName("IncrementUsInOccupiedState")]
public JoinDataComplete IncrementUsInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "Increment Us In OccupiedState", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Decrement Us In Occupied State
+ ///
[JoinName("DecrementUsInOccupiedState")]
public JoinDataComplete DecrementUsInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "Dencrement Us In Occupied State", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Increment Us In Vacant State
+ ///
[JoinName("IncrementUsInVacantState")]
public JoinDataComplete IncrementUsInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "Increment Us In VacantState", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Decrement Us In Vacant State
+ ///
[JoinName("DecrementUsInVacantState")]
public JoinDataComplete DecrementUsInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 26, JoinSpan = 1 },
new JoinMetadata { Description = "Decrement Us In VacantState", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Increment Pir In Occupied State
+ ///
[JoinName("IncrementPirInOccupiedState")]
public JoinDataComplete IncrementPirInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 27, JoinSpan = 1 },
new JoinMetadata { Description = "Increment Pir In Occupied State", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Decrement Pir In Occupied State
+ ///
[JoinName("DecrementPirInOccupiedState")]
public JoinDataComplete DecrementPirInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 28, JoinSpan = 1 },
new JoinMetadata { Description = "Decrement Pir In OccupiedState", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Increment Pir In Vacant State
+ ///
[JoinName("IncrementPirInVacantState")]
public JoinDataComplete IncrementPirInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 29, JoinSpan = 1 },
new JoinMetadata { Description = "Increment Pir In Vacant State", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Decrement Pir In Vacant State
+ ///
[JoinName("DecrementPirInVacantState")]
public JoinDataComplete DecrementPirInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "Decrement Pir In Vacant State", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
@@ -140,31 +236,51 @@ namespace PepperDash.Essentials.Core.Bridges
#endregion
#region Analog
-
+ ///
+ /// Timeout
+ ///
[JoinName("Timeout")]
public JoinDataComplete Timeout = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Timeout", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Timeout Local Feedback
+ ///
[JoinName("TimeoutLocalFeedback")]
public JoinDataComplete TimeoutLocalFeedback = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Timeout Local Feedback", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Internal PhotoSensor Value
+ ///
[JoinName("InternalPhotoSensorValue")]
public JoinDataComplete InternalPhotoSensorValue = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Internal PhotoSensor Value", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// External PhotoSensor Value
+ ///
[JoinName("UsSensitivityInOccupiedState")]
public JoinDataComplete UsSensitivityInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Us Sensitivity In Occupied State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Us Sensitivity In Vacant State
+ ///
[JoinName("UsSensitivityInVacantState")]
public JoinDataComplete UsSensitivityInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Us Sensitivity In Vacant State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Pir Sensitivity In Occupied State
+ ///
[JoinName("PirSensitivityInOccupiedState")]
public JoinDataComplete PirSensitivityInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Pir Sensitivity In Occupied State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Pir Sensitivity In Vacant State
+ ///
[JoinName("PirSensitivityInVacantState")]
public JoinDataComplete PirSensitivityInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Pir Sensitivity In Vacant State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
@@ -173,6 +289,9 @@ namespace PepperDash.Essentials.Core.Bridges
#region Serial
+ ///
+ /// Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DisplayControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DisplayControllerJoinMap.cs
index d200c591..3741f951 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DisplayControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DisplayControllerJoinMap.cs
@@ -7,62 +7,107 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DisplayControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// Power Off
+ ///
[JoinName("PowerOff")]
public JoinDataComplete PowerOff = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Power Off", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Power On
+ ///
[JoinName("PowerOn")]
public JoinDataComplete PowerOn = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Power On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Is Two Way Display
+ ///
[JoinName("IsTwoWayDisplay")]
public JoinDataComplete IsTwoWayDisplay = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Is Two Way Display", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Volume Up
+ ///
[JoinName("VolumeUp")]
public JoinDataComplete VolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Volume Level
+ ///
[JoinName("VolumeLevel")]
public JoinDataComplete VolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Level", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Volume Down
+ ///
[JoinName("VolumeDown")]
public JoinDataComplete VolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Volume Mute
+ ///
[JoinName("VolumeMute")]
public JoinDataComplete VolumeMute = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Mute", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Volume Mute On
+ ///
[JoinName("VolumeMuteOn")]
public JoinDataComplete VolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Mute On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Volume Mute Off
+ ///
[JoinName("VolumeMuteOff")]
public JoinDataComplete VolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "Volume Mute Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Input Select Offset
+ ///
[JoinName("InputSelectOffset")]
public JoinDataComplete InputSelectOffset = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 10 },
new JoinMetadata { Description = "Input Select", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Input Names Offset
+ ///
[JoinName("InputNamesOffset")]
public JoinDataComplete InputNamesOffset = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 10 },
new JoinMetadata { Description = "Input Names Offset", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// Input Select
+ ///
[JoinName("InputSelect")]
public JoinDataComplete InputSelect = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Input Select", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Button Visibility Offset
+ ///
[JoinName("ButtonVisibilityOffset")]
public JoinDataComplete ButtonVisibilityOffset = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 10 },
new JoinMetadata { Description = "Button Visibility Offset", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.DigitalSerial });
-
+
+ ///
+ /// Is Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 50, JoinSpan = 1 },
new JoinMetadata { Description = "Is Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmBladeChassisControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmBladeChassisControllerJoinMap.cs
index 99d59a7c..c6488bba 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmBladeChassisControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmBladeChassisControllerJoinMap.cs
@@ -6,50 +6,86 @@ namespace PepperDash.Essentials.Core.Bridges {
///
public class DmBladeChassisControllerJoinMap : JoinMapBaseAdvanced {
+ ///
+ /// DM Blade Chassis Online status
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "DM Blade Chassis Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Blade Input Video Sync
+ ///
[JoinName("VideoSyncStatus")]
public JoinDataComplete VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Input Video Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Blade Chassis Input Endpoint Online
+ ///
[JoinName("InputEndpointOnline")]
public JoinDataComplete InputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 501, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Input Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Blade Chassis Output Endpoint Online
+ ///
[JoinName("OutputEndpointOnline")]
public JoinDataComplete OutputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Output Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Blade Chassis Tx Advanced Is Present
+ ///
[JoinName("TxAdvancedIsPresent")]
public JoinDataComplete TxAdvancedIsPresent = new JoinDataComplete(new JoinData { JoinNumber = 1001, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Tx Advanced Is Present", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Blade Chassis Rx Advanced Is Present
+ ///
[JoinName("OutputVideo")]
public JoinDataComplete OutputVideo = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Output Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Blade Chassis Input HDCP Support State
+ ///
[JoinName("HdcpSupportState")]
public JoinDataComplete HdcpSupportState = new JoinDataComplete(new JoinData { JoinNumber = 1001, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Input HDCP Support State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Blade Chassis Input HDCP Support Capability
+ ///
[JoinName("HdcpSupportCapability")]
public JoinDataComplete HdcpSupportCapability = new JoinDataComplete(new JoinData { JoinNumber = 1201, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Input HDCP Support Capability", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Blade Chassis Input Names
+ ///
[JoinName("InputNames")]
public JoinDataComplete InputNames = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Blade Chassis Output Names
+ ///
[JoinName("OutputNames")]
public JoinDataComplete OutputNames = new JoinDataComplete(new JoinData { JoinNumber = 301, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Output Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Blade Chassis Video Output Currently Routed Video Input Name
+ ///
[JoinName("OutputCurrentVideoInputNames")]
public JoinDataComplete OutputCurrentVideoInputNames = new JoinDataComplete(new JoinData { JoinNumber = 2001, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Video Output Currently Routed Video Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Blade Chassis Input Current Resolution
+ ///
[JoinName("InputCurrentResolution")]
public JoinDataComplete InputCurrentResolution = new JoinDataComplete(new JoinData { JoinNumber = 2401, JoinSpan = 128 },
new JoinMetadata { Description = "DM Blade Chassis Input Current Resolution", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmChassisControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmChassisControllerJoinMap.cs
index 27770d81..9d2217cc 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmChassisControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmChassisControllerJoinMap.cs
@@ -7,6 +7,9 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DmChassisControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// DM Chassis enable audio breakaway routing
+ ///
[JoinName("EnableAudioBreakaway")]
public JoinDataComplete EnableAudioBreakaway = new JoinDataComplete(
new JoinData {JoinNumber = 4, JoinSpan = 1},
@@ -16,7 +19,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// DM Chassis enable USB breakaway routing
+ ///
[JoinName("EnableUsbBreakaway")]
public JoinDataComplete EnableUsbBreakaway = new JoinDataComplete(
new JoinData { JoinNumber = 5, JoinSpan = 1 },
@@ -26,83 +32,143 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// DM Chassis Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM Chassis Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis SystemId Get/Set/Trigger
+ ///
[JoinName("SystemId")]
public JoinDataComplete SystemId = new JoinDataComplete(new JoinData { JoinNumber = 10, JoinSpan = 1 },
new JoinMetadata { Description = "DM Chassis SystemId Get/Set/Trigger/", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.DigitalAnalog });
-
+
+ ///
+ /// DM Chassis Online status
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "DM Chassis Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Input Video Sync
+ ///
[JoinName("VideoSyncStatus")]
public JoinDataComplete VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Input Video Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Input Endpoint Online
+ ///
[JoinName("InputEndpointOnline")]
public JoinDataComplete InputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 501, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Output Endpoint Online
+ ///
[JoinName("OutputEndpointOnline")]
public JoinDataComplete OutputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Tx Advanced Is Present
+ ///
[JoinName("TxAdvancedIsPresent")]
public JoinDataComplete TxAdvancedIsPresent = new JoinDataComplete(new JoinData { JoinNumber = 1001, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Tx Advanced Is Present", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Rx Advanced Is Present
+ ///
[JoinName("OutputDisabledByHdcp")]
public JoinDataComplete OutputDisabledByHdcp = new JoinDataComplete(new JoinData { JoinNumber = 1201, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Disabled by HDCP", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Output Set / Get
+ ///
[JoinName("OutputVideo")]
public JoinDataComplete OutputVideo = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Video Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Output Audio Set / Get
+ ///
[JoinName("OutputAudio")]
public JoinDataComplete OutputAudio = new JoinDataComplete(new JoinData { JoinNumber = 301, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Audio Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input Set / Get
+ ///
[JoinName("OutputUsb")]
public JoinDataComplete OutputUsb = new JoinDataComplete(new JoinData { JoinNumber = 501, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output USB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input Set / Get
+ ///
[JoinName("InputUsb")]
public JoinDataComplete InputUsb = new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Usb Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input HDCP Support State
+ ///
[JoinName("HdcpSupportState")]
public JoinDataComplete HdcpSupportState = new JoinDataComplete(new JoinData { JoinNumber = 1001, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input HDCP Support State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input HDCP Support Capability
+ ///
[JoinName("HdcpSupportCapability")]
public JoinDataComplete HdcpSupportCapability = new JoinDataComplete(new JoinData { JoinNumber = 1201, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input HDCP Support Capability", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Stream Input Start (1), Stop (2), Pause (3) with Feedback
+ ///
[JoinName("InputStreamCardState")]
public JoinDataComplete InputStreamCardState = new JoinDataComplete(new JoinData { JoinNumber = 1501, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Stream Input Start (1), Stop (2), Pause (3) with Feedback", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Stream Output Start (1), Stop (2), Pause (3) with Feedback
+ ///
[JoinName("OutputStreamCardState")]
public JoinDataComplete OutputStreamCardState = new JoinDataComplete(new JoinData { JoinNumber = 1601, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Stream Output Start (1), Stop (2), Pause (3) with Feedback", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis No Route Name
+ ///
[JoinName("NoRouteName")]
public JoinDataComplete NoRouteName = new JoinDataComplete(new JoinData { JoinNumber = 100, JoinSpan = 1 },
new JoinMetadata { Description = "DM Chassis Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Input Names
+ ///
[JoinName("InputNames")]
public JoinDataComplete InputNames = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Output Names
+ ///
[JoinName("OutputNames")]
public JoinDataComplete OutputNames = new JoinDataComplete(new JoinData { JoinNumber = 301, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Video Input Names
+ ///
[JoinName("InputVideoNames")] public JoinDataComplete InputVideoNames =
new JoinDataComplete(new JoinData {JoinNumber = 501, JoinSpan = 200},
new JoinMetadata
@@ -111,7 +177,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
JoinType = eJoinType.Serial
});
-
+
+ ///
+ /// DM Chassis Audio Input Names
+ ///
[JoinName("InputAudioNames")]
public JoinDataComplete InputAudioNames =
new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 200 },
@@ -121,6 +190,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
JoinType = eJoinType.Serial
});
+
+ ///
+ /// DM Chassis Video Output Names
+ ///
[JoinName("OutputVideoNames")]
public JoinDataComplete OutputVideoNames =
new JoinDataComplete(new JoinData { JoinNumber = 901, JoinSpan = 200 },
@@ -130,6 +203,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
JoinType = eJoinType.Serial
});
+
+ ///
+ /// DM Chassis Audio Output Names
+ ///
[JoinName("OutputAudioNames")]
public JoinDataComplete OutputAudioNames =
new JoinDataComplete(new JoinData { JoinNumber = 1101, JoinSpan = 200 },
@@ -139,15 +216,24 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
JoinType = eJoinType.Serial
});
-
+
+ ///
+ /// DM Chassis Video Output Currently Routed Video Input Name
+ ///
[JoinName("OutputCurrentVideoInputNames")]
public JoinDataComplete OutputCurrentVideoInputNames = new JoinDataComplete(new JoinData { JoinNumber = 2001, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Video Output Currently Routed Video Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Audio Output Currently Routed Audio Input Name
+ ///
[JoinName("OutputCurrentAudioInputNames")]
public JoinDataComplete OutputCurrentAudioInputNames = new JoinDataComplete(new JoinData { JoinNumber = 2201, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Audio Output Currently Routed Video Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Input Current Resolution
+ ///
[JoinName("InputCurrentResolution")]
public JoinDataComplete InputCurrentResolution = new JoinDataComplete(new JoinData { JoinNumber = 2401, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Current Resolution", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmRmcControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmRmcControllerJoinMap.cs
index 6eae5037..6f0df102 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmRmcControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmRmcControllerJoinMap.cs
@@ -7,66 +7,114 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DmRmcControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// DM RMC Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM RMC Mute Video
+ ///
[JoinName("VideoMuteOn")]
public JoinDataComplete VideoMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Mute Video", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM RMC UnMute Video
+ ///
[JoinName("VideoMuteOff")]
public JoinDataComplete VideoMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC UnMute Video", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM RMC Mute Video Toggle
+ ///
[JoinName("VideoMuteToggle")]
public JoinDataComplete VideoMuteToggle = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Mute Video Toggle", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM RMC Current Output Resolution
+ ///
[JoinName("CurrentOutputResolution")]
public JoinDataComplete CurrentOutputResolution = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Current Output Resolution", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC EDID Manufacturer
+ ///
[JoinName("EdidManufacturer")]
public JoinDataComplete EdidManufacturer = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC EDID Manufacturer", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC EDID Name
+ ///
[JoinName("EdidName")]
public JoinDataComplete EdidName = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC EDID Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC EDID Preferred Timing
+ ///
[JoinName("EdidPrefferedTiming")]
public JoinDataComplete EdidPrefferedTiming = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC EDID Preferred Timing", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC EDID Serial Number
+ ///
[JoinName("EdidSerialNumber")]
public JoinDataComplete EdidSerialNumber = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC EDID Serial Number", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM RMC Audio Video Source Set / Get
+ ///
[JoinName("AudioVideoSource")]
public JoinDataComplete AudioVideoSource = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Audio Video Source Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM RMC HDCP Support Capability
+ ///
[JoinName("HdcpSupportCapability")]
public JoinDataComplete HdcpSupportCapability = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC HDCP Support Capability", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM RMC Port 1 (DM) HDCP State Set / Get
+ ///
[JoinName("Port1HdcpState")]
public JoinDataComplete Port1HdcpState = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC Port 1 (DM) HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM RMC Port 2 (HDMI) HDCP State Set / Get
+ ///
[JoinName("Port2HdcpState")]
public JoinDataComplete Port2HdcpState = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
- new JoinMetadata { Description = "DM TX Port 2 (HDMI) HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+ new JoinMetadata { Description = "DM RMC Port 2 (HDMI) HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+
+ ///
+ /// DM RMC HDMI Input Sync
+ ///
[JoinName("HdmiInputSync")]
public JoinDataComplete HdmiInputSync = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM RMC HDMI Input Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM RMC Number of Input Ports that support HDCP
+ ///
[JoinName("HdcpInputPortCount")]
public JoinDataComplete HdcpInputPortCount = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Number of Input Ports that support HDCP", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmTxControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmTxControllerJoinMap.cs
index 6aec8c33..ab1299d1 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmTxControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmTxControllerJoinMap.cs
@@ -7,70 +7,121 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DmTxControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// DM TX Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM TX Video Sync
+ ///
[JoinName("VideoSyncStatus")]
public JoinDataComplete VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Video Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM TX Enable Free Run Set / Get
+ ///
[JoinName("FreeRunEnabled")]
public JoinDataComplete FreeRunEnabled = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Enable Free Run Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Input 1 Video Sync Status
+ ///
[JoinName("Input1VideoSyncStatus")]
public JoinDataComplete Input1VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Input 1 Video Sync Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Input 2 Video Sync Status
+ ///
[JoinName("Input2VideoSyncStatus")]
public JoinDataComplete Input2VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Input 2 Video Sync Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Input 3 Video Sync Status
+ ///
[JoinName("Input3VideoSyncStatus")]
public JoinDataComplete Input3VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Input 3 Video Sync Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM TX Current Input Resolution
+ ///
[JoinName("CurrentInputResolution")]
public JoinDataComplete CurrentInputResolution = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Current Input Resolution", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM TX Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM TX Video Input Set / Get
+ ///
[JoinName("VideoInput")]
public JoinDataComplete VideoInput = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Video Input Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX Audio Input Set / Get
+ ///
[JoinName("AudioInput")]
public JoinDataComplete AudioInput = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Audio Input Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX HDCP Support Capability
+ ///
[JoinName("HdcpSupportCapability")]
public JoinDataComplete HdcpSupportCapability = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX HDCP Support Capability", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX Port 1 HDCP State Set / Get
+ ///
[JoinName("Port1HdcpState")]
public JoinDataComplete Port1HdcpState = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Port 1 HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX Port 2 HDCP State Set / Get
+ ///
[JoinName("Port2HdcpState")]
public JoinDataComplete Port2HdcpState = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Port 2 HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX VGA Brightness
+ ///
[JoinName("VgaBrightness")]
public JoinDataComplete VgaBrightness = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX VGA Brightness", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX VGA Contrast
+ ///
[JoinName("VgaContrast")]
public JoinDataComplete VgaContrast = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Online", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX Port 3 HDCP State Set / Get
+ ///
[JoinName("Port3HdcpState")]
public JoinDataComplete Port3HdcpState = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "DM TX Port 3 HDCP State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM TX Number of Input Ports that support HDCP
+ ///
[JoinName("HdcpInputPortCount")]
public JoinDataComplete HdcpInputPortCount = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "Number of Input Ports that support HDCP", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsAudioOutputControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsAudioOutputControllerJoinMap.cs
index 7ab0900d..ca1d60b4 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsAudioOutputControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsAudioOutputControllerJoinMap.cs
@@ -8,150 +8,261 @@ namespace PepperDash.Essentials.Core.Bridges
public class DmpsAudioOutputControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Master Volume Level Signed dB Set / Get
+ ///
[JoinName("MasterVolumeLevel")]
public JoinDataComplete MasterVolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Signed dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Master Volume 16bit Scaled Set / Get
+ ///
[JoinName("MasterVolumeLevelScaled")]
public JoinDataComplete MasterVolumeLevelScaled = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Mixer Preset Recall Set
+ ///
[JoinName("MixerPresetRecall")]
public JoinDataComplete MixerPresetRecall = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Mixer Preset Recall Set", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Mixer Eq Preset Recall Set
+ ///
[JoinName("MixerEqPresetRecall")]
public JoinDataComplete MixerEqPresetRecall = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Mixer Eq Preset Recall Set", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Master Volume Mute On Set / Get
+ ///
[JoinName("MasterVolumeMuteOn")]
public JoinDataComplete MasterVolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Master Volume Mute Off Set / Get
+ ///
[JoinName("MasterVolumeMuteOff")]
public JoinDataComplete MasterVolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Master Volume Level Up
+ ///
[JoinName("MasterVolumeUp")]
public JoinDataComplete MasterVolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Level Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Master Volume Level Down
+ ///
[JoinName("MasterVolumeDown")]
public JoinDataComplete MasterVolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Level Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Master Volume Scaled Send Enable/Disable
+ ///
[JoinName("MasterVolumeLevelScaledSend")]
public JoinDataComplete MasterVolumeLevelScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Master Volume Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Source Volume Signed dB Set / Get
+ ///
[JoinName("SourceVolumeLevel")]
public JoinDataComplete SourceVolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Signed dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Source Volume 16bit Scaled Set / Get
+ ///
[JoinName("SourceVolumeLevelScaled")]
public JoinDataComplete SourceVolumeLevelScaled = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Source Volume Mute On Set / Get
+ ///
[JoinName("SourceVolumeMuteOn")]
public JoinDataComplete SourceVolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Source Volume Mute Off Set / Get
+ ///
[JoinName("SourceVolumeMuteOff")]
public JoinDataComplete SourceVolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Source Volume Level Up
+ ///
[JoinName("SourceVolumeUp")]
public JoinDataComplete SourceVolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Level Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Source Volume Level Down
+ ///
[JoinName("SourceVolumeDown")]
public JoinDataComplete SourceVolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Level Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Source Volume Scaled Send Enable/Disable
+ ///
[JoinName("SourceVolumeLevelScaledSend")]
public JoinDataComplete SourceVolumeLevelScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Source Volume Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec1 Volume Signed dB Set / Get
+ ///
[JoinName("Codec1VolumeLevel")]
public JoinDataComplete Codec1VolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Signed dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Codec1 Volume 16bit Scaled Set / Get
+ ///
[JoinName("Codec1VolumeLevelScaled")]
public JoinDataComplete Codec1VolumeLevelScaled = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Codec1 Volume Mute On Set / Get
+ ///
[JoinName("Codec1VolumeMuteOn")]
public JoinDataComplete Codec1VolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec1 Volume Mute Off Set / Get
+ ///
[JoinName("Codec1VolumeMuteOff")]
public JoinDataComplete Codec1VolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec1 Volume Level Up
+ ///
[JoinName("Codec1VolumeUp")]
public JoinDataComplete Codec1VolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Level Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec1 Volume Level Down
+ ///
[JoinName("Codec1VolumeDown")]
public JoinDataComplete Codec1VolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Level Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec1 Volume Scaled Send Enable/Disable
+ ///
[JoinName("Codec1VolumeLevelScaledSend")]
public JoinDataComplete Codec1VolumeLevelScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "Codec1 Volume Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec2 Volume Signed dB Set / Get
+ ///
[JoinName("Codec2VolumeLevel")]
public JoinDataComplete Codec2VolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Signed dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Codec2 Volume 16bit Scaled Set / Get
+ ///
[JoinName("Codec2VolumeLevelScaled")]
public JoinDataComplete Codec2VolumeLevelScaled = new JoinDataComplete(new JoinData { JoinNumber = 32, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Codec2 Volume Mute On Set / Get
+ ///
[JoinName("Codec2VolumeMuteOn")]
public JoinDataComplete Codec2VolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec2 Volume Mute Off Set / Get
+ ///
[JoinName("Codec2VolumeMuteOff")]
public JoinDataComplete Codec2VolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 32, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec2 Volume Level Up
+ ///
[JoinName("Codec2VolumeUp")]
public JoinDataComplete Codec2VolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 33, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Level Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec2 Volume Level Down
+ ///
[JoinName("Codec2VolumeDown")]
public JoinDataComplete Codec2VolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 34, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Level Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Codec2 Volume Scaled Send Enable/Disable
+ ///
[JoinName("Codec2VolumeLevelScaledSend")]
public JoinDataComplete Codec2VolumeLevelScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 35, JoinSpan = 1 },
new JoinMetadata { Description = "Codec2 Volume Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// MicsMaster Volume Signed dB Set / Get
+ ///
[JoinName("MicsMasterVolumeLevel")]
public JoinDataComplete MicsMasterVolumeLevel = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume Signed dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// MicsMaster Volume 16bit Scaled Set / Get
+ ///
[JoinName("MicsMasterVolumeLevelScaled")]
public JoinDataComplete MicsMasterVolumeLevelScaled = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// MicsMaster Volume Mute On Set / Get
+ ///
[JoinName("MicsMasterVolumeMuteOn")]
public JoinDataComplete MicsMasterVolumeMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// MicsMaster Volume Mute Off Set / Get
+ ///
[JoinName("MicsMasterVolumeMuteOff")]
public JoinDataComplete MicsMasterVolumeMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// MicsMaster Volume Level Up
+ ///
[JoinName("MicsMasterVolumeUp")]
public JoinDataComplete MicsMasterVolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume Level Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// MicsMaster Volume Level Down
+ ///
[JoinName("MicsMasterVolumeDown")]
public JoinDataComplete MicsMasterVolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 44, JoinSpan = 1 },
new JoinMetadata { Description = "MicsMaster Volume Level Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// MicsMaster Volume Scaled Send Enable/Disable
+ ///
[JoinName("MicsMasterVolumeLevelScaledSend")]
public JoinDataComplete MicsMasterVolumeLevelScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 45, JoinSpan = 1 },
new JoinMetadata { Description = "Mics Master Volume Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsMicrophoneControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsMicrophoneControllerJoinMap.cs
index 91f642bb..3fba12e5 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsMicrophoneControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsMicrophoneControllerJoinMap.cs
@@ -7,26 +7,45 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DmpsMicrophoneControllerJoinMap : JoinMapBaseAdvanced
{
+
+ ///
+ /// Mic Gain dB Set / Get
+ ///
[JoinName("MicGain")]
public JoinDataComplete MicGain = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Gain dB Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Mic Gain 16bit Scaled Set / Get
+ ///
[JoinName("MicGainScaled")]
public JoinDataComplete MicGainScaled = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Gain 16bit Scaled Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Mic Mute On Set / Get
+ ///
[JoinName("MicMuteOn")]
public JoinDataComplete MicMuteOn = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Mute On Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Mic Mute Off Set / Get
+ ///
[JoinName("MicMuteOff")]
public JoinDataComplete MicMuteOff = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Mute Off Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Mic Gain Scaled Send Enable/Disable
+ ///
[JoinName("MicGainScaledSend")]
public JoinDataComplete MicGainScaledSend = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Gain Scaled Send Enable/Disable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Mic Name Get
+ ///
[JoinName("MicName")]
public JoinDataComplete MicName = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Mic Name Get", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsRoutingControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsRoutingControllerJoinMap.cs
index 71ce39a6..8e9a3e97 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsRoutingControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/DmpsRoutingControllerJoinMap.cs
@@ -7,64 +7,106 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class DmpsRoutingControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// DMPS Enable Audio and Video Routing
+ ///
[JoinName("EnableRouting")]
public JoinDataComplete EnableRouting = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "DMPS Enable Audio and Video Routing", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DMPS Disable Audio and Video Routing
+ ///
[JoinName("SystemPowerOn")]
public JoinDataComplete SystemPowerOn = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "DMPS System Power On Get/Set", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DMPS Disable Audio and Video Routing
+ ///
[JoinName("SystemPowerOff")]
public JoinDataComplete SystemPowerOff = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "DMPS System Power Off Get/Set", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DMPS Front Panel Lock On Get/Set
+ ///
[JoinName("FrontPanelLockOn")]
public JoinDataComplete FrontPanelLockOn = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "DMPS Front Panel Lock On Get/Set", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DMPS Front Panel Lock Off Get/Set
+ ///
[JoinName("FrontPanelLockOff")]
public JoinDataComplete FrontPanelLockOff = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "DMPS Front Panel Lock Off Get/Set", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Input Video Sync
+ ///
[JoinName("VideoSyncStatus")]
public JoinDataComplete VideoSyncStatus = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Input Video Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Input Endpoint Online
+ ///
[JoinName("InputEndpointOnline")]
public JoinDataComplete InputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 501, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Output Endpoint Online
+ ///
[JoinName("OutputEndpointOnline")]
public JoinDataComplete OutputEndpointOnline = new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Endpoint Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// DM Chassis Input Video Set / Get
+ ///
[JoinName("OutputVideo")]
public JoinDataComplete OutputVideo = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Video Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input Audio Set / Get
+ ///
[JoinName("OutputAudio")]
public JoinDataComplete OutputAudio = new JoinDataComplete(new JoinData { JoinNumber = 301, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Audio Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// DM Chassis Input Name
+ ///
[JoinName("InputNames")]
public JoinDataComplete InputNames = new JoinDataComplete(new JoinData { JoinNumber = 101, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Output Name
+ ///
[JoinName("OutputNames")]
public JoinDataComplete OutputNames = new JoinDataComplete(new JoinData { JoinNumber = 301, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Output Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Video Input Name
+ ///
[JoinName("InputVideoNames")]
public JoinDataComplete InputVideoNames =
new JoinDataComplete(new JoinData { JoinNumber = 501, JoinSpan = 32 },
new JoinMetadata
{
- Description = "Video Input Name",
+ Description = "DM Chassis Video Input Name",
JoinCapabilities = eJoinCapabilities.ToSIMPL,
JoinType = eJoinType.Serial
});
-
+
+ ///
+ /// DM Chassis Audio Input Name
+ ///
[JoinName("InputAudioNames")]
public JoinDataComplete InputAudioNames =
new JoinDataComplete(new JoinData { JoinNumber = 701, JoinSpan = 32 },
@@ -74,6 +116,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToSIMPL,
JoinType = eJoinType.Serial
});
+
+ ///
+ /// DM Chassis Video Output Name
+ ///
[JoinName("OutputVideoNames")]
public JoinDataComplete OutputVideoNames =
new JoinDataComplete(new JoinData { JoinNumber = 901, JoinSpan = 32 },
@@ -83,6 +129,10 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToSIMPL,
JoinType = eJoinType.Serial
});
+
+ ///
+ /// DM Chassis Audio Output Name
+ ///
[JoinName("OutputAudioNames")]
public JoinDataComplete OutputAudioNames =
new JoinDataComplete(new JoinData { JoinNumber = 1101, JoinSpan = 32 },
@@ -92,15 +142,24 @@ namespace PepperDash.Essentials.Core.Bridges
JoinCapabilities = eJoinCapabilities.ToSIMPL,
JoinType = eJoinType.Serial
});
-
+
+ ///
+ /// DM Chassis Video Output Currently Routed Video Input Name
+ ///
[JoinName("OutputCurrentVideoInputNames")]
public JoinDataComplete OutputCurrentVideoInputNames = new JoinDataComplete(new JoinData { JoinNumber = 2001, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Video Output Currently Routed Video Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Audio Output Currently Routed Video Input Name
+ ///
[JoinName("OutputCurrentAudioInputNames")]
public JoinDataComplete OutputCurrentAudioInputNames = new JoinDataComplete(new JoinData { JoinNumber = 2201, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Audio Output Currently Routed Video Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
-
+
+ ///
+ /// DM Chassis Input Current Resolution
+ ///
[JoinName("InputCurrentResolution")]
public JoinDataComplete InputCurrentResolution = new JoinDataComplete(new JoinData { JoinNumber = 2401, JoinSpan = 32 },
new JoinMetadata { Description = "DM Chassis Input Current Resolution", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericIrControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericIrControllerJoinMap.cs
index 388e6ac1..57977737 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericIrControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericIrControllerJoinMap.cs
@@ -2,8 +2,14 @@
namespace PepperDash.Essentials.Core.Bridges.JoinMaps
{
+ ///
+ /// Represents a GenericIrControllerJoinMap
+ ///
public sealed class GenericIrControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// PLAY
+ ///
[JoinName("PLAY")]
public JoinDataComplete Play = new JoinDataComplete(
new JoinData
@@ -17,7 +23,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// STOP
+ ///
[JoinName("STOP")]
public JoinDataComplete Stop = new JoinDataComplete(
new JoinData
@@ -31,7 +40,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// PAUSE
+ ///
[JoinName("PAUSE")]
public JoinDataComplete Pause = new JoinDataComplete(
new JoinData
@@ -46,6 +58,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// FSCAN
+ ///
[JoinName("FSCAN")]
public JoinDataComplete ForwardScan = new JoinDataComplete(
new JoinData
@@ -60,6 +75,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// RSCAN
+ ///
[JoinName("RSCAN")]
public JoinDataComplete ReverseScan = new JoinDataComplete(
new JoinData
@@ -73,7 +91,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// F_SKIP
+ ///
[JoinName("F_SKIP")]
public JoinDataComplete ForwardSkip = new JoinDataComplete(
new JoinData
@@ -88,6 +109,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// R_SKIP
+ ///
[JoinName("R_SKIP")]
public JoinDataComplete ReverseSkip = new JoinDataComplete(
new JoinData
@@ -101,7 +125,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// RECORD
+ ///
[JoinName("RECORD")]
public JoinDataComplete Record = new JoinDataComplete(
new JoinData
@@ -116,6 +143,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// POWER
+ ///
[JoinName("POWER")]
public JoinDataComplete Power = new JoinDataComplete(
new JoinData
@@ -130,6 +160,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// 0
+ ///
[JoinName("0")]
public JoinDataComplete Kp0 = new JoinDataComplete(
new JoinData
@@ -143,7 +176,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 1
+ ///
[JoinName("1")]
public JoinDataComplete Kp1 = new JoinDataComplete(
new JoinData
@@ -157,7 +193,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 2
+ ///
[JoinName("2")]
public JoinDataComplete Kp2 = new JoinDataComplete(
new JoinData
@@ -171,7 +210,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 3
+ ///
[JoinName("3")]
public JoinDataComplete Kp3 = new JoinDataComplete(
new JoinData
@@ -185,7 +227,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 4
+ ///
[JoinName("4")]
public JoinDataComplete Kp4 = new JoinDataComplete(
new JoinData
@@ -199,7 +244,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 5
+ ///
[JoinName("5")]
public JoinDataComplete Kp5 = new JoinDataComplete(
new JoinData
@@ -213,7 +261,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 6
+ ///
[JoinName("6")]
public JoinDataComplete Kp6 = new JoinDataComplete(
new JoinData
@@ -227,7 +278,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 7
+ ///
[JoinName("7")]
public JoinDataComplete Kp7 = new JoinDataComplete(
new JoinData
@@ -241,7 +295,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 8
+ ///
[JoinName("8")]
public JoinDataComplete Kp8 = new JoinDataComplete(
new JoinData
@@ -255,7 +312,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// 9
+ ///
[JoinName("9")]
public JoinDataComplete Kp9 = new JoinDataComplete(
new JoinData
@@ -283,7 +343,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
// JoinCapabilities = eJoinCapabilities.FromSIMPL,
// JoinType = eJoinType.Digital
// });
-
+
+ ///
+ /// ENTER
+ ///
[JoinName("ENTER")]
public JoinDataComplete Enter = new JoinDataComplete(
new JoinData
@@ -297,7 +360,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// CH+
+ ///
[JoinName("CH+")]
public JoinDataComplete ChannelUp = new JoinDataComplete(
new JoinData
@@ -311,7 +377,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// CH-
+ ///
[JoinName("CH-")]
public JoinDataComplete ChannelDown = new JoinDataComplete(
new JoinData
@@ -325,7 +394,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// *
+ ///
[JoinName("*")]
public JoinDataComplete KpStar = new JoinDataComplete(
new JoinData
@@ -339,7 +411,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// #
+ ///
[JoinName("#")]
public JoinDataComplete KpPound = new JoinDataComplete(
new JoinData
@@ -368,6 +443,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
// JoinType = eJoinType.Digital
// });
+ ///
+ /// POWER_ON
+ ///
[JoinName("POWER_ON")]
public JoinDataComplete PowerOn = new JoinDataComplete(
new JoinData
@@ -381,7 +459,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// POWER_OFF
+ ///
[JoinName("POWER_OFF")]
public JoinDataComplete PowerOff = new JoinDataComplete(
new JoinData
@@ -395,7 +476,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// PLAY_PAUSE
+ ///
[JoinName("PLAY_PAUSE")]
public JoinDataComplete PlayPause = new JoinDataComplete(
new JoinData
@@ -409,7 +493,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// LAST
+ ///
[JoinName("LAST")]
public JoinDataComplete Last = new JoinDataComplete(
new JoinData
@@ -424,6 +511,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// HOME
+ ///
[JoinName("HOME")]
public JoinDataComplete Home = new JoinDataComplete(
new JoinData
@@ -438,6 +528,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// BACK
+ ///
[JoinName("BACK")]
public JoinDataComplete Back = new JoinDataComplete(
new JoinData
@@ -452,7 +545,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// GUIDE
+ ///
[JoinName("GUIDE")]
public JoinDataComplete Guide = new JoinDataComplete(
new JoinData
@@ -466,7 +561,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// INFO
+ ///
[JoinName("INFO")]
public JoinDataComplete Info = new JoinDataComplete(
new JoinData
@@ -480,7 +578,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// MENU
+ ///
[JoinName("MENU")]
public JoinDataComplete Menu = new JoinDataComplete(
new JoinData
@@ -494,7 +595,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// UP_ARROW
+ ///
[JoinName("UP_ARROW")]
public JoinDataComplete DpadUp = new JoinDataComplete(
new JoinData
@@ -508,7 +612,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// DN_ARROW
+ ///
[JoinName("DN_ARROW")]
public JoinDataComplete DpadDown = new JoinDataComplete(
new JoinData
@@ -522,7 +629,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// LEFT_ARROW
+ ///
[JoinName("LEFT_ARROW")]
public JoinDataComplete DpadLeft = new JoinDataComplete(
new JoinData
@@ -536,7 +646,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// RIGHT_ARROW
+ ///
[JoinName("RIGHT_ARROW")]
public JoinDataComplete DpadRight = new JoinDataComplete(
new JoinData
@@ -550,7 +663,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// SELECT
+ ///
[JoinName("SELECT")]
public JoinDataComplete DpadSelect = new JoinDataComplete(
new JoinData
@@ -564,7 +680,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// OPTIONS
+ ///
[JoinName("OPTIONS")]
public JoinDataComplete Options = new JoinDataComplete(
new JoinData
@@ -578,7 +697,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// RETURN
+ ///
[JoinName("RETURN")]
public JoinDataComplete Return = new JoinDataComplete(
new JoinData
@@ -593,6 +715,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DVR
+ ///
[JoinName("DVR")]
public JoinDataComplete Dvr = new JoinDataComplete(
new JoinData
@@ -607,7 +732,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// ON_DEMAND
+ ///
[JoinName("ON_DEMAND")]
public JoinDataComplete OnDemand = new JoinDataComplete(
new JoinData
@@ -622,7 +749,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// PAGE_UP
+ ///
[JoinName("PAGE_UP")]
public JoinDataComplete PageUp = new JoinDataComplete(
new JoinData
@@ -636,7 +765,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// PAGE_DOWN
+ ///
[JoinName("PAGE_DOWN")]
public JoinDataComplete PageDown = new JoinDataComplete(
new JoinData
@@ -650,7 +782,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// F_SRCH
+ ///
[JoinName("F_SRCH")]
public JoinDataComplete ForwardSearch = new JoinDataComplete(
new JoinData
@@ -664,7 +799,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// R_SRCH
+ ///
[JoinName("R_SRCH")]
public JoinDataComplete ReverseSearch = new JoinDataComplete(
new JoinData
@@ -678,7 +816,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// TRACK+
+ ///
[JoinName("TRACK+")]
public JoinDataComplete TrackPlus = new JoinDataComplete(
new JoinData
@@ -692,7 +833,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// TRACK-
+ ///
[JoinName("TRACK-")]
public JoinDataComplete TrackMinus = new JoinDataComplete(
new JoinData
@@ -707,6 +851,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// A
+ ///
[JoinName("A")]
public JoinDataComplete KpA = new JoinDataComplete(
new JoinData
@@ -720,7 +867,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// B
+ ///
[JoinName("B")]
public JoinDataComplete KpB = new JoinDataComplete(
new JoinData
@@ -734,7 +884,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// C
+ ///
[JoinName("C")]
public JoinDataComplete KpC = new JoinDataComplete(
new JoinData
@@ -748,7 +901,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// D
+ ///
[JoinName("D")]
public JoinDataComplete KpD = new JoinDataComplete(
new JoinData
@@ -762,7 +918,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// RED
+ ///
[JoinName("RED")]
public JoinDataComplete KpRed = new JoinDataComplete(
new JoinData
@@ -776,7 +935,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// GREEN
+ ///
[JoinName("GREEN")]
public JoinDataComplete KpGreen = new JoinDataComplete(
new JoinData
@@ -790,7 +952,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// YELLOW
+ ///
[JoinName("YELLOW")]
public JoinDataComplete KpYellow = new JoinDataComplete(
new JoinData
@@ -804,7 +969,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.FromSIMPL,
JoinType = eJoinType.Digital
});
-
+
+ ///
+ /// BLUE
+ ///
[JoinName("BLUE")]
public JoinDataComplete KpBlue = new JoinDataComplete(
new JoinData
@@ -819,6 +987,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Constructor
+ ///
+ /// Join this join map will start at
public GenericIrControllerJoinMap(uint joinStart)
: base(joinStart, typeof(GenericIrControllerJoinMap))
{
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericLightingJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericLightingJoinMap.cs
index e98fdaf3..2b684d9f 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericLightingJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericLightingJoinMap.cs
@@ -9,22 +9,37 @@ namespace PepperDash.Essentials.Core.Bridges
public class GenericLightingJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Lighting Controller Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Lighting Controller Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Select Scene By Index
+ ///
[JoinName("SelectScene")]
public JoinDataComplete SelectScene = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Lighting Controller Select Scene By Index", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Select Scene Direct
+ ///
[JoinName("SelectSceneDirect")]
public JoinDataComplete SelectSceneDirect = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 10 },
new JoinMetadata { Description = "Lighting Controller Select Scene", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.DigitalSerial });
-
+
+ ///
+ /// Button Visibility
+ ///
[JoinName("ButtonVisibility")]
public JoinDataComplete ButtonVisibility = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 10 },
new JoinMetadata { Description = "Lighting Controller Button Visibility", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Set Integration Id
+ ///
[JoinName("IntegrationIdSet")]
public JoinDataComplete IntegrationIdSet = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Lighting Controller Set Integration Id", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericRelayControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericRelayControllerJoinMap.cs
index 65e49843..470dc4e1 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericRelayControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GenericRelayControllerJoinMap.cs
@@ -8,6 +8,9 @@ namespace PepperDash.Essentials.Core.Bridges
public class GenericRelayControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Device Relay State Set / Get
+ ///
[JoinName("Relay")]
public JoinDataComplete Relay = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Device Relay State Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsOccupancySensorBaseJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsOccupancySensorBaseJoinMap.cs
index ca223921..23341e7e 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsOccupancySensorBaseJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsOccupancySensorBaseJoinMap.cs
@@ -7,158 +7,275 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class GlsOccupancySensorBaseJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Occ Sensor Is Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Is Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Set to Occupied
+ ///
[JoinName("ForceOccupied")]
public JoinDataComplete ForceOccupied = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Set to Occupied", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Set to Vacant
+ ///
[JoinName("ForceVacant")]
public JoinDataComplete ForceVacant = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Set to Vacant", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable Raw
+ ///
[JoinName("EnableRawStates")]
public JoinDataComplete EnableRawStates = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable Raw", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable Raw
+ ///
[JoinName("RoomOccupiedFeedback")]
public JoinDataComplete RoomOccupiedFeedback = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Room Is Occupied", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Grace Occupancy Detected
+ ///
[JoinName("GraceOccupancyDetectedFeedback")]
public JoinDataComplete GraceOccupancyDetectedFeedback = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Grace Occupancy Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Room Is Vacant
+ ///
[JoinName("RoomVacantFeedback")]
public JoinDataComplete RoomVacantFeedback = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Room Is Vacant", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Raw Occupancy Detected
+ ///
[JoinName("RawOccupancyFeedback")]
public JoinDataComplete RawOccupancyFeedback = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Raw Occupancy Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Raw PIR Occupancy Detected
+ ///
[JoinName("RawOccupancyPirFeedback")]
public JoinDataComplete RawOccupancyPirFeedback = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Raw PIR Occupancy Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Raw US Occupancy Detected
+ ///
[JoinName("RawOccupancyUsFeedback")]
public JoinDataComplete RawOccupancyUsFeedback = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Raw US Occupancy Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable LED Flash
+ ///
[JoinName("EnableLedFlash")]
public JoinDataComplete EnableLedFlash = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable LED Flash", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable LED Flash
+ ///
[JoinName("DisableLedFlash")]
public JoinDataComplete DisableLedFlash = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Disable LED Flash", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable Short Timeout
+ ///
[JoinName("EnableShortTimeout")]
public JoinDataComplete EnableShortTimeout = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable Short Timeout", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable Short Timeout
+ ///
[JoinName("DisableShortTimeout")]
public JoinDataComplete DisableShortTimeout = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Disable Short Timeout", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Set To Vacant when Either Sensor is Vacant
+ ///
[JoinName("OrWhenVacated")]
public JoinDataComplete OrWhenVacated = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Set To Vacant when Either Sensor is Vacant", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Set To Vacant when Both Sensors are Vacant
+ ///
[JoinName("AndWhenVacated")]
public JoinDataComplete AndWhenVacated = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Set To Vacant when Both Sensors are Vacant", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable Ultrasonic Sensor A
+ ///
[JoinName("EnableUsA")]
public JoinDataComplete EnableUsA = new JoinDataComplete(new JoinData { JoinNumber = 17, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable Ultrasonic Sensor A", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable Ultrasonic Sensor A
+ ///
[JoinName("DisableUsA")]
public JoinDataComplete DisableUsA = new JoinDataComplete(new JoinData { JoinNumber = 18, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Disable Ultrasonic Sensor A", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable Ultrasonic Sensor B
+ ///
[JoinName("EnableUsB")]
public JoinDataComplete EnableUsB = new JoinDataComplete(new JoinData { JoinNumber = 19, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable Ultrasonic Sensor B", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable Ultrasonic Sensor B
+ ///
[JoinName("DisableUsB")]
public JoinDataComplete DisableUsB = new JoinDataComplete(new JoinData { JoinNumber = 20, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Disable Ultrasonic Sensor B", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Enable IR Sensor
+ ///
[JoinName("EnablePir")]
public JoinDataComplete EnablePir = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Enable IR Sensor", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Disable IR Sensor
+ ///
[JoinName("DisablePir")]
public JoinDataComplete DisablePir = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Disable IR Sensor", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Increment US Occupied State Sensitivity
+ ///
[JoinName("IncrementUsInOccupiedState")]
public JoinDataComplete IncrementUsInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Increment US Occupied State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Decrement US Occupied State Sensitivity
+ ///
[JoinName("DecrementUsInOccupiedState")]
public JoinDataComplete DecrementUsInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Decrement US Occupied State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Increment US Vacant State Sensitivity
+ ///
[JoinName("IncrementUsInVacantState")]
public JoinDataComplete IncrementUsInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Increment US Vacant State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Decrement US Vacant State Sensitivity
+ ///
[JoinName("DecrementUsInVacantState")]
public JoinDataComplete DecrementUsInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 26, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Decrement US Vacant State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Increment IR Occupied State Sensitivity
+ ///
[JoinName("IncrementPirInOccupiedState")]
public JoinDataComplete IncrementPirInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 27, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Increment IR Occupied State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Decrement IR Occupied State Sensitivity
+ ///
[JoinName("DecrementPirInOccupiedState")]
public JoinDataComplete DecrementPirInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 28, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Decrement IR Occupied State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Increment IR Vacant State Sensitivity
+ ///
[JoinName("IncrementPirInVacantState")]
public JoinDataComplete IncrementPirInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 29, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Increment IR Vacant State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Decrement IR Vacant State Sensitivity
+ ///
[JoinName("DecrementPirInVacantState")]
public JoinDataComplete DecrementPirInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Decrement IR Vacant State Sensitivity", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+
+ ///
+ /// Occ Sensor Timeout Value
+ ///
[JoinName("Timeout")]
public JoinDataComplete Timeout = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Timeout Value", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor Local Timeout Value
+ ///
[JoinName("TimeoutLocalFeedback")]
public JoinDataComplete TimeoutLocalFeedback = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Local Timeout Value", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor Internal PhotoSensor Value
+ ///
[JoinName("InternalPhotoSensorValue")]
public JoinDataComplete InternalPhotoSensorValue = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Internal PhotoSensor Value", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor External PhotoSensor Value
+ ///
[JoinName("ExternalPhotoSensorValue")]
public JoinDataComplete ExternalPhotoSensorValue = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor External PhotoSensor Value", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor Ultrasonic Sensitivity in Occupied State
+ ///
[JoinName("UsSensitivityInOccupiedState")]
public JoinDataComplete UsSensitivityInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Ultrasonic Sensitivity in Occupied State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor Ultrasonic Sensitivity in Vacant State
+ ///
[JoinName("UsSensitivityInVacantState")]
public JoinDataComplete UsSensitivityInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Ultrasonic Sensitivity in Vacant State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor PIR Sensitivity in Occupied State
+ ///
[JoinName("PirSensitivityInOccupiedState")]
public JoinDataComplete PirSensitivityInOccupiedState = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor PIR Sensitivity in Occupied State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor PIR Sensitivity in Vacant State
+ ///
[JoinName("PirSensitivityInVacantState")]
public JoinDataComplete PirSensitivityInVacantState = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor PIR Sensitivity in Vacant State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+
+ ///
+ /// Occ Sensor Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Occ Sensor Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsPartitionSensorJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsPartitionSensorJoinMap.cs
index 466d0fed..98c491dd 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsPartitionSensorJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/GlsPartitionSensorJoinMap.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#region Digital
+ ///
+ /// Sensor Is Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(
new JoinData
@@ -25,7 +28,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Sensor Enable
+ ///
[JoinName("Enable")]
public JoinDataComplete Enable = new JoinDataComplete(
new JoinData
@@ -40,6 +45,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Sensor Partition Sensed
+ ///
[JoinName("PartitionSensed")]
public JoinDataComplete PartitionSensed = new JoinDataComplete(
new JoinData
@@ -54,6 +62,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Sensor Partition Not Sensed
+ ///
[JoinName("PartitionNotSensed")]
public JoinDataComplete PartitionNotSensed = new JoinDataComplete(
new JoinData
@@ -68,6 +79,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Sensor Increase Sensitivity
+ ///
[JoinName("IncreaseSensitivity")]
public JoinDataComplete IncreaseSensitivity = new JoinDataComplete(
new JoinData
@@ -82,6 +96,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Sensor Decrease Sensitivity
+ ///
[JoinName("DecreaseSensitivity")]
public JoinDataComplete DecreaseSensitivity = new JoinDataComplete(
new JoinData
@@ -100,6 +117,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#region Analog
+ ///
+ /// Sensor Sensitivity
+ ///
[JoinName("Sensitivity")]
public JoinDataComplete Sensitivity = new JoinDataComplete(
new JoinData
@@ -119,6 +139,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#region Serial
+ ///
+ /// Sensor Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(
new JoinData
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdNxM4kEControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdNxM4kEControllerJoinMap.cs
index cbc5d9ae..950e3f1e 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdNxM4kEControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdNxM4kEControllerJoinMap.cs
@@ -7,42 +7,72 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class HdMdNxM4kEControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Device Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Device Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Enable Automatic Routing on 4x1 Switchers
+ ///
[JoinName("EnableAutoRoute")]
public JoinDataComplete EnableAutoRoute = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Enable Automatic Routing on 4x1 Switchers", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Device Input Name
+ ///
[JoinName("InputName")]
public JoinDataComplete InputName = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 8 },
new JoinMetadata { Description = "Device Input Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Device Input Sync
+ ///
[JoinName("InputSync")]
public JoinDataComplete InputSync = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 8 },
new JoinMetadata { Description = "Device Input Sync", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Device Output Name
+ ///
[JoinName("OutputName")]
public JoinDataComplete OutputName = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 2 },
new JoinMetadata { Description = "Device Output Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Device Output Route Set/Get
+ ///
[JoinName("OutputRoute")]
public JoinDataComplete OutputRoute = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 2 },
new JoinMetadata { Description = "Device Output Route Set/Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Device Output Route Name
+ ///
[JoinName("OutputRoutedName")]
public JoinDataComplete OutputRoutedName = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 2 },
new JoinMetadata { Description = "Device Output Route Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Device Enable Input Hdcp
+ ///
[JoinName("EnableInputHdcp")]
public JoinDataComplete EnableInputHdcp = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 8 },
new JoinMetadata { Description = "Device Enable Input Hdcp", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Device Disable Input Hdcp
+ ///
[JoinName("DisableInputHdcp")]
public JoinDataComplete DisableInputHdcp = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 8 },
new JoinMetadata { Description = "Device Disnable Input Hdcp", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Device Online Status
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "Device Onlne", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdxxxCEControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdxxxCEControllerJoinMap.cs
index ea1a9784..2730a0ea 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdxxxCEControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdMdxxxCEControllerJoinMap.cs
@@ -8,50 +8,85 @@ namespace PepperDash.Essentials.Core.Bridges
public class HdMdxxxCEControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Device Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Device Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Remote End Detected
+ ///
[JoinName("RemoteEndDetected")]
public JoinDataComplete RemoteEndDetected = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Device Remote End Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Auto Route On
+ ///
[JoinName("AutoRouteOn")]
public JoinDataComplete AutoRouteOn = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Device Auto Route On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Auto Route Off
+ ///
[JoinName("AutoRouteOff")]
public JoinDataComplete AutoRouteOff = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Device Auto Route Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Priority Routing On
+ ///
[JoinName("PriorityRoutingOn")]
public JoinDataComplete PriorityRoutingOn = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Device Priority Routing On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Priority Routing Off
+ ///
[JoinName("PriorityRoutingOff")]
public JoinDataComplete PriorityRoutingOff = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Device Priority Routing Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Input On Screen Display Enabled
+ ///
[JoinName("InputOnScreenDisplayEnabled")]
public JoinDataComplete InputOnScreenDisplayEnabled = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Device Input OSD Enabled", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Input On Screen Display Disabled
+ ///
[JoinName("InputOnScreenDisplayDisabled")]
public JoinDataComplete InputOnScreenDisplayDisabled = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Device Input OSD Disabled", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Sync Detected
+ ///
[JoinName("SyncDetected")]
public JoinDataComplete SyncDetected = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 5 },
new JoinMetadata { Description = "Device Sync Detected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Video Source
+ ///
[JoinName("VideoSource")]
public JoinDataComplete VideoSource = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 5 },
new JoinMetadata { Description = "Device Video Source Set / Get", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Source Count
+ ///
[JoinName("SourceCount")]
public JoinDataComplete SourceCount = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 5 },
new JoinMetadata { Description = "Device Video Source Count", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
-
+ ///
+ /// Source Names
+ ///
[JoinName("SourceNames")]
public JoinDataComplete SourceNames = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 5 },
new JoinMetadata { Description = "Device Video Source Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdPsXxxControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdPsXxxControllerJoinMap.cs
index c4cd5dcb..aee3c2f1 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdPsXxxControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/HdPsXxxControllerJoinMap.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.Bridges
#region Digital
+ ///
+ /// Enable Automatic Routing on Xx1 Switchers
+ ///
[JoinName("EnableAutoRoute")]
public JoinDataComplete EnableAutoRoute = new JoinDataComplete(
new JoinData
@@ -25,7 +28,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Device Input Sync
+ ///
[JoinName("InputSync")]
public JoinDataComplete InputSync = new JoinDataComplete(
new JoinData
@@ -40,7 +45,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Device Enable Input Hdcp
+ ///
[JoinName("EnableInputHdcp")]
public JoinDataComplete EnableInputHdcp = new JoinDataComplete(
new JoinData
@@ -55,7 +62,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Device Disnable Input Hdcp
+ ///
[JoinName("DisableInputHdcp")]
public JoinDataComplete DisableInputHdcp = new JoinDataComplete(
new JoinData
@@ -70,7 +79,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Device Onlne
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(
new JoinData
@@ -90,6 +101,9 @@ namespace PepperDash.Essentials.Core.Bridges
#region Analog
+ ///
+ /// Device Input Route Set/Get
+ ///
[JoinName("OutputRoute")]
public JoinDataComplete OutputRoute = new JoinDataComplete(
new JoinData
@@ -109,6 +123,9 @@ namespace PepperDash.Essentials.Core.Bridges
#region Serial
+ ///
+ /// Device Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(
new JoinData
@@ -123,7 +140,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Serial
});
-
+ ///
+ /// Device Input Name
+ ///
[JoinName("InputName")]
public JoinDataComplete InputName = new JoinDataComplete(
new JoinData
@@ -138,7 +157,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Serial
});
-
+ ///
+ /// Device Output Name
+ ///
[JoinName("OutputName")]
public JoinDataComplete OutputName = new JoinDataComplete(
new JoinData
@@ -153,7 +174,9 @@ namespace PepperDash.Essentials.Core.Bridges
JoinType = eJoinType.Serial
});
-
+ ///
+ /// Device Output Route Name
+ ///
[JoinName("OutputRoutedName")]
public JoinDataComplete OutputRoutedName = new JoinDataComplete(
new JoinData
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/Hrxxx0WirelessRemoteControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/Hrxxx0WirelessRemoteControllerJoinMap.cs
index c93da2f7..5c4c858e 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/Hrxxx0WirelessRemoteControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/Hrxxx0WirelessRemoteControllerJoinMap.cs
@@ -7,222 +7,387 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class Hrxxx0WirelessRemoteControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Power
+ ///
[JoinName("Power")]
public JoinDataComplete Power = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Power", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Menu
+ ///
[JoinName("Menu")]
public JoinDataComplete Menu = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Menu", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Guide
+ ///
[JoinName("Guide")]
public JoinDataComplete Guide = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Guide", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Info
+ ///
[JoinName("Info")]
public JoinDataComplete Info = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Info", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// VolumeUp
+ ///
[JoinName("VolumeUp")]
public JoinDataComplete VolumeUp = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "VolumeUp", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// VolumeDown
+ ///
[JoinName("VolumeDown")]
public JoinDataComplete VolumeDown = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "VolumeDown", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// DialPadUp
+ ///
[JoinName("DialPadUp")]
public JoinDataComplete DialPadUp = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "DialPadUp", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// DialPadDown
+ ///
[JoinName("DialPadDown")]
public JoinDataComplete DialPadDown = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "DialPadDown", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// DialPadLeft
+ ///
[JoinName("DialPadLeft")]
public JoinDataComplete DialPadLeft = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "DialPadLeft", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// DialPadRight
+ ///
[JoinName("DialPadRight")]
public JoinDataComplete DialPadRight = new JoinDataComplete(new JoinData { JoinNumber = 10, JoinSpan = 1 },
new JoinMetadata { Description = "DialPadRight", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// DialPadSelect
+ ///
[JoinName("DialPadSelect")]
public JoinDataComplete DialPadSelect = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "DialPadSelect", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// ChannelUp
+ ///
[JoinName("ChannelUp")]
public JoinDataComplete ChannelUp = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "ChannelUp", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// ChannelDown
+ ///
[JoinName("ChannelDown")]
public JoinDataComplete ChannelDown = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "ChannelDown", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Mute
+ ///
[JoinName("Mute")]
public JoinDataComplete Mute = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Mute", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Exit
+ ///
[JoinName("Exit")]
public JoinDataComplete Exit = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Exit", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Last
+ ///
[JoinName("Last")]
public JoinDataComplete Last = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 1 },
new JoinMetadata { Description = "Last", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Play
+ ///
[JoinName("Play")]
public JoinDataComplete Play = new JoinDataComplete(new JoinData { JoinNumber = 17, JoinSpan = 1 },
new JoinMetadata { Description = "Play", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Pause
+ ///
[JoinName("Pause")]
public JoinDataComplete Pause = new JoinDataComplete(new JoinData { JoinNumber = 18, JoinSpan = 1 },
new JoinMetadata { Description = "Pause", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Rewind
+ ///
[JoinName("Rewind")]
public JoinDataComplete Rewind = new JoinDataComplete(new JoinData { JoinNumber = 19, JoinSpan = 1 },
new JoinMetadata { Description = "Rewind", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// FastForward
+ ///
[JoinName("FastForward")]
public JoinDataComplete FastForward = new JoinDataComplete(new JoinData { JoinNumber = 20, JoinSpan = 1 },
new JoinMetadata { Description = "FastForward", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// PreviousTrack
+ ///
[JoinName("PreviousTrack")]
public JoinDataComplete PreviousTrack = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "PreviousTrack", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// NextTrack
+ ///
[JoinName("NextTrack")]
public JoinDataComplete NextTrack = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "NextTrack", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Stop
+ ///
[JoinName("Stop")]
public JoinDataComplete Stop = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "Stop", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Record
+ ///
[JoinName("Record")]
public JoinDataComplete Record = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "Record", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Dvr
+ ///
[JoinName("Dvr")]
public JoinDataComplete Dvr = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "Dvr", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad1
+ ///
[JoinName("Keypad1")]
public JoinDataComplete Keypad1 = new JoinDataComplete(new JoinData { JoinNumber = 26, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad1", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad2Abc
+ ///
[JoinName("Keypad2Abc")]
public JoinDataComplete Keypad2 = new JoinDataComplete(new JoinData { JoinNumber = 27, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad2Abc", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad3Def
+ ///
[JoinName("Keypad3Def")]
public JoinDataComplete Keypad3Def = new JoinDataComplete(new JoinData { JoinNumber = 28, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad3Def", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad4Ghi
+ ///
[JoinName("Keypad4Ghi")]
public JoinDataComplete Keypad4Ghi = new JoinDataComplete(new JoinData { JoinNumber = 29, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad4Ghi", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad5Jkl
+ ///
[JoinName("Keypad5Jkl")]
public JoinDataComplete Keypad5Jkl = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad5Jkl", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad6Mno
+ ///
[JoinName("Keypad6Mno")]
public JoinDataComplete Keypad6Mno = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad6Mno", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad7Pqrs
+ ///
[JoinName("Keypad7Pqrs")]
public JoinDataComplete Keypad7Pqrs = new JoinDataComplete(new JoinData { JoinNumber = 32, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad7Pqrs", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad8Tuv
+ ///
[JoinName("Keypad8Tuv")]
public JoinDataComplete Keypad8Tuv = new JoinDataComplete(new JoinData { JoinNumber = 33, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad8Tuv", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad9Wxyz
+ ///
[JoinName("Keypad9Wxyz")]
public JoinDataComplete Keypad9Wxyz = new JoinDataComplete(new JoinData { JoinNumber = 34, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad9Wxyz", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad0
+ ///
[JoinName("Keypad0")]
public JoinDataComplete Keypad0 = new JoinDataComplete(new JoinData { JoinNumber = 35, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad0", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Clear
+ ///
[JoinName("Clear")]
public JoinDataComplete Clear = new JoinDataComplete(new JoinData { JoinNumber = 36, JoinSpan = 1 },
new JoinMetadata { Description = "Clear", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Enter
+ ///
[JoinName("Enter")]
public JoinDataComplete Enter = new JoinDataComplete(new JoinData { JoinNumber = 37, JoinSpan = 1 },
new JoinMetadata { Description = "Enter", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Red
+ ///
[JoinName("Red")]
public JoinDataComplete Red = new JoinDataComplete(new JoinData { JoinNumber = 38, JoinSpan = 1 },
new JoinMetadata { Description = "Red", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Green
+ ///
[JoinName("Green")]
public JoinDataComplete Green = new JoinDataComplete(new JoinData { JoinNumber = 39, JoinSpan = 1 },
new JoinMetadata { Description = "Green", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Yellow
+ ///
[JoinName("Yellow")]
public JoinDataComplete Yellow = new JoinDataComplete(new JoinData { JoinNumber = 40, JoinSpan = 1 },
new JoinMetadata { Description = "Yellow", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Blue
+ ///
[JoinName("Blue")]
public JoinDataComplete Blue = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 1 },
new JoinMetadata { Description = "Blue", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom1
+ ///
[JoinName("Custom1")]
public JoinDataComplete Custom1 = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "Custom1", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom2
+ ///
[JoinName("Custom2")]
public JoinDataComplete Custom2 = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "Custom2", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom3
+ ///
[JoinName("Custom3")]
public JoinDataComplete Custom3 = new JoinDataComplete(new JoinData { JoinNumber = 44, JoinSpan = 1 },
new JoinMetadata { Description = "Custom3", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom4
+ ///
[JoinName("Custom4")]
public JoinDataComplete Custom4 = new JoinDataComplete(new JoinData { JoinNumber = 45, JoinSpan = 1 },
new JoinMetadata { Description = "Custom4", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom5
+ ///
[JoinName("Custom5")]
public JoinDataComplete Custom5 = new JoinDataComplete(new JoinData { JoinNumber = 46, JoinSpan = 1 },
new JoinMetadata { Description = "Custom5", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom6
+ ///
[JoinName("Custom6")]
public JoinDataComplete Custom6 = new JoinDataComplete(new JoinData { JoinNumber = 47, JoinSpan = 1 },
new JoinMetadata { Description = "Custom6", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom7
+ ///
[JoinName("Custom7")]
public JoinDataComplete Custom7 = new JoinDataComplete(new JoinData { JoinNumber = 48, JoinSpan = 1 },
new JoinMetadata { Description = "Custom7", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom8
+ ///
[JoinName("Custom8")]
public JoinDataComplete Custom8 = new JoinDataComplete(new JoinData { JoinNumber = 49, JoinSpan = 1 },
new JoinMetadata { Description = "Custom8", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Custom9
+ ///
[JoinName("Custom9")]
public JoinDataComplete Custom9 = new JoinDataComplete(new JoinData { JoinNumber = 50, JoinSpan = 1 },
new JoinMetadata { Description = "Custom9", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Fav
+ ///
[JoinName("Fav")]
public JoinDataComplete Fav = new JoinDataComplete(new JoinData { JoinNumber = 51, JoinSpan = 1 },
new JoinMetadata { Description = "Fav", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Home
+ ///
[JoinName("Home")]
public JoinDataComplete Home = new JoinDataComplete(new JoinData { JoinNumber = 52, JoinSpan = 1 },
new JoinMetadata { Description = "Home", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// BatteryLow
+ ///
[JoinName("BatteryLow")]
public JoinDataComplete BatteryLow = new JoinDataComplete(new JoinData { JoinNumber = 53, JoinSpan = 1 },
new JoinMetadata { Description = "BatteryLow", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// BatteryCritical
+ ///
[JoinName("BatteryCritical")]
public JoinDataComplete BatteryCritical = new JoinDataComplete(new JoinData { JoinNumber = 54, JoinSpan = 1 },
new JoinMetadata { Description = "BatteryCritical", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// BatteryVoltage
+ ///
[JoinName("BatteryVoltage")]
public JoinDataComplete BatteryVoltage = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "BatteryVoltage", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IAnalogInputJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IAnalogInputJoinMap.cs
index dc4c29f1..59f90347 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IAnalogInputJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IAnalogInputJoinMap.cs
@@ -8,9 +8,16 @@ namespace PepperDash.Essentials.Core.Bridges
public class IAnalogInputJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Input Value
+ ///
[JoinName("InputValue")]
public JoinDataComplete InputValue = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Input Value", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+
+ ///
+ /// Minimum Change
+ ///
[JoinName("MinimumChange")]
public JoinDataComplete MinimumChange = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Minimum voltage change required to reflect a change", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IBasicCommunicationJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IBasicCommunicationJoinMap.cs
index 303f9b1b..b4c473cb 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IBasicCommunicationJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IBasicCommunicationJoinMap.cs
@@ -7,26 +7,44 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class IBasicCommunicationJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Text Received From Remote Device
+ ///
[JoinName("TextReceived")]
public JoinDataComplete TextReceived = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Text Received From Remote Device", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Text Sent To Remote Device
+ ///
[JoinName("SendText")]
public JoinDataComplete SendText = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Text Sent To Remote Device", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Set Port Config
+ ///
[JoinName("SetPortConfig")]
public JoinDataComplete SetPortConfig = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Set Port Config", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Connect
+ ///
[JoinName("Connect")]
public JoinDataComplete Connect = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Connect", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Disconnect
+ ///
[JoinName("Connected")]
public JoinDataComplete Connected = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Connected", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Status
+ ///
[JoinName("Status")]
public JoinDataComplete Status = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalInputJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalInputJoinMap.cs
index 77405182..0f77fce3 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalInputJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalInputJoinMap.cs
@@ -7,7 +7,9 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class IDigitalInputJoinMap : JoinMapBaseAdvanced
{
-
+ ///
+ /// Input State
+ ///
[JoinName("InputState")]
public JoinDataComplete InputState = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Input State", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalOutputJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalOutputJoinMap.cs
index 92d78772..05895acb 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalOutputJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IDigitalOutputJoinMap.cs
@@ -7,7 +7,9 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class IDigitalOutputJoinMap : JoinMapBaseAdvanced
{
-
+ ///
+ /// Output State
+ ///
[JoinName("OutputState")]
public JoinDataComplete OutputState = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Get / Set state of Digital Input", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IRBlurayBaseJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IRBlurayBaseJoinMap.cs
index 991489e9..3e66eda6 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IRBlurayBaseJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/IRBlurayBaseJoinMap.cs
@@ -11,191 +11,331 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class IRBlurayBaseJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Power On
+ ///
[JoinName("PowerOn")]
public JoinDataComplete PowerOn = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Power On", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Power Off
+ ///
[JoinName("PowerOff")]
public JoinDataComplete PowerOff = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Power Off", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Power Toggle
+ ///
[JoinName("PowerToggle")]
public JoinDataComplete PowerToggle = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Power Toggle", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Nav Up
+ ///
[JoinName("Up")]
public JoinDataComplete Up = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Nav Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Nav Down
+ ///
[JoinName("Down")]
public JoinDataComplete Down = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Nav Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Nav Left
+ ///
[JoinName("Left")]
public JoinDataComplete Left = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Nav Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Nav Right
+ ///
[JoinName("Right")]
public JoinDataComplete Right = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Nav Right", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Select
+ ///
[JoinName("Select")]
public JoinDataComplete Select = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Select", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Menu
+ ///
[JoinName("Menu")]
public JoinDataComplete Menu = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "Menu", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Exit
+ ///
[JoinName("Exit")]
public JoinDataComplete Exit = new JoinDataComplete(new JoinData { JoinNumber = 10, JoinSpan = 1 },
new JoinMetadata { Description = "Exit", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 0
+ ///
[JoinName("Digit0")]
public JoinDataComplete Digit0 = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 0", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 1
+ ///
[JoinName("Digit1")]
public JoinDataComplete Digit1 = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 1", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 2
+ ///
[JoinName("Digit2")]
public JoinDataComplete Digit2 = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 2", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 3
+ ///
[JoinName("Digit3")]
public JoinDataComplete Digit3 = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 3", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 4
+ ///
[JoinName("Digit4")]
public JoinDataComplete Digit4 = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 4", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 5
+ ///
[JoinName("Digit5")]
public JoinDataComplete Digit5 = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 5", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 6
+ ///
[JoinName("Digit6")]
public JoinDataComplete Digit6 = new JoinDataComplete(new JoinData { JoinNumber = 17, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 6", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 7
+ ///
[JoinName("Digit7")]
public JoinDataComplete Digit7 = new JoinDataComplete(new JoinData { JoinNumber = 18, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 7", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 8
+ ///
[JoinName("Digit8")]
public JoinDataComplete Digit8 = new JoinDataComplete(new JoinData { JoinNumber = 19, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 8", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Digit 9
+ ///
[JoinName("Digit9")]
public JoinDataComplete Digit9 = new JoinDataComplete(new JoinData { JoinNumber = 20, JoinSpan = 1 },
new JoinMetadata { Description = "Digit 9", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad Clear
+ ///
[JoinName("KeypadClear")]
public JoinDataComplete KeypadClear = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad Clear", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad Enter
+ ///
[JoinName("KeypadEnter")]
public JoinDataComplete KeypadEnter = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad Enter", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Channel Up
+ ///
[JoinName("ChannelUp")]
public JoinDataComplete ChannelUp = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "STB Channel Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Channel Down
+ ///
[JoinName("ChannelDown")]
public JoinDataComplete ChannelDown = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "STB Channel Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Last Channel
+ ///
[JoinName("LastChannel")]
public JoinDataComplete LastChannel = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "Last Channel", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Guide
+ ///
[JoinName("Guide")]
public JoinDataComplete Guide = new JoinDataComplete(new JoinData { JoinNumber = 26, JoinSpan = 1 },
new JoinMetadata { Description = "Guide", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Info
+ ///
[JoinName("Info")]
public JoinDataComplete Info = new JoinDataComplete(new JoinData { JoinNumber = 27, JoinSpan = 1 },
new JoinMetadata { Description = "Info", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Red
+ ///
[JoinName("Red")]
public JoinDataComplete Red = new JoinDataComplete(new JoinData { JoinNumber = 28, JoinSpan = 1 },
new JoinMetadata { Description = "Red", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Green
+ ///
[JoinName("Green")]
public JoinDataComplete Green = new JoinDataComplete(new JoinData { JoinNumber = 29, JoinSpan = 1 },
new JoinMetadata { Description = "Green", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Yellow
+ ///
[JoinName("Yellow")]
public JoinDataComplete Yellow = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "Yellow", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Blue
+ ///
[JoinName("Blue")]
public JoinDataComplete Blue = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 1 },
new JoinMetadata { Description = "Blue", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
-
+ ///
+ /// Play
+ ///
[JoinName("Play")]
public JoinDataComplete Play = new JoinDataComplete(new JoinData { JoinNumber = 33, JoinSpan = 1 },
new JoinMetadata { Description = "Play", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Pause
+ ///
[JoinName("Pause")]
public JoinDataComplete Pause = new JoinDataComplete(new JoinData { JoinNumber = 34, JoinSpan = 1 },
new JoinMetadata { Description = "Pause", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Stop
+ ///
[JoinName("Stop")]
public JoinDataComplete Stop = new JoinDataComplete(new JoinData { JoinNumber = 35, JoinSpan = 1 },
new JoinMetadata { Description = "Stop", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Fast Forward
+ ///
[JoinName("FFwd")]
public JoinDataComplete FFwd = new JoinDataComplete(new JoinData { JoinNumber = 36, JoinSpan = 1 },
new JoinMetadata { Description = "FFwd", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Rewind
+ ///
[JoinName("Rewind")]
public JoinDataComplete Rewind = new JoinDataComplete(new JoinData { JoinNumber = 37, JoinSpan = 1 },
new JoinMetadata { Description = "Rewind", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Chapter Plus
+ ///
[JoinName("ChapPlus")]
public JoinDataComplete ChapPlus = new JoinDataComplete(new JoinData { JoinNumber = 38, JoinSpan = 1 },
new JoinMetadata { Description = "Chapter Plus", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Chapter Minus
+ ///
[JoinName("ChapMinus")]
public JoinDataComplete ChapMinus = new JoinDataComplete(new JoinData { JoinNumber = 39, JoinSpan = 1 },
new JoinMetadata { Description = "Chapter Minus", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Replay
+ ///
[JoinName("Replay")]
public JoinDataComplete Replay = new JoinDataComplete(new JoinData { JoinNumber = 40, JoinSpan = 1 },
new JoinMetadata { Description = "Replay", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Record
+ ///
[JoinName("Record")]
public JoinDataComplete Record = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 1 },
new JoinMetadata { Description = "Record", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Has Keypad Accessory Button 1
+ ///
[JoinName("HasKeypadAccessoryButton1")]
public JoinDataComplete HasKeypadAccessoryButton1 = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "Has Keypad Accessory Button 1", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Has Keypad Accessory Button 2
+ ///
[JoinName("HasKeypadAccessoryButton2")]
public JoinDataComplete HasKeypadAccessoryButton2 = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "Has Keypad Accessory Button 2", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad Accessory Button 1 Press
+ ///
[JoinName("KeypadAccessoryButton1Press")]
public JoinDataComplete KeypadAccessoryButton1Press = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 2 },
new JoinMetadata { Description = "Keypad Accessory Button 1 Press", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad Accessory Button 2 Press
+ ///
[JoinName("KeypadAccessoryButton2Press")]
public JoinDataComplete KeypadAccessoryButton2Press = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 2 },
new JoinMetadata { Description = "Keypad Accessory Button 2 Press", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Keypad Accessory Button 1 Label
+ ///
[JoinName("KeypadAccessoryButton1Label")]
public JoinDataComplete KeypadAccessoryButton1Label = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad Accessory Button 1 Label", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Keypad Accessory Button 2 Label
+ ///
[JoinName("KeypadAccessoryButton2Label")]
public JoinDataComplete KeypadAccessoryButton2Label = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "Keypad Accessory Button 1 Label", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/PduJoinMapBase.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/PduJoinMapBase.cs
index e50d9b8f..f52b96c4 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/PduJoinMapBase.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/PduJoinMapBase.cs
@@ -7,34 +7,58 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class PduJoinMapBase : JoinMapBaseAdvanced
{
+ ///
+ /// PDU Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "PDU Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// PDU Online Status
+ ///
[JoinName("Online")]
public JoinDataComplete Online = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Number of Controlled Outlets
+ ///
[JoinName("OutletCount")]
public JoinDataComplete OutletCount = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Number of COntrolled Outlets", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Outlet Name
+ ///
[JoinName("OutletName")]
public JoinDataComplete OutletName = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Outlet Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Outlet Enabled Status
+ ///
[JoinName("OutletEnabled")]
public JoinDataComplete OutletEnabled = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Outlet Enabled", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Outlet Power State
+ ///
[JoinName("OutletPowerCycle")]
public JoinDataComplete OutletPowerCycle = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Outlet Power Cycle", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Outlet Power On
+ ///
[JoinName("OutletPowerOn")]
public JoinDataComplete OutletPowerOn = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Outlet Power On", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Outlet Power Off
+ ///
[JoinName("OutletPowerOff")]
public JoinDataComplete OutletPowerOff = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Outlet Power Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SetTopBoxControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SetTopBoxControllerJoinMap.cs
index a5e2ea6f..ce9a4290 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SetTopBoxControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SetTopBoxControllerJoinMap.cs
@@ -8,214 +8,373 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class SetTopBoxControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// STB Power On
+ ///
[JoinName("PowerOn")]
public JoinDataComplete PowerOn = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "STB Power On", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Power Off
+ ///
[JoinName("PowerOff")]
public JoinDataComplete PowerOff = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "STB Power Off", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Power Toggle
+ ///
[JoinName("PowerToggle")]
public JoinDataComplete PowerToggle = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "STB Power Toggle", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has DPad
+ ///
[JoinName("HasDpad")]
public JoinDataComplete HasDpad = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "STB Has DPad", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Nav Up
+ ///
[JoinName("Up")]
public JoinDataComplete Up = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "STB Nav Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Nav Down
+ ///
[JoinName("Down")]
public JoinDataComplete Down = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "STB Nav Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Nav Left
+ ///
[JoinName("Left")]
public JoinDataComplete Left = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "STB Nav Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Nav Right
+ ///
[JoinName("Right")]
public JoinDataComplete Right = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "STB Nav Right", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Select
+ ///
[JoinName("Select")]
public JoinDataComplete Select = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "STB Select", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Menu
+ ///
[JoinName("Menu")]
public JoinDataComplete Menu = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "STB Menu", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Exit
+ ///
[JoinName("Exit")]
public JoinDataComplete Exit = new JoinDataComplete(new JoinData { JoinNumber = 10, JoinSpan = 1 },
new JoinMetadata { Description = "STB Exit", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has Numeric
+ ///
[JoinName("HasNumeric")]
public JoinDataComplete HasNumeric = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "STB Has Numeric", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 0
+ ///
[JoinName("Digit0")]
public JoinDataComplete Digit0 = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 0", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 1
+ ///
[JoinName("Digit1")]
public JoinDataComplete Digit1 = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 1", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 2
+ ///
[JoinName("Digit2")]
public JoinDataComplete Digit2 = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 2", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 3
+ ///
[JoinName("Digit3")]
public JoinDataComplete Digit3 = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 3", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 4
+ ///
[JoinName("Digit4")]
public JoinDataComplete Digit4 = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 4", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 5
+ ///
[JoinName("Digit5")]
public JoinDataComplete Digit5 = new JoinDataComplete(new JoinData { JoinNumber = 16, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 5", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 6
+ ///
[JoinName("Digit6")]
public JoinDataComplete Digit6 = new JoinDataComplete(new JoinData { JoinNumber = 17, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 6", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 7
+ ///
[JoinName("Digit7")]
public JoinDataComplete Digit7 = new JoinDataComplete(new JoinData { JoinNumber = 18, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 7", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 8
+ ///
[JoinName("Digit8")]
public JoinDataComplete Digit8 = new JoinDataComplete(new JoinData { JoinNumber = 19, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 8", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Digit 9
+ ///
[JoinName("Digit9")]
public JoinDataComplete Digit9 = new JoinDataComplete(new JoinData { JoinNumber = 20, JoinSpan = 1 },
new JoinMetadata { Description = "STB Digit 9", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Dash
+ ///
[JoinName("Dash")]
public JoinDataComplete Dash = new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
new JoinMetadata { Description = "STB Dash", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Keypad Enter
+ ///
[JoinName("KeypadEnter")]
public JoinDataComplete KeypadEnter = new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
new JoinMetadata { Description = "STB Keypad Enter", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Channel Up
+ ///
[JoinName("ChannelUp")]
public JoinDataComplete ChannelUp = new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
new JoinMetadata { Description = "STB Channel Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Channel Down
+ ///
[JoinName("ChannelDown")]
public JoinDataComplete ChannelDown = new JoinDataComplete(new JoinData { JoinNumber = 24, JoinSpan = 1 },
new JoinMetadata { Description = "STB Channel Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Last Channel
+ ///
[JoinName("LastChannel")]
public JoinDataComplete LastChannel = new JoinDataComplete(new JoinData { JoinNumber = 25, JoinSpan = 1 },
new JoinMetadata { Description = "STB Last Channel", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Guide
+ ///
[JoinName("Guide")]
public JoinDataComplete Guide = new JoinDataComplete(new JoinData { JoinNumber = 26, JoinSpan = 1 },
new JoinMetadata { Description = "STB Guide", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Info
+ ///
[JoinName("Info")]
public JoinDataComplete Info = new JoinDataComplete(new JoinData { JoinNumber = 27, JoinSpan = 1 },
new JoinMetadata { Description = "STB Info", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Red
+ ///
[JoinName("Red")]
public JoinDataComplete Red = new JoinDataComplete(new JoinData { JoinNumber = 28, JoinSpan = 1 },
new JoinMetadata { Description = "STB Red", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Green
+ ///
[JoinName("Green")]
public JoinDataComplete Green = new JoinDataComplete(new JoinData { JoinNumber = 29, JoinSpan = 1 },
new JoinMetadata { Description = "STB Green", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Yellow
+ ///
[JoinName("Yellow")]
public JoinDataComplete Yellow = new JoinDataComplete(new JoinData { JoinNumber = 30, JoinSpan = 1 },
new JoinMetadata { Description = "STB Yellow", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Blue
+ ///
[JoinName("Blue")]
public JoinDataComplete Blue = new JoinDataComplete(new JoinData { JoinNumber = 31, JoinSpan = 1 },
new JoinMetadata { Description = "STB Blue", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has DVR
+ ///
[JoinName("HasDvr")]
public JoinDataComplete HasDvr = new JoinDataComplete(new JoinData { JoinNumber = 32, JoinSpan = 1 },
new JoinMetadata { Description = "STB Has DVR", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Dvr List
+ ///
[JoinName("DvrList")]
public JoinDataComplete DvrList = new JoinDataComplete(new JoinData { JoinNumber = 32, JoinSpan = 1 },
new JoinMetadata { Description = "STB DvrList", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Play
+ ///
[JoinName("Play")]
public JoinDataComplete Play = new JoinDataComplete(new JoinData { JoinNumber = 33, JoinSpan = 1 },
new JoinMetadata { Description = "STB Play", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Pause
+ ///
[JoinName("Pause")]
public JoinDataComplete Pause = new JoinDataComplete(new JoinData { JoinNumber = 34, JoinSpan = 1 },
new JoinMetadata { Description = "STB Pause", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Stop
+ ///
[JoinName("Stop")]
public JoinDataComplete Stop = new JoinDataComplete(new JoinData { JoinNumber = 35, JoinSpan = 1 },
new JoinMetadata { Description = "STB Stop", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB FFwd
+ ///
[JoinName("FFwd")]
public JoinDataComplete FFwd = new JoinDataComplete(new JoinData { JoinNumber = 36, JoinSpan = 1 },
new JoinMetadata { Description = "STB FFwd", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Rewind
+ ///
[JoinName("Rewind")]
public JoinDataComplete Rewind = new JoinDataComplete(new JoinData { JoinNumber = 37, JoinSpan = 1 },
new JoinMetadata { Description = "STB Rewind", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Chapter Plus
+ ///
[JoinName("ChapPlus")]
public JoinDataComplete ChapPlus = new JoinDataComplete(new JoinData { JoinNumber = 38, JoinSpan = 1 },
new JoinMetadata { Description = "STB Chapter Plus", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Chapter Minus
+ ///
[JoinName("ChapMinus")]
public JoinDataComplete ChapMinus = new JoinDataComplete(new JoinData { JoinNumber = 39, JoinSpan = 1 },
new JoinMetadata { Description = "STB Chapter Minus", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Replay
+ ///
[JoinName("Replay")]
public JoinDataComplete Replay = new JoinDataComplete(new JoinData { JoinNumber = 40, JoinSpan = 1 },
new JoinMetadata { Description = "STB Replay", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Record
+ ///
[JoinName("Record")]
public JoinDataComplete Record = new JoinDataComplete(new JoinData { JoinNumber = 41, JoinSpan = 1 },
new JoinMetadata { Description = "STB Record", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has Keypad Accessory Button 1
+ ///
[JoinName("HasKeypadAccessoryButton1")]
public JoinDataComplete HasKeypadAccessoryButton1 = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "STB Has Keypad Accessory Button 1", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has Keypad Accessory Button 2
+ ///
[JoinName("HasKeypadAccessoryButton2")]
public JoinDataComplete HasKeypadAccessoryButton2 = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "STB Has Keypad Accessory Button 2", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Keypad Accessory Button 1 Press
+ ///
[JoinName("KeypadAccessoryButton1Press")]
public JoinDataComplete KeypadAccessoryButton1Press = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 2 },
new JoinMetadata { Description = "STB Keypad Accessory Button 1 Press", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Keypad Accessory Button 2 Press
+ ///
[JoinName("KeypadAccessoryButton2Press")]
public JoinDataComplete KeypadAccessoryButton2Press = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 2 },
new JoinMetadata { Description = "STB Keypad Accessory Button 2 Press", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "STB Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Keypad Accessory Button 1 Label
+ ///
[JoinName("KeypadAccessoryButton1Label")]
public JoinDataComplete KeypadAccessoryButton1Label = new JoinDataComplete(new JoinData { JoinNumber = 42, JoinSpan = 1 },
new JoinMetadata { Description = "STB Keypad Accessory Button 1 Label", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// STB Keypad Accessory Button 2 Label
+ ///
[JoinName("KeypadAccessoryButton2Label")]
public JoinDataComplete KeypadAccessoryButton2Label = new JoinDataComplete(new JoinData { JoinNumber = 43, JoinSpan = 1 },
new JoinMetadata { Description = "STB Keypad Accessory Button 1 Label", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// STB Load Presets
+ ///
[JoinName("LoadPresets")]
public JoinDataComplete LoadPresets = new JoinDataComplete(new JoinData { JoinNumber = 50, JoinSpan = 1 },
new JoinMetadata { Description = "STB Load Presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// STB Has Presets
+ ///
[JoinName("HasPresets")]
public JoinDataComplete HasPresets = new JoinDataComplete(new JoinData { JoinNumber = 50, JoinSpan = 1 },
new JoinMetadata { Description = "STB Load Presets", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/StatusSignControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/StatusSignControllerJoinMap.cs
index 60b7e5d8..79ada2c8 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/StatusSignControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/StatusSignControllerJoinMap.cs
@@ -7,34 +7,58 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class StatusSignControllerJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Status Sign Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Status Sign Online", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Status Sign Name
+ ///
[JoinName("Name")]
public JoinDataComplete Name = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Status Sign Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Red LED Control
+ ///
[JoinName("RedControl")]
public JoinDataComplete RedControl = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Status Red LED Enable / Disable", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Red LED Intensity
+ ///
[JoinName("RedLed")]
public JoinDataComplete RedLed = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Status Red LED Intensity", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Green LED Control
+ ///
[JoinName("GreenControl")]
public JoinDataComplete GreenControl = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Status Green LED Enable / Disable", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Green LED Intensity
+ ///
[JoinName("GreenLed")]
public JoinDataComplete GreenLed = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Status Green LED Intensity", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Blue LED Control
+ ///
[JoinName("BlueControl")]
public JoinDataComplete BlueControl = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Status Blue LED Enable / Disable", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Blue LED Intensity
+ ///
[JoinName("BlueLed")]
public JoinDataComplete BlueLed = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Status Blue LED Intensity", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Analog });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SystemMonitorJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SystemMonitorJoinMap.cs
index b594a685..c53c9fe6 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SystemMonitorJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/SystemMonitorJoinMap.cs
@@ -7,146 +7,254 @@ namespace PepperDash.Essentials.Core.Bridges
///
public class SystemMonitorJoinMap : JoinMapBaseAdvanced
{
+ ///
+ /// Processor Timezone
+ ///
[JoinName("TimeZone")]
public JoinDataComplete TimeZone = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Timezone", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Analog });
+ ///
+ /// Processor Timezone Name
+ ///
[JoinName("TimeZoneName")]
public JoinDataComplete TimeZoneName = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Timezone Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor OS Version
+ ///
[JoinName("IOControllerVersion")]
public JoinDataComplete IOControllerVersion = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Processor IO Controller Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor SNMP App Version
+ ///
[JoinName("SnmpAppVersion")]
public JoinDataComplete SnmpAppVersion = new JoinDataComplete(new JoinData { JoinNumber = 3, JoinSpan = 1 },
new JoinMetadata { Description = "Processor SNMP App Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor BACNet App Version
+ ///
[JoinName("BACnetAppVersion")]
public JoinDataComplete BACnetAppVersion = new JoinDataComplete(new JoinData { JoinNumber = 4, JoinSpan = 1 },
new JoinMetadata { Description = "Processor BACNet App Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Controller Version
+ ///
[JoinName("ControllerVersion")]
public JoinDataComplete ControllerVersion = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Controller Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Serial Number
+ ///
[JoinName("SerialNumber")]
public JoinDataComplete SerialNumber = new JoinDataComplete(new JoinData { JoinNumber = 6, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Serial Number", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Model
+ ///
[JoinName("Model")]
public JoinDataComplete Model = new JoinDataComplete(new JoinData { JoinNumber = 7, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Model", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Uptime
+ ///
[JoinName("Uptime")]
public JoinDataComplete Uptime = new JoinDataComplete(new JoinData { JoinNumber = 8, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Uptime", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Last Boot Time
+ ///
[JoinName("LastBoot")]
public JoinDataComplete LastBoot = new JoinDataComplete(new JoinData { JoinNumber = 9, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Last Boot", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Program Offset Join
+ ///
[JoinName("ProgramOffsetJoin")]
public JoinDataComplete ProgramOffsetJoin = new JoinDataComplete(new JoinData { JoinNumber = 5, JoinSpan = 5 },
new JoinMetadata { Description = "All Program Data is offset between slots by 5 - First Joins Start at 11", JoinCapabilities = eJoinCapabilities.None, JoinType = eJoinType.None });
+ ///
+ /// Processor Program Start
+ ///
[JoinName("ProgramStart")]
public JoinDataComplete ProgramStart = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Start / Fb", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Processor Program Stop
+ ///
[JoinName("ProgramStop")]
public JoinDataComplete ProgramStop = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Stop / Fb", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Processor Program Register
+ ///
[JoinName("ProgramRegister")]
public JoinDataComplete ProgramRegister = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Register / Fb", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Processor Program Unregister
+ ///
[JoinName("ProgramUnregister")]
public JoinDataComplete ProgramUnregister = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program UnRegister / Fb", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Processor Program Name
+ ///
[JoinName("ProgramName")]
public JoinDataComplete ProgramName = new JoinDataComplete(new JoinData { JoinNumber = 11, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Name", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Program Version
+ ///
[JoinName("ProgramCompiledTime")]
public JoinDataComplete ProgramCompiledTime = new JoinDataComplete(new JoinData { JoinNumber = 12, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Compile Time", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Program Crestron Database Version
+ ///
[JoinName("ProgramCrestronDatabaseVersion")]
public JoinDataComplete ProgramCrestronDatabaseVersion = new JoinDataComplete(new JoinData { JoinNumber = 13, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Database Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Program Environment Version
+ ///
[JoinName("ProgramEnvironmentVersion")]
public JoinDataComplete ProgramEnvironmentVersion = new JoinDataComplete(new JoinData { JoinNumber = 14, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Environment Version", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Program Aggregate Info
+ ///
[JoinName("AggregatedProgramInfo")]
public JoinDataComplete AggregatedProgramInfo = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Program Aggregate Info Json", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Ethernet Offset Join
+ ///
[JoinName("EthernetOffsetJoin")]
public JoinDataComplete EthernetOffsetJoin = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "All Ethernet Data is offset between Nics by 5 - First Joins Start at 76", JoinCapabilities = eJoinCapabilities.None, JoinType = eJoinType.None });
+ ///
+ /// Processor Ethernet Hostname
+ ///
[JoinName("HostName")]
public JoinDataComplete HostName = new JoinDataComplete(new JoinData { JoinNumber = 76, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Hostname", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Current Ip Address
+ ///
[JoinName("CurrentIpAddress")]
public JoinDataComplete CurrentIpAddress = new JoinDataComplete(new JoinData { JoinNumber = 77, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Current Ip Address", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Current Subnet Mask
+ ///
[JoinName("CurrentSubnetMask")]
public JoinDataComplete CurrentSubnetMask = new JoinDataComplete(new JoinData { JoinNumber = 78, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Current Subnet Mask", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Current Default Gateway
+ ///
[JoinName("CurrentDefaultGateway")]
public JoinDataComplete CurrentDefaultGateway = new JoinDataComplete(new JoinData { JoinNumber = 79, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Current Default Gateway", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Static Ip Address
+ ///
[JoinName("StaticIpAddress")]
public JoinDataComplete StaticIpAddress = new JoinDataComplete(new JoinData { JoinNumber = 80, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Static Ip Address", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Static Subnet Mask
+ ///
[JoinName("StaticSubnetMask")]
public JoinDataComplete StaticSubnetMask = new JoinDataComplete(new JoinData { JoinNumber = 81, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Static Subnet Mask", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Static Default Gateway
+ ///
[JoinName("StaticDefaultGateway")]
public JoinDataComplete StaticDefaultGateway = new JoinDataComplete(new JoinData { JoinNumber = 82, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Static Default Gateway", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Domain
+ ///
[JoinName("Domain")]
public JoinDataComplete Domain = new JoinDataComplete(new JoinData { JoinNumber = 83, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Domain", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Dns Server
+ ///
[JoinName("DnsServer")]
public JoinDataComplete DnsServer = new JoinDataComplete(new JoinData { JoinNumber = 84, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Dns Server", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Mac Address
+ ///
[JoinName("MacAddress")]
public JoinDataComplete MacAddress = new JoinDataComplete(new JoinData { JoinNumber = 85, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Mac Address", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Ethernet Dhcp Status
+ ///
[JoinName("DhcpStatus")]
public JoinDataComplete DhcpStatus = new JoinDataComplete(new JoinData { JoinNumber = 86, JoinSpan = 1 },
new JoinMetadata { Description = "Processor Ethernet Dhcp Status", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
+ ///
+ /// Processor Reboot
+ ///
[JoinName("ProcessorRebot")]
public JoinDataComplete ProcessorReboot = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Reboot processor", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Is Appliance Fb
+ ///
[JoinName("IsAppliance")]
public JoinDataComplete IsAppliance = new JoinDataComplete(new JoinData { JoinNumber = 1, JoinSpan = 1 },
new JoinMetadata { Description = "Is appliance Fb", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Is Server Fb
+ ///
[JoinName("IsServer")]
public JoinDataComplete IsServer = new JoinDataComplete(new JoinData { JoinNumber = 2, JoinSpan = 1 },
new JoinMetadata { Description = "Is server Fb", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
+ ///
+ /// Program Reset
+ ///
[JoinName("ProgramReset")]
public JoinDataComplete ProgramReset = new JoinDataComplete(new JoinData { JoinNumber = 15, JoinSpan = 1 },
new JoinMetadata { Description = "Resets the program", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
diff --git a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/VideoCodecControllerJoinMap.cs b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/VideoCodecControllerJoinMap.cs
index 463ba4d3..2a7a46c2 100644
--- a/src/PepperDash.Essentials.Core/Bridges/JoinMaps/VideoCodecControllerJoinMap.cs
+++ b/src/PepperDash.Essentials.Core/Bridges/JoinMaps/VideoCodecControllerJoinMap.cs
@@ -9,6 +9,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
{
#region Digital
+ ///
+ /// Device is Online
+ ///
[JoinName("IsOnline")]
public JoinDataComplete IsOnline = new JoinDataComplete(
new JoinData
@@ -23,6 +26,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// If High, will send DTMF tones to the call set by SelectCall analog. If low sends DTMF tones to last connected call.
+ ///
[JoinName("SendDtmfToSpecificCallIndex")]
public JoinDataComplete SendDtmfToSpecificCallIndex = new JoinDataComplete(
new JoinData
@@ -37,6 +43,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 1
+ ///
[JoinName("Dtmf1")]
public JoinDataComplete Dtmf1 = new JoinDataComplete(
new JoinData
@@ -51,6 +60,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 2
+ ///
[JoinName("Dtmf2")]
public JoinDataComplete Dtmf2 = new JoinDataComplete(
new JoinData
@@ -65,6 +77,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 3
+ ///
[JoinName("Dtmf3")]
public JoinDataComplete Dtmf3 = new JoinDataComplete(
new JoinData
@@ -79,6 +94,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 4
+ ///
[JoinName("Dtmf4")]
public JoinDataComplete Dtmf4 = new JoinDataComplete(
new JoinData
@@ -93,6 +111,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 5
+ ///
[JoinName("Dtmf5")]
public JoinDataComplete Dtmf5 = new JoinDataComplete(
new JoinData
@@ -107,6 +128,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 6
+ ///
[JoinName("Dtmf6")]
public JoinDataComplete Dtmf6 = new JoinDataComplete(
new JoinData
@@ -121,6 +145,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 7
+ ///
[JoinName("Dtmf7")]
public JoinDataComplete Dtmf7 = new JoinDataComplete(
new JoinData
@@ -135,6 +162,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 8
+ ///
[JoinName("Dtmf8")]
public JoinDataComplete Dtmf8 = new JoinDataComplete(
new JoinData
@@ -149,6 +179,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 9
+ ///
[JoinName("Dtmf9")]
public JoinDataComplete Dtmf9 = new JoinDataComplete(
new JoinData
@@ -163,6 +196,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF 0
+ ///
[JoinName("Dtmf0")]
public JoinDataComplete Dtmf0 = new JoinDataComplete(
new JoinData
@@ -177,6 +213,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF *
+ ///
[JoinName("DtmfStar")]
public JoinDataComplete DtmfStar = new JoinDataComplete(
new JoinData
@@ -191,6 +230,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// DTMF #
+ ///
[JoinName("DtmfPound")]
public JoinDataComplete DtmfPound = new JoinDataComplete(
new JoinData
@@ -205,6 +247,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// End All Calls
+ ///
[JoinName("EndAllCalls")]
public JoinDataComplete EndAllCalls = new JoinDataComplete(
new JoinData
@@ -219,6 +264,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Current Hook State
+ ///
[JoinName("HookState")]
public JoinDataComplete HookState = new JoinDataComplete(
new JoinData
@@ -233,6 +281,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Speed Dial
+ ///
[JoinName("SpeedDialStart")]
public JoinDataComplete SpeedDialStart = new JoinDataComplete(
new JoinData
@@ -247,6 +298,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Incoming Call
+ ///
[JoinName("IncomingCall")]
public JoinDataComplete IncomingCall = new JoinDataComplete(
new JoinData
@@ -261,6 +315,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Answer Incoming Call
+ ///
[JoinName("IncomingAnswer")]
public JoinDataComplete IncomingAnswer = new JoinDataComplete(
new JoinData
@@ -275,6 +332,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Reject Incoming Call
+ ///
[JoinName("IncomingReject")]
public JoinDataComplete IncomingReject = new JoinDataComplete(
new JoinData
@@ -289,6 +349,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Manual Dial
+ ///
[JoinName("ManualDial")]
public JoinDataComplete ManualDial = new JoinDataComplete(
new JoinData
@@ -303,6 +366,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Dial Phone
+ ///
[JoinName("DialPhone")]
public JoinDataComplete DialPhone = new JoinDataComplete(
new JoinData
@@ -317,6 +383,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Phone Hook State
+ ///
[JoinName("PhoneHookState")]
public JoinDataComplete PhoneHookState = new JoinDataComplete(
new JoinData
@@ -331,6 +400,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Hang Up Phone
+ ///
[JoinName("HangUpPhone")]
public JoinDataComplete HangUpPhone = new JoinDataComplete(
new JoinData
@@ -345,6 +417,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// End Call
+ ///
[JoinName("EndCallStart")]
public JoinDataComplete EndCallStart = new JoinDataComplete(
new JoinData
@@ -359,6 +434,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Join All Calls
+ ///
[JoinName("JoinAllCalls")]
public JoinDataComplete JoinAllCalls = new JoinDataComplete(
new JoinData
@@ -373,6 +451,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Join Call
+ ///
[JoinName("JoinCallStart")]
public JoinDataComplete JoinCallStart = new JoinDataComplete(
new JoinData
@@ -387,6 +468,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Search Busy
+ ///
[JoinName("DirectorySearchBusy")]
public JoinDataComplete DirectorySearchBusy = new JoinDataComplete(
new JoinData
@@ -401,7 +485,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Directory Selected Entry Is Contact
+ ///
[JoinName("DirectoryEntryIsContact")]
public JoinDataComplete DirectoryEntryIsContact = new JoinDataComplete(
new JoinData
@@ -416,6 +502,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Line Selected
+ ///
[JoinName("DirectoryLineSelected")]
public JoinDataComplete DirectoryLineSelected = new JoinDataComplete(
new JoinData
@@ -430,6 +519,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Is Root
+ ///
[JoinName("DirectoryIsRoot")]
public JoinDataComplete DirectoryIsRoot = new JoinDataComplete(
new JoinData
@@ -444,6 +536,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Has Changed
+ ///
[JoinName("DirectoryHasChanged")]
public JoinDataComplete DirectoryHasChanged = new JoinDataComplete(
new JoinData
@@ -458,6 +553,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Go to Root
+ ///
[JoinName("DirectoryRoot")]
public JoinDataComplete DirectoryRoot = new JoinDataComplete(
new JoinData
@@ -472,6 +570,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Go Back One Level
+ ///
[JoinName("DirectoryFolderBack")]
public JoinDataComplete DirectoryFolderBack = new JoinDataComplete(
new JoinData
@@ -486,6 +587,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Dial Selected Line
+ ///
[JoinName("DirectoryDialSelectedLine")]
public JoinDataComplete DirectoryDialSelectedLine = new JoinDataComplete(
new JoinData
@@ -500,6 +604,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Disable Auto Dial Selected Line
+ ///
[JoinName("DirectoryDisableAutoDialSelectedLine")]
public JoinDataComplete DirectoryDisableAutoDialSelectedLine = new JoinDataComplete(
new JoinData
@@ -514,6 +621,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Dial Selected Contact Method
+ ///
[JoinName("DirectoryDialSelectedContactMethod")]
public JoinDataComplete DirectoryDialSelectedContactMethod = new JoinDataComplete(
new JoinData
@@ -528,6 +638,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Directory Clear Selected
+ ///
[JoinName("DirectoryClearSelected")]
public JoinDataComplete DirectoryClearSelected = new JoinDataComplete(
new JoinData
@@ -542,7 +655,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
-
+ ///
+ /// Camera Tilt Up
+ ///
[JoinName("CameraTiltUp")]
public JoinDataComplete CameraTiltUp = new JoinDataComplete(
new JoinData
@@ -557,6 +672,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Tilt Down
+ ///
[JoinName("CameraTiltDown")]
public JoinDataComplete CameraTiltDown = new JoinDataComplete(
new JoinData
@@ -571,6 +689,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Pan Left
+ ///
[JoinName("CameraPanLeft")]
public JoinDataComplete CameraPanLeft = new JoinDataComplete(
new JoinData
@@ -585,6 +706,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Pan Right
+ ///
[JoinName("CameraPanRight")]
public JoinDataComplete CameraPanRight = new JoinDataComplete(
new JoinData
@@ -599,6 +723,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Zoom In
+ ///
[JoinName("CameraZoomIn")]
public JoinDataComplete CameraZoomIn = new JoinDataComplete(
new JoinData
@@ -613,6 +740,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Zoom Out
+ ///
[JoinName("CameraZoomOut")]
public JoinDataComplete CameraZoomOut = new JoinDataComplete(
new JoinData
@@ -627,6 +757,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Focus Near
+ ///
[JoinName("CameraFocusNear")]
public JoinDataComplete CameraFocusNear = new JoinDataComplete(
new JoinData
@@ -641,6 +774,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Focus Far
+ ///
[JoinName("CameraFocusFar")]
public JoinDataComplete CameraFocusFar = new JoinDataComplete(
new JoinData
@@ -655,6 +791,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Auto Focus
+ ///
[JoinName("CameraFocusAuto")]
public JoinDataComplete CameraFocusAuto = new JoinDataComplete(
new JoinData
@@ -669,6 +808,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Preset Save
+ ///
[JoinName("CameraPresetSave")]
public JoinDataComplete CameraPresetSave = new JoinDataComplete(
new JoinData
@@ -683,6 +825,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Preset Recall
+ ///
[JoinName("CameraModeAuto")]
public JoinDataComplete CameraModeAuto = new JoinDataComplete(
new JoinData
@@ -697,6 +842,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Mode Manual
+ ///
[JoinName("CameraModeManual")]
public JoinDataComplete CameraModeManual = new JoinDataComplete(
new JoinData
@@ -711,6 +859,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Mode Off
+ ///
[JoinName("CameraModeOff")]
public JoinDataComplete CameraModeOff = new JoinDataComplete(
new JoinData
@@ -725,6 +876,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Self View
+ ///
[JoinName("CameraSelfView")]
public JoinDataComplete CameraSelfView = new JoinDataComplete(
new JoinData
@@ -739,6 +893,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Layout
+ ///
[JoinName("CameraLayout")]
public JoinDataComplete CameraLayout = new JoinDataComplete(
new JoinData
@@ -753,6 +910,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Supports Auto Mode
+ ///
[JoinName("CameraSupportsAutoMode")]
public JoinDataComplete CameraSupportsAutoMode = new JoinDataComplete(
new JoinData
@@ -767,6 +927,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Camera Supports Off Mode
+ ///
[JoinName("CameraSupportsOffMode")]
public JoinDataComplete CameraSupportsOffMode = new JoinDataComplete(
new JoinData
@@ -781,6 +944,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Update Meetings
+ ///
[JoinName("UpdateMeetings")]
public JoinDataComplete UpdateMeetings = new JoinDataComplete(
new JoinData
@@ -795,6 +961,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Dial Meeting Start
+ ///
[JoinName("DialMeetingStart")]
public JoinDataComplete DialMeetingStart = new JoinDataComplete(
new JoinData
@@ -809,6 +978,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Mic Mute On
+ ///
[JoinName("MicMuteOn")]
public JoinDataComplete MicMuteOn = new JoinDataComplete(
new JoinData
@@ -823,6 +995,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Mic Mute Off
+ ///
[JoinName("MicMuteOff")]
public JoinDataComplete MicMuteOff = new JoinDataComplete(
new JoinData
@@ -837,6 +1012,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Mic Mute Toggle
+ ///
[JoinName("MicMuteToggle")]
public JoinDataComplete MicMuteToggle = new JoinDataComplete(
new JoinData
@@ -851,6 +1029,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Volume Up
+ ///
[JoinName("VolumeUp")]
public JoinDataComplete VolumeUp = new JoinDataComplete(
new JoinData
@@ -865,6 +1046,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Volume Down
+ ///
[JoinName("VolumeDown")]
public JoinDataComplete VolumeDown = new JoinDataComplete(
new JoinData
@@ -879,6 +1063,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Volume Mute On
+ ///
[JoinName("VolumeMuteOn")]
public JoinDataComplete VolumeMuteOn = new JoinDataComplete(
new JoinData
@@ -893,6 +1080,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Volume Mute Off
+ ///
[JoinName("VolumeMuteOff")]
public JoinDataComplete VolumeMuteOff = new JoinDataComplete(
new JoinData
@@ -907,6 +1097,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Volume Mute Toggle
+ ///
[JoinName("VolumeMuteToggle")]
public JoinDataComplete VolumeMuteToggle = new JoinDataComplete(
new JoinData
@@ -921,6 +1114,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Remove Selected Recent Call Item
+ ///
[JoinName("RemoveSelectedRecentCallItem")]
public JoinDataComplete RemoveSelectedRecentCallItem = new JoinDataComplete(
new JoinData
@@ -935,6 +1131,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Dial Selected Recent Call Item
+ ///
[JoinName("DialSelectedRecentCallItem")]
public JoinDataComplete DialSelectedRecentCallItem = new JoinDataComplete(
new JoinData
@@ -949,6 +1148,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Source Share Start
+ ///
[JoinName("SourceShareStart")]
public JoinDataComplete SourceShareStart = new JoinDataComplete(
new JoinData
@@ -963,6 +1165,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Source Share End
+ ///
[JoinName("SourceShareEnd")]
public JoinDataComplete SourceShareEnd = new JoinDataComplete(
new JoinData
@@ -977,6 +1182,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Source Share Auto Start
+ ///
[JoinName("AutoShareWhileInCall")]
public JoinDataComplete SourceShareAutoStart = new JoinDataComplete(
new JoinData
@@ -991,6 +1199,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Recieving Content
+ ///
[JoinName("RecievingContent")]
public JoinDataComplete RecievingContent = new JoinDataComplete(
new JoinData
@@ -1005,6 +1216,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinCapabilities = eJoinCapabilities.ToSIMPL
});
+ ///
+ /// Selfview Position
+ ///
[JoinName("SelfviewPosition")]
public JoinDataComplete SelfviewPosition = new JoinDataComplete(
new JoinData
@@ -1019,6 +1233,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Hold All Calls
+ ///
[JoinName("HoldAllCalls")]
public JoinDataComplete HoldAllCalls = new JoinDataComplete(
new JoinData
@@ -1033,6 +1250,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Hold Call at Index
+ ///
[JoinName("HoldCallsStart")]
public JoinDataComplete HoldCallsStart = new JoinDataComplete(
new JoinData
@@ -1047,6 +1267,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Resume All Calls
+ ///
[JoinName("ResumeCallsStart")]
public JoinDataComplete ResumeCallsStart = new JoinDataComplete(
new JoinData
@@ -1061,6 +1284,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Multi Site Option Is Enabled
+ ///
[JoinName("MultiSiteOptionIsEnabled")]
public JoinDataComplete MultiSiteOptionIsEnabled = new JoinDataComplete(
new JoinData
@@ -1075,6 +1301,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Auto Answer Enabled
+ ///
[JoinName("AutoAnswerEnabled")]
public JoinDataComplete AutoAnswerEnabled = new JoinDataComplete(
new JoinData
@@ -1089,6 +1318,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Participant Audio Mute Toggle
+ ///
[JoinName("ParticipantAudioMuteToggleStart")]
public JoinDataComplete ParticipantAudioMuteToggleStart = new JoinDataComplete(
new JoinData
@@ -1103,6 +1335,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Participant Video Mute Toggle
+ ///
[JoinName("ParticipantVideoMuteToggleStart")]
public JoinDataComplete ParticipantVideoMuteToggleStart = new JoinDataComplete(
new JoinData
@@ -1117,6 +1352,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Digital
});
+ ///
+ /// Participant Pin Toggle
+ ///
[JoinName("ParticipantPinToggleStart")]
public JoinDataComplete ParticipantPinToggleStart = new JoinDataComplete(
new JoinData
@@ -1139,6 +1377,10 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#region Analog
// TODO [ ] hotfix/videocodecbase-max-meeting-xsig-set
+
+ ///
+ /// Meetings To Display
+ ///
[JoinName("MeetingsToDisplay")]
public JoinDataComplete MeetingsToDisplay = new JoinDataComplete(
new JoinData
@@ -1153,6 +1395,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Select Call
+ ///
[JoinName("SelectCall")]
public JoinDataComplete SelectCall = new JoinDataComplete(
new JoinData
@@ -1167,7 +1412,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
-
+ ///
+ /// Connected Call Count
+ ///
[JoinName("ConnectedCallCount")]
public JoinDataComplete ConnectedCallCount = new JoinDataComplete(
new JoinData
@@ -1182,6 +1429,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Minutes Before Meeting Start
+ ///
[JoinName("MinutesBeforeMeetingStart")]
public JoinDataComplete MinutesBeforeMeetingStart = new JoinDataComplete(
new JoinData
@@ -1196,6 +1446,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Camera Number Select
+ ///
[JoinName("CameraNumberSelect")]
public JoinDataComplete CameraNumberSelect = new JoinDataComplete(
new JoinData
@@ -1210,6 +1463,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Camera Count
+ ///
[JoinName("CameraCount")]
public JoinDataComplete CameraCount = new JoinDataComplete(
new JoinData
@@ -1224,6 +1480,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Directory Row Count
+ ///
[JoinName("DirectoryRowCount")]
public JoinDataComplete DirectoryRowCount = new JoinDataComplete(
new JoinData
@@ -1238,6 +1497,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Directory Select Row
+ ///
[JoinName("DirectorySelectRow")]
public JoinDataComplete DirectorySelectRow = new JoinDataComplete(
new JoinData
@@ -1252,7 +1514,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
-
+ ///
+ /// Selected Contact Method Count
+ ///
[JoinName("SelectedContactMethodCount")]
public JoinDataComplete SelectedContactMethodCount = new JoinDataComplete(
new JoinData
@@ -1267,6 +1531,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Select Contact Method
+ ///
[JoinName("SelectContactMethod")]
public JoinDataComplete SelectContactMethod = new JoinDataComplete(
new JoinData
@@ -1281,6 +1548,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Directory Select Row Feedback
+ ///
[JoinName("DirectorySelectRowFeedback")]
public JoinDataComplete DirectorySelectRowFeedback = new JoinDataComplete(
new JoinData
@@ -1296,7 +1566,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
});
-
+ ///
+ /// Camera Preset Select
+ ///
[JoinName("CameraPresetSelect")]
public JoinDataComplete CameraPresetSelect = new JoinDataComplete(
new JoinData
@@ -1311,6 +1583,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Far End Preset Select
+ ///
[JoinName("FarEndPresetSelect")]
public JoinDataComplete FarEndPresetSelect = new JoinDataComplete(
new JoinData
@@ -1325,6 +1600,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Participant Count
+ ///
[JoinName("ParticipantCount")]
public JoinDataComplete ParticipantCount = new JoinDataComplete(
new JoinData
@@ -1339,6 +1617,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Meeting Count
+ ///
[JoinName("Meeting Count Fb")]
public JoinDataComplete MeetingCount = new JoinDataComplete(
new JoinData
@@ -1353,6 +1634,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Volume Level
+ ///
[JoinName("VolumeLevel")]
public JoinDataComplete VolumeLevel = new JoinDataComplete(
new JoinData
@@ -1367,6 +1651,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Select Recent Call Item
+ ///
[JoinName("SelectRecentCallItem")]
public JoinDataComplete SelectRecentCallItem = new JoinDataComplete(
new JoinData
@@ -1381,6 +1668,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Recent Call Occurrence Type
+ ///
[JoinName("RecentCallOccurrenceType")]
public JoinDataComplete RecentCallOccurrenceType = new JoinDataComplete(
new JoinData
@@ -1395,6 +1685,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Analog
});
+ ///
+ /// Recent Call Count
+ ///
[JoinName("RecentCallCount")]
public JoinDataComplete RecentCallCount = new JoinDataComplete(
new JoinData
@@ -1415,6 +1708,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#region Serials
+ ///
+ /// Current Dial String
+ ///
[JoinName("CurrentDialString")]
public JoinDataComplete CurrentDialString = new JoinDataComplete(
new JoinData
@@ -1429,6 +1725,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Phone Dial String
+ ///
[JoinName("PhoneDialString")]
public JoinDataComplete PhoneDialString = new JoinDataComplete(
new JoinData
@@ -1443,6 +1742,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Current Call Data
+ ///
[JoinName("CurrentCallData")]
public JoinDataComplete CurrentCallData = new JoinDataComplete(
new JoinData
@@ -1457,6 +1759,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Call Direction
+ ///
[JoinName("CallDirection")]
public JoinDataComplete CallDirection = new JoinDataComplete(
new JoinData
@@ -1471,6 +1776,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Incoming Call Name
+ ///
[JoinName("IncomingCallName")]
public JoinDataComplete IncomingCallName = new JoinDataComplete(
new JoinData
@@ -1485,6 +1793,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Incoming Call Number
+ ///
[JoinName("IncomingCallNumber")]
public JoinDataComplete IncomingCallNumber = new JoinDataComplete(
new JoinData
@@ -1499,7 +1810,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
-
+ ///
+ /// Directory Search String
+ ///
[JoinName("DirectorySearchString")]
public JoinDataComplete DirectorySearchString = new JoinDataComplete(
new JoinData
@@ -1514,6 +1827,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Directory Entries
+ ///
[JoinName("DirectoryEntries")]
public JoinDataComplete DirectoryEntries = new JoinDataComplete(
new JoinData
@@ -1528,6 +1844,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Schedule Data
+ ///
[JoinName("Schedule")]
public JoinDataComplete Schedule = new JoinDataComplete(
new JoinData
@@ -1542,6 +1861,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Contact Methods
+ ///
[JoinName("ContactMethods")]
public JoinDataComplete ContactMethods = new JoinDataComplete(
new JoinData
@@ -1556,6 +1878,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Camera Preset Names
+ ///
[JoinName("CameraPresetNames")]
public JoinDataComplete CameraPresetNames = new JoinDataComplete(
new JoinData
@@ -1570,6 +1895,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Current Layout String
+ ///
[JoinName("CurrentLayoutStringFb")]
public JoinDataComplete CurrentLayoutStringFb = new JoinDataComplete(
new JoinData
@@ -1584,6 +1912,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Available Layouts XSig
+ ///
[JoinName("AvailableLayoutsFb")]
public JoinDataComplete AvailableLayoutsFb = new JoinDataComplete(
new JoinData
@@ -1598,6 +1929,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Select Layout
+ ///
[JoinName("SelectLayout")]
public JoinDataComplete SelectLayout = new JoinDataComplete(
new JoinData
@@ -1613,7 +1947,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
});
-
+ ///
+ /// Current Participants XSig
+ ///
[JoinName("CurrentParticipants")]
public JoinDataComplete CurrentParticipants = new JoinDataComplete(
new JoinData
@@ -1628,6 +1964,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Camera Names XSig
+ ///
[JoinName("CameraNamesFb")]
public JoinDataComplete CameraNamesFb = new JoinDataComplete(
new JoinData
@@ -1642,6 +1981,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selected Recent Call Name
+ ///
[JoinName("SelectedRecentCallName")]
public JoinDataComplete SelectedRecentCallName = new JoinDataComplete(
new JoinData
@@ -1656,6 +1998,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selected Recent Call Number
+ ///
[JoinName("SelectedRecentCallNumber")]
public JoinDataComplete SelectedRecentCallNumber = new JoinDataComplete(
new JoinData
@@ -1670,6 +2015,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Recent Call Names
+ ///
[JoinName("RecentCallNamesStart")]
public JoinDataComplete RecentCallNamesStart = new JoinDataComplete(
new JoinData
@@ -1684,6 +2032,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Recent Call Numbers
+ ///
[JoinName("RecentCallTimesStart")]
public JoinDataComplete RecentCallTimesStart = new JoinDataComplete(
new JoinData
@@ -1698,6 +2049,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Current Source
+ ///
[JoinName("CurrentSource")]
public JoinDataComplete CurrentSource = new JoinDataComplete(
new JoinData
@@ -1712,6 +2066,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selfview Position Feedback
+ ///
[JoinName("SelfviewPositionFb")]
public JoinDataComplete SelfviewPositionFb = new JoinDataComplete(
new JoinData
@@ -1726,6 +2083,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Device IP Address
+ ///
[JoinName("DeviceIpAddresss")]
public JoinDataComplete DeviceIpAddresss = new JoinDataComplete(
new JoinData
@@ -1740,6 +2100,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// SIP Phone Number
+ ///
[JoinName("SipPhoneNumber")]
public JoinDataComplete SipPhoneNumber = new JoinDataComplete(
new JoinData
@@ -1754,6 +2117,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// E164 Alias
+ ///
[JoinName("E164Alias")]
public JoinDataComplete E164Alias = new JoinDataComplete(
new JoinData
@@ -1768,6 +2134,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// H323 ID
+ ///
[JoinName("H323Id")]
public JoinDataComplete H323Id = new JoinDataComplete(
new JoinData
@@ -1782,6 +2151,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// SIP URI
+ ///
[JoinName("SipUri")]
public JoinDataComplete SipUri = new JoinDataComplete(
new JoinData
@@ -1796,6 +2168,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selected Directory Entry Name
+ ///
[JoinName("DirectoryEntrySelectedName")]
public JoinDataComplete DirectoryEntrySelectedName = new JoinDataComplete(
new JoinData
@@ -1810,6 +2185,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selected Directory Entry Number
+ ///
[JoinName("DirectoryEntrySelectedNumber")]
public JoinDataComplete DirectoryEntrySelectedNumber = new JoinDataComplete(
new JoinData
@@ -1824,6 +2202,9 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
JoinType = eJoinType.Serial
});
+ ///
+ /// Selected Directory Folder Name
+ ///
[JoinName("DirectorySelectedFolderName")]
public JoinDataComplete DirectorySelectedFolderName = new JoinDataComplete(
new JoinData
@@ -1841,11 +2222,20 @@ namespace PepperDash.Essentials.Core.Bridges.JoinMaps
#endregion
+ ///
+ /// Constructor for the VideoCodecControllerJoinMap class.
+ ///
+ /// Join this join map will start at
public VideoCodecControllerJoinMap(uint joinStart)
: base(joinStart, typeof(VideoCodecControllerJoinMap))
{
}
+ ///
+ ///
+ ///
+ /// Join this join map will start at
+ /// Type of the child join map
public VideoCodecControllerJoinMap(uint joinStart, Type type)
: base(joinStart, type)
{
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/CecPortController.cs b/src/PepperDash.Essentials.Core/Comm and IR/CecPortController.cs
index 2dd4f2ba..298bbc9b 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/CecPortController.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/CecPortController.cs
@@ -22,7 +22,14 @@ namespace PepperDash.Essentials.Core
///
public CommunicationStreamDebugging StreamDebugging { get; private set; }
+ ///
+ /// Event raised when bytes are received
+ ///
public event EventHandler BytesReceived;
+
+ ///
+ /// Event raised when text is received
+ ///
public event EventHandler TextReceived;
///
@@ -32,6 +39,12 @@ namespace PepperDash.Essentials.Core
ICec Port;
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// post activation function for the device
+ /// configuration for the device
public CecPortController(string key, Func postActivationFunc,
EssentialsControlPropertiesConfig config) : base(key)
{
@@ -45,6 +58,11 @@ namespace PepperDash.Essentials.Core
});
}
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// CEC port
public CecPortController(string key, ICec port)
: base(key)
{
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/ComSpecJsonConverter.cs b/src/PepperDash.Essentials.Core/Comm and IR/ComSpecJsonConverter.cs
index e2d13f5f..11e2bc74 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/ComSpecJsonConverter.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/ComSpecJsonConverter.cs
@@ -21,6 +21,14 @@ namespace PepperDash.Essentials.Core
///
public class ComSpecJsonConverter : JsonConverter
{
+ ///
+ /// ReadJson method
+ ///
+ /// reader to use
+ /// type of the object being read
+ /// existing value of the object being read
+ /// serializer to use
+ /// deserialized object
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
if (objectType == typeof(ComPort.ComPortSpec?))
@@ -42,6 +50,9 @@ namespace PepperDash.Essentials.Core
return objectType == typeof(ComPort.ComPortSpec?);
}
+ ///
+ /// Gets or sets the CanRead
+ ///
public override bool CanRead { get { return true; } }
///
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/CommFactory.cs b/src/PepperDash.Essentials.Core/Comm and IR/CommFactory.cs
index fbc46579..9318e04b 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/CommFactory.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/CommFactory.cs
@@ -15,6 +15,11 @@ namespace PepperDash.Essentials.Core
///
public class CommFactory
{
+ ///
+ /// GetControlPropertiesConfig method
+ ///
+ /// The Device config object
+ /// EssentialsControlPropertiesConfig object
public static EssentialsControlPropertiesConfig GetControlPropertiesConfig(DeviceConfig deviceConfig)
{
try
@@ -223,11 +228,16 @@ namespace PepperDash.Essentials.Core
public class EssentialsControlPropertiesConfig :
ControlPropertiesConfig
{
-
+ ///
+ /// Gets or sets the ComParams
+ ///
[JsonProperty("comParams", NullValueHandling = NullValueHandling.Ignore)]
[JsonConverter(typeof(ComSpecJsonConverter))]
public ComPort.ComPortSpec? ComParams { get; set; }
+ ///
+ /// Gets or sets the CresnetId
+ ///
[JsonProperty("cresnetId", NullValueHandling = NullValueHandling.Ignore)]
public string CresnetId { get; set; }
@@ -250,10 +260,10 @@ namespace PepperDash.Essentials.Core
}
}
- [JsonProperty("infinetId", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the InfinetId
///
+ [JsonProperty("infinetId", NullValueHandling = NullValueHandling.Ignore)]
public string InfinetId { get; set; }
///
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/CommunicationExtras.cs b/src/PepperDash.Essentials.Core/Comm and IR/CommunicationExtras.cs
index 995004b9..d9bd0974 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/CommunicationExtras.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/CommunicationExtras.cs
@@ -20,6 +20,9 @@ namespace PepperDash.Essentials.Core
///
public interface IComPortsDevice
{
+ ///
+ /// Gets the Device
+ ///
IComPorts Device { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/ConsoleCommMockDevice.cs b/src/PepperDash.Essentials.Core/Comm and IR/ConsoleCommMockDevice.cs
index 5bc4c8fb..7c2af905 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/ConsoleCommMockDevice.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/ConsoleCommMockDevice.cs
@@ -39,6 +39,13 @@ namespace PepperDash.Essentials.Core
///
public bool ShowHexResponse { get; set; }
+ ///
+ /// Initializes a new instance of the ConsoleCommMockDevice class.
+ ///
+ /// The key of the device.
+ /// The name of the device.
+ /// The properties configuration for the device.
+ /// The communication method for the device.
public ConsoleCommMockDevice(string key, string name, ConsoleCommMockDevicePropertiesConfig props, IBasicCommunication comm)
:base(key, name)
{
@@ -72,20 +79,24 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a ConsoleCommMockDevicePropertiesConfig
- ///
+ ///
+ /// Represents a ConsoleCommMockDevicePropertiesConfig
+ ///
public class ConsoleCommMockDevicePropertiesConfig
{
- ///
- /// Gets or sets the LineEnding
- ///
+ ///
+ /// Gets or sets the LineEnding
+ ///
public string LineEnding { get; set; }
- ///
- /// Gets or sets the CommunicationMonitorProperties
- ///
+
+ ///
+ /// Gets or sets the CommunicationMonitorProperties
+ ///
public CommunicationMonitorConfig CommunicationMonitorProperties { get; set; }
+ ///
+ /// Initializes a new instance of the ConsoleCommMockDevicePropertiesConfig class.
+ ///
public ConsoleCommMockDevicePropertiesConfig()
{
LineEnding = "\x0a";
@@ -97,6 +108,9 @@ namespace PepperDash.Essentials.Core
///
public class ConsoleCommMockDeviceFactory : EssentialsDeviceFactory
{
+ ///
+ /// Initializes a new instance of the ConsoleCommMockDeviceFactory class.
+ ///
public ConsoleCommMockDeviceFactory()
{
TypeNames = new List() { "commmock" };
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/GenericComm.cs b/src/PepperDash.Essentials.Core/Comm and IR/GenericComm.cs
index a9c4df08..069244c3 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/GenericComm.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/GenericComm.cs
@@ -23,8 +23,15 @@ namespace PepperDash.Essentials.Core
{
EssentialsControlPropertiesConfig PropertiesConfig;
+ ///
+ /// Gets the CommPort
+ ///
public IBasicCommunication CommPort { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// the config of the device
public GenericComm(DeviceConfig config)
: base(config)
{
@@ -33,7 +40,7 @@ namespace PepperDash.Essentials.Core
var commPort = CommFactory.CreateCommForDevice(config);
- //Fixing decision to require '-comPorts' in delcaration for DGE in order to get a device with comports included
+ //Fixing decision to require '-comPorts' in declaration for DGE in order to get a device with comports included
if (commPort == null)
{
config.Key = config.Key + "-comPorts";
@@ -70,6 +77,10 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// CustomSetConfig method
+ ///
+ /// the new device configuration
protected override void CustomSetConfig(DeviceConfig config)
{
PropertiesConfig = CommFactory.GetControlPropertiesConfig(config);
@@ -144,6 +155,9 @@ namespace PepperDash.Essentials.Core
///
public class GenericCommFactory : EssentialsDeviceFactory
{
+ ///
+ /// Initializes a new instance of the GenericCommFactory class.
+ ///
public GenericCommFactory()
{
TypeNames = new List() { "genericComm" };
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/GenericHttpClient.cs b/src/PepperDash.Essentials.Core/Comm and IR/GenericHttpClient.cs
index 3a1ba4d4..e02027b3 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/GenericHttpClient.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/GenericHttpClient.cs
@@ -4,15 +4,26 @@ using System;
namespace PepperDash.Essentials.Core
{
+
+ ///
+ /// Represents a GenericHttpClient
+ ///
[Obsolete("Please use the builtin HttpClient class instead: https://learn.microsoft.com/en-us/dotnet/fundamentals/networking/http/httpclient-guidelines")]
- ///
- /// Represents a GenericHttpClient
- ///
public class GenericHttpClient : Device, IBasicCommunication
{
private readonly HttpClient Client;
+
+ ///
+ /// Event raised when response is received
+ ///
public event EventHandler ResponseRecived;
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// name of the device
+ /// hostname for the HTTP client
public GenericHttpClient(string key, string name, string hostname)
: base(key, name)
{
@@ -25,12 +36,9 @@ namespace PepperDash.Essentials.Core
}
///
- ///
+ /// SendText method
///
- ///
- ///
- /// SendText method
- ///
+ /// the path to send the request to
public void SendText(string path)
{
HttpClientRequest request = new HttpClientRequest();
@@ -38,6 +46,12 @@ namespace PepperDash.Essentials.Core
request.Url = new UrlParser(url);
HttpClient.DISPATCHASYNC_ERROR error = Client.DispatchAsyncEx(request, Response, request);
}
+
+ ///
+ /// SendText method
+ ///
+ /// format for the items
+ /// items to format
public void SendText(string format, params object[] items)
{
HttpClientRequest request = new HttpClientRequest();
@@ -46,9 +60,11 @@ namespace PepperDash.Essentials.Core
HttpClient.DISPATCHASYNC_ERROR error = Client.DispatchAsyncEx(request, Response, request);
}
- ///
- /// SendTextNoResponse method
- ///
+ ///
+ /// SendTextNoResponse method
+ ///
+ /// format for the items
+ /// items to format
public void SendTextNoResponse(string format, params object[] items)
{
HttpClientRequest request = new HttpClientRequest();
@@ -57,6 +73,12 @@ namespace PepperDash.Essentials.Core
Client.Dispatch(request);
}
+ ///
+ /// Response method
+ ///
+ /// response received from the HTTP client
+ /// error status of the HTTP callback
+ /// original HTTP client request
private void Response(HttpClientResponse response, HTTP_CALLBACK_ERROR error, object request)
{
if (error == HTTP_CALLBACK_ERROR.COMPLETED)
@@ -74,9 +96,10 @@ namespace PepperDash.Essentials.Core
#region IBasicCommunication Members
- ///
- /// SendBytes method
- ///
+ ///
+ /// SendBytes method
+ ///
+ /// bytes to send
public void SendBytes(byte[] bytes)
{
throw new NotImplementedException();
@@ -88,50 +111,69 @@ namespace PepperDash.Essentials.Core
#region ICommunicationReceiver Members
+ ///
+ /// BytesReceived event
+ ///
public event EventHandler BytesReceived;
- ///
- /// Connect method
- ///
+ ///
+ /// Connect method
+ ///
public void Connect()
{
throw new NotImplementedException();
}
- ///
- /// Disconnect method
- ///
+ ///
+ /// Disconnect method
+ ///
public void Disconnect()
{
throw new NotImplementedException();
}
+ ///
+ /// IsConnected property
+ ///
public bool IsConnected
{
get { return true; }
}
+ ///
+ /// TextReceived event
+ ///
public event EventHandler TextReceived;
#endregion
}
- ///
- /// Represents a GenericHttpClientEventArgs
- ///
+
+ ///
+ /// Represents a GenericHttpClientEventArgs
+ ///
public class GenericHttpClientEventArgs : EventArgs
{
- ///
- /// Gets or sets the ResponseText
- ///
+ ///
+ /// Gets or sets the ResponseText
+ ///
public string ResponseText { get; private set; }
- ///
- /// Gets or sets the RequestPath
- ///
+
+ ///
+ /// Gets or sets the RequestPath
+ ///
public string RequestPath { get; private set; }
- ///
- /// Gets or sets the Error
- ///
+
+ ///
+ /// Gets or sets the Error
+ ///
public HTTP_CALLBACK_ERROR Error { get; set; }
+
+ ///
+ /// Constructor
+ ///
+ /// response text
+ /// request path
+ /// error status
public GenericHttpClientEventArgs(string response, string request, HTTP_CALLBACK_ERROR error)
{
ResponseText = response;
diff --git a/src/PepperDash.Essentials.Core/Comm and IR/IRPortHelper.cs b/src/PepperDash.Essentials.Core/Comm and IR/IRPortHelper.cs
index 0655e83b..6ca4b533 100644
--- a/src/PepperDash.Essentials.Core/Comm and IR/IRPortHelper.cs
+++ b/src/PepperDash.Essentials.Core/Comm and IR/IRPortHelper.cs
@@ -15,10 +15,13 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
///
- ///
+ /// Helper class for IR port operations
///
public static class IRPortHelper
{
+ ///
+ /// Gets the IrDriverPathPrefix
+ ///
public static string IrDriverPathPrefix
{
get
@@ -31,7 +34,7 @@ namespace PepperDash.Essentials.Core
/// Finds either the ControlSystem or a device controller that contains IR ports and
/// returns a port from the hardware device
///
- ///
+ /// JSON token containing properties
/// IrPortConfig object. The port and or filename will be empty/null
/// if valid values don't exist on config
public static IrOutPortConfig GetIrPort(JToken propsToken)
@@ -83,9 +86,11 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// GetIrOutputPort method
- ///
+ ///
+ /// GetIrOutputPort method
+ ///
+ /// DeviceConfig to get the IR port for
+ /// IROutputPort or null if not found
public static IROutputPort GetIrOutputPort(DeviceConfig dc)
{
var irControllerKey = dc.Key + "-ir";
@@ -145,9 +150,11 @@ namespace PepperDash.Essentials.Core
return port;
}
- ///
- /// GetIrOutputPortController method
- ///
+ ///
+ /// GetIrOutputPortController method
+ ///
+ /// DeviceConfig to create the IrOutputPortController for
+ /// IrOutputPortController object
public static IrOutputPortController GetIrOutputPortController(DeviceConfig config)
{
Debug.LogMessage(LogEventLevel.Debug, "Attempting to create new Ir Port Controller");
@@ -228,23 +235,32 @@ namespace PepperDash.Essentials.Core
}*/
}
- ///
- /// Represents a IrOutPortConfig
- ///
+ ///
+ /// Represents a IrOutPortConfig
+ ///
public class IrOutPortConfig
{
+ ///
+ /// Gets or sets the Port
+ ///
[JsonProperty("port")]
- ///
- /// Gets or sets the Port
- ///
- public IROutputPort Port { get; set; }
-
+ public IROutputPort Port { get; set; }
+
+ ///
+ /// Gets or sets the FileName
+ ///
[JsonProperty("fileName")]
public string FileName { get; set; }
+ ///
+ /// Gets or sets a value indicating whether to use bridge join map
+ ///
[JsonProperty("useBridgeJoinMap")]
public bool UseBridgeJoinMap { get; set; }
+ ///
+ /// Constructor
+ ///
public IrOutPortConfig()
{
FileName = "";
diff --git a/src/PepperDash.Essentials.Core/Config/AudioControlPointListItem.cs b/src/PepperDash.Essentials.Core/Config/AudioControlPointListItem.cs
index 8b2aea54..54cc3574 100644
--- a/src/PepperDash.Essentials.Core/Config/AudioControlPointListItem.cs
+++ b/src/PepperDash.Essentials.Core/Config/AudioControlPointListItem.cs
@@ -13,9 +13,15 @@ namespace PepperDash.Essentials.Core.Config
///
public class AudioControlPointListItem
{
+ ///
+ /// Level controls for this audio control point
+ ///
[JsonProperty("levelControls")]
public Dictionary LevelControls { get; set; } = new Dictionary();
+ ///
+ /// Presets for this audio control point
+ ///
[JsonProperty("presets")]
public Dictionary Presets { get; set; } = new Dictionary();
diff --git a/src/PepperDash.Essentials.Core/Config/BasicConfig.cs b/src/PepperDash.Essentials.Core/Config/BasicConfig.cs
index c4cbc63a..435d448f 100644
--- a/src/PepperDash.Essentials.Core/Config/BasicConfig.cs
+++ b/src/PepperDash.Essentials.Core/Config/BasicConfig.cs
@@ -14,33 +14,57 @@ namespace PepperDash.Essentials.Core.Config
///
public class BasicConfig
{
+ ///
+ /// Gets or sets the Info
+ ///
[JsonProperty("info")]
public InfoConfig Info { get; set; }
+ ///
+ /// Gets or sets the Devices
+ ///
[JsonProperty("devices")]
public List Devices { get; set; }
+ ///
+ /// Gets or sets the SourceLists
+ ///
[JsonProperty("sourceLists")]
public Dictionary> SourceLists { get; set; }
+ ///
+ /// Gets or sets the DestinationLists
+ ///
[JsonProperty("destinationLists")]
public Dictionary> DestinationLists { get; set; }
+ ///
+ /// Gets or sets the AudioControlPointLists
+ ///
[JsonProperty("audioControlPointLists")]
public Dictionary AudioControlPointLists { get; set; }
+ ///
+ /// Gets or sets the CameraLists
+ ///
[JsonProperty("cameraLists")]
public Dictionary> CameraLists { get; set; }
+ ///
+ /// Gets or sets the TieLines
+ ///
[JsonProperty("tieLines")]
- ///
- /// Gets or sets the TieLines
- ///
- public List TieLines { get; set; }
+ public List TieLines { get; set; }
+ ///
+ /// Gets or sets the JoinMaps
+ ///
[JsonProperty("joinMaps")]
public Dictionary JoinMaps { get; set; }
+ ///
+ /// BasicConfig Constructor
+ ///
public BasicConfig()
{
Info = new InfoConfig();
@@ -98,6 +122,7 @@ namespace PepperDash.Essentials.Core.Config
///
/// Checks CameraLists for a given list and returns it if found. Otherwise, returns null
///
+ /// Key of desired camera list
public Dictionary GetCameraListForKey(string key)
{
if (CameraLists == null || string.IsNullOrEmpty(key) || !CameraLists.ContainsKey(key))
@@ -110,10 +135,6 @@ namespace PepperDash.Essentials.Core.Config
/// Checks Devices for an item with a Key that matches and returns it if found. Otherwise, retunes null
///
/// Key of desired device
- ///
- ///
- /// GetDeviceForKey method
- ///
public DeviceConfig GetDeviceForKey(string key)
{
if (string.IsNullOrEmpty(key))
diff --git a/src/PepperDash.Essentials.Core/Config/DeviceConfig.cs b/src/PepperDash.Essentials.Core/Config/DeviceConfig.cs
index 23063773..b8620bb9 100644
--- a/src/PepperDash.Essentials.Core/Config/DeviceConfig.cs
+++ b/src/PepperDash.Essentials.Core/Config/DeviceConfig.cs
@@ -55,6 +55,10 @@ namespace PepperDash.Essentials.Core.Config
[JsonConverter(typeof(DevicePropertiesConverter))]
public JToken Properties { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// device config
public DeviceConfig(DeviceConfig dc)
{
Key = dc.Key;
@@ -68,6 +72,9 @@ namespace PepperDash.Essentials.Core.Config
//Properties = JToken.FromObject(dc.Properties);
}
+ ///
+ /// Default Constructor
+ ///
public DeviceConfig() { }
}
@@ -85,6 +92,14 @@ namespace PepperDash.Essentials.Core.Config
return objectType == typeof(JToken);
}
+ ///
+ /// ReadJson method
+ ///
+ /// reader to use
+ /// type of object being read
+ /// existing value for the object
+ /// serializer to use
+ ///
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
return JToken.ReadFrom(reader);
diff --git a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigReader.cs b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigReader.cs
index 2591e8aa..40c6c0cf 100644
--- a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigReader.cs
+++ b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigReader.cs
@@ -18,17 +18,23 @@ namespace PepperDash.Essentials.Core.Config
///
public class ConfigReader
{
+ ///
+ /// Local Config Present Message
+ ///
public const string LocalConfigPresent =
@"
***************************************************
************* Using Local config file *************
***************************************************";
+ ///
+ /// The loaded config object
+ ///
public static EssentialsConfig ConfigObject { get; private set; }
- ///
- /// LoadConfig2 method
- ///
+ ///
+ /// LoadConfig2 method
+ ///
public static bool LoadConfig2()
{
Debug.LogMessage(LogEventLevel.Information, "Loading unmerged system/template portal configuration file.");
@@ -171,11 +177,8 @@ namespace PepperDash.Essentials.Core.Config
///
/// Returns all the files from the directory specified.
///
- ///
- ///
- ///
- /// GetConfigFiles method
- ///
+ /// path to the directory
+ /// config files
public static FileInfo[] GetConfigFiles(string filePath)
{
// Get the directory
@@ -206,11 +209,8 @@ namespace PepperDash.Essentials.Core.Config
///
/// Returns the group for a given device key in config
///
- ///
- ///
- ///
- /// GetGroupForDeviceKey method
- ///
+ /// Key of the device
+ /// Group name if the device is found, null otherwise
public static string GetGroupForDeviceKey(string key)
{
var dev = ConfigObject.Devices.FirstOrDefault(d => d.Key.Equals(key, StringComparison.OrdinalIgnoreCase));
diff --git a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigUpdater.cs b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigUpdater.cs
index d7322cc4..9df673bf 100644
--- a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigUpdater.cs
+++ b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigUpdater.cs
@@ -16,13 +16,20 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.Config
{
+ ///
+ /// ConfigUpdater class
+ ///
public static class ConfigUpdater
{
+ ///
+ /// ConfigStatusChanged event
+ ///
public static event EventHandler ConfigStatusChanged;
///
/// GetConfigFromServer method
///
+ /// URL of the config server
public static void GetConfigFromServer(string url)
{
Debug.LogMessage(LogEventLevel.Information, "Attempting to get new config from '{0}'", url);
@@ -210,13 +217,44 @@ namespace PepperDash.Essentials.Core.Config
///
public enum eUpdateStatus
{
+ ///
+ /// UpdateStarted status
+ ///
UpdateStarted,
+
+ ///
+ /// ConfigFileReceived status
+ ///
ConfigFileReceived,
+
+ ///
+ /// ArchivingConfigs status
+ ///
ArchivingConfigs,
+
+ ///
+ /// DeletingLocalConfig status
+ ///
DeletingLocalConfig,
+
+ ///
+ /// WritingConfigFile status
+ ///
WritingConfigFile,
+
+ ///
+ /// RestartingProgram status
+ ///
RestartingProgram,
+
+ ///
+ /// UpdateSucceeded status
+ ///
UpdateSucceeded,
+
+ ///
+ /// UpdateFailed status
+ ///
UpdateFailed
}
@@ -230,6 +268,10 @@ namespace PepperDash.Essentials.Core.Config
///
public eUpdateStatus UpdateStatus { get; private set; }
+ ///
+ /// ConfigStatusEventArgs Constructor
+ ///
+ ///
public ConfigStatusEventArgs(eUpdateStatus status)
{
UpdateStatus = status;
diff --git a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigWriter.cs b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigWriter.cs
index 665da856..93517a3c 100644
--- a/src/PepperDash.Essentials.Core/Config/Essentials/ConfigWriter.cs
+++ b/src/PepperDash.Essentials.Core/Config/Essentials/ConfigWriter.cs
@@ -18,22 +18,29 @@ namespace PepperDash.Essentials.Core.Config
///
public class ConfigWriter
{
+ ///
+ /// LocalConfigFolder constant
+ ///
public const string LocalConfigFolder = "LocalConfig";
+ ///
+ /// WriteTimeout constant
+ ///
public const long WriteTimeout = 30000;
+ ///
+ /// WriteTimer variable
+ ///
public static CTimer WriteTimer;
+
static CCriticalSection fileLock = new CCriticalSection();
///
/// Updates the config properties of a device
///
- ///
- ///
- ///
- ///
- /// UpdateDeviceProperties method
- ///
+ /// The key of the device to update
+ /// The new properties for the device
+ /// True if the update was successful, otherwise false
public static bool UpdateDeviceProperties(string deviceKey, JToken properties)
{
bool success = false;
@@ -59,6 +66,8 @@ namespace PepperDash.Essentials.Core.Config
///
/// UpdateDeviceConfig method
///
+ /// The new device config
+ /// True if the update was successful, otherwise false
public static bool UpdateDeviceConfig(DeviceConfig config)
{
bool success = false;
@@ -82,6 +91,8 @@ namespace PepperDash.Essentials.Core.Config
///
/// UpdateRoomConfig method
///
+ /// The new room config
+ /// True if the update was successful, otherwise false
public static bool UpdateRoomConfig(DeviceConfig config)
{
bool success = false;
@@ -118,7 +129,6 @@ namespace PepperDash.Essentials.Core.Config
///
/// Writes the current config to a file in the LocalConfig subfolder
///
- ///
private static void WriteConfigFile(object o)
{
var filePath = Global.FilePathPrefix + LocalConfigFolder + Global.DirectorySeparator + "configurationFile.json";
@@ -129,13 +139,10 @@ namespace PepperDash.Essentials.Core.Config
}
///
- /// Writes
- ///
- ///
- ///
- ///
- /// WriteFile method
+ /// Writes the current config data to a file
///
+ /// The file path to write to
+ /// The config data to write
public static void WriteFile(string filePath, string configData)
{
if (WriteTimer != null)
diff --git a/src/PepperDash.Essentials.Core/Config/ILoadConfig.cs b/src/PepperDash.Essentials.Core/Config/ILoadConfig.cs
index 9780bd44..ed6ff61f 100644
--- a/src/PepperDash.Essentials.Core/Config/ILoadConfig.cs
+++ b/src/PepperDash.Essentials.Core/Config/ILoadConfig.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core
///
public interface ILoadConfig
{
+ ///
+ /// GoWithLoad method
+ ///
void GoWithLoad();
}
}
diff --git a/src/PepperDash.Essentials.Core/Config/InfoConfig.cs b/src/PepperDash.Essentials.Core/Config/InfoConfig.cs
index 8c506f17..1ce2c60b 100644
--- a/src/PepperDash.Essentials.Core/Config/InfoConfig.cs
+++ b/src/PepperDash.Essentials.Core/Config/InfoConfig.cs
@@ -12,45 +12,57 @@ namespace PepperDash.Essentials.Core.Config
///
public class InfoConfig
{
+ ///
+ /// Gets or sets the Name
+ ///
[JsonProperty("name")]
public string Name { get; set; }
+ ///
+ /// Gets or sets the Date
+ ///
[JsonProperty("date")]
public DateTime Date { get; set; }
+ ///
+ /// Gets or sets the Type
+ ///
[JsonProperty("type")]
public string Type { get; set; }
+ ///
+ /// Gets or sets the Version
+ ///
[JsonProperty("version")]
- ///
- /// Gets or sets the Version
- ///
public string Version { get; set; }
- [JsonProperty("runtimeInfo")]
///
/// Gets or sets the RuntimeInfo
///
+ [JsonProperty("runtimeInfo")]
public RuntimeInfo RuntimeInfo { get; set; }
+ ///
+ /// Gets or sets the Comment
+ ///
[JsonProperty("comment")]
- ///
- /// Gets or sets the Comment
- ///
public string Comment { get; set; }
- [JsonProperty("hostname")]
///
/// Gets or sets the HostName
///
+ [JsonProperty("hostname")]
public string HostName { get; set; }
- [JsonProperty("appNumber")]
///
/// Gets or sets the AppNumber
///
+ [JsonProperty("appNumber")]
public uint AppNumber { get; set; }
+ ///
+ /// InfoConfig Constructor
+ ///
public InfoConfig()
{
Name = "";
diff --git a/src/PepperDash.Essentials.Core/Crestron/CrestronGenericBaseDevice.cs b/src/PepperDash.Essentials.Core/Crestron/CrestronGenericBaseDevice.cs
index 28f840ee..bdb3e461 100644
--- a/src/PepperDash.Essentials.Core/Crestron/CrestronGenericBaseDevice.cs
+++ b/src/PepperDash.Essentials.Core/Crestron/CrestronGenericBaseDevice.cs
@@ -9,8 +9,14 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Abstract base class for Crestron GenericBase devices
+ ///
public abstract class CrestronGenericBaseDevice : EssentialsDevice, IOnline, IHasFeedback, ICommunicationMonitor, IUsageTracking
{
+ ///
+ /// Gets or sets the Hardware
+ ///
protected GenericBase Hardware;
///
@@ -18,24 +24,32 @@ namespace PepperDash.Essentials.Core
///
public FeedbackCollection Feedbacks { get; private set; }
- ///
- /// Gets or sets the IsOnline
- ///
+ ///
+ /// Gets or sets the IsOnline
+ ///
public BoolFeedback IsOnline { get; private set; }
- ///
- /// Gets or sets the IsRegistered
- ///
+
+ ///
+ /// Gets or sets the IsRegistered
+ ///
public BoolFeedback IsRegistered { get; private set; }
- ///
- /// Gets or sets the IpConnectionsText
- ///
+
+ ///
+ /// Gets or sets the IpConnectionsText
+ ///
public StringFeedback IpConnectionsText { get; private set; }
- ///
- /// Gets or sets the PreventRegistration
- ///
+ ///
+ /// Gets or sets the PreventRegistration
+ ///
public bool PreventRegistration { get; protected set; }
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// name of the device
+ /// hardware instance
protected CrestronGenericBaseDevice(string key, string name, GenericBase hardware)
: base(key, name)
{
@@ -50,6 +64,11 @@ namespace PepperDash.Essentials.Core
CommunicationMonitor = new CrestronGenericBaseCommunicationMonitor(this, hardware, 120000, 300000);
}
+ ///
+ /// Constructor without hardware instance
+ ///
+ /// key of the device
+ /// name of the device
protected CrestronGenericBaseDevice(string key, string name)
: base(key, name)
{
@@ -57,6 +76,10 @@ namespace PepperDash.Essentials.Core
}
+ ///
+ /// Registers the Crestron GenericBase hardware instance
+ ///
+ /// hardware instance
protected void RegisterCrestronGenericBase(GenericBase hardware)
{
Hardware = hardware;
@@ -68,10 +91,10 @@ namespace PepperDash.Essentials.Core
CommunicationMonitor = new CrestronGenericBaseCommunicationMonitor(this, hardware, 120000, 300000);
}
- ///
- /// CustomActivate method
- ///
- ///
+ ///
+ /// CustomActivate method
+ ///
+ ///
public override bool CustomActivate()
{
Debug.LogMessage(LogEventLevel.Information, this, "Activating");
@@ -118,11 +141,7 @@ namespace PepperDash.Essentials.Core
///
/// This disconnects events and unregisters the base hardware device.
///
- ///
- ///
- /// Deactivate method
- ///
- ///
+ /// true if successful, otherwise false
public override bool Deactivate()
{
CommunicationMonitor.Stop();
@@ -138,10 +157,7 @@ namespace PepperDash.Essentials.Core
///
/// Adds feedback(s) to the list
///
- ///
- ///
- /// AddToFeedbackList method
- ///
+ /// feedback(s) to be added to the list
public void AddToFeedbackList(params Feedback[] newFbs)
{
foreach (var f in newFbs)
@@ -173,9 +189,9 @@ namespace PepperDash.Essentials.Core
#region IStatusMonitor Members
- ///
- /// Gets or sets the CommunicationMonitor
- ///
+ ///
+ /// Gets or sets the CommunicationMonitor
+ ///
public StatusMonitorBase CommunicationMonitor { get; private set; }
#endregion
@@ -189,29 +205,57 @@ namespace PepperDash.Essentials.Core
#endregion
}
+ ///
+ /// Abstract base class for Crestron GenericBase devices that are bridgeable
+ ///
public abstract class CrestronGenericBridgeableBaseDevice : CrestronGenericBaseDevice, IBridgeAdvanced
{
+
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// name of the device
+ /// hardware instance
protected CrestronGenericBridgeableBaseDevice(string key, string name, GenericBase hardware) : base(key, name, hardware)
{
}
+ ///
+ /// Constructor without hardware instance
+ ///
+ /// key of the device
+ /// name of the device
protected CrestronGenericBridgeableBaseDevice(string key, string name)
: base(key, name)
{
}
-
+ ///
+ /// Links to API
+ ///
+ /// the trilist
+ /// the starting join number
+ /// the join map key
+ /// the bridge instance
public abstract void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge);
}
//***********************************************************************************
- ///
- /// Represents a CrestronGenericBaseDeviceEventIds
- ///
+ ///
+ /// Represents a CrestronGenericBaseDeviceEventIds
+ ///
public class CrestronGenericBaseDeviceEventIds
{
+ ///
+ /// IsOnline event ID
+ ///
public const uint IsOnline = 1;
+
+ ///
+ /// IpConnectionsText event ID
+ ///
public const uint IpConnectionsText =2;
}
@@ -220,9 +264,11 @@ namespace PepperDash.Essentials.Core
///
public static class GenericBaseExtensions
{
- ///
- /// RegisterWithLogging method
- ///
+ ///
+ /// RegisterWithLogging method
+ ///
+ /// the GenericBase device
+ /// the device key
public static eDeviceRegistrationUnRegistrationResponse RegisterWithLogging(this GenericBase device, string key)
{
var result = device.Register();
diff --git a/src/PepperDash.Essentials.Core/CrestronIO/GenericRelayDevice.cs b/src/PepperDash.Essentials.Core/CrestronIO/GenericRelayDevice.cs
index 63221fe7..a41e1411 100644
--- a/src/PepperDash.Essentials.Core/CrestronIO/GenericRelayDevice.cs
+++ b/src/PepperDash.Essentials.Core/CrestronIO/GenericRelayDevice.cs
@@ -21,11 +21,22 @@ namespace PepperDash.Essentials.Core.CrestronIO
[Description("Wrapper class for a Relay")]
public class GenericRelayDevice : EssentialsBridgeableDevice, ISwitchedOutput
{
+ ///
+ /// The RelayOutput controlled by this device
+ ///
public Relay RelayOutput { get; private set; }
+ ///
+ /// Feedback to indicate whether the output is on
+ ///
public BoolFeedback OutputIsOnFeedback { get; private set; }
//Maintained for compatibility with PepperDash.Essentials.Core.Devices.CrestronProcessor
+ ///
+ /// Constructor for GenericRelayDevice
+ ///
+ /// key of the device
+ /// Relay output controlled by this device
public GenericRelayDevice(string key, Relay relay) :
base(key)
{
@@ -37,6 +48,13 @@ namespace PepperDash.Essentials.Core.CrestronIO
RelayOutput.StateChange += RelayOutput_StateChange;
}
+ ///
+ /// Constructor for GenericRelayDevice
+ ///
+ /// key of the device
+ /// name of the device
+ /// function to get the relay output
+ /// IO port configuration
public GenericRelayDevice(string key, string name, Func postActivationFunc,
IOPortConfig config)
: base(key, name)
@@ -212,6 +230,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
///
public class GenericRelayDeviceFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor for GenericRelayDeviceFactory
+ ///
public GenericRelayDeviceFactory()
{
TypeNames = new List() { "relayoutput" };
diff --git a/src/PepperDash.Essentials.Core/CrestronIO/IDigitalInput.cs b/src/PepperDash.Essentials.Core/CrestronIO/IDigitalInput.cs
index 7c63b92c..8e1b4c18 100644
--- a/src/PepperDash.Essentials.Core/CrestronIO/IDigitalInput.cs
+++ b/src/PepperDash.Essentials.Core/CrestronIO/IDigitalInput.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
///
public interface IDigitalInput
{
+ ///
+ /// Feedback to indicate the state of the input
+ ///
BoolFeedback InputStateFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/CrestronIO/IDigitalOutput.cs b/src/PepperDash.Essentials.Core/CrestronIO/IDigitalOutput.cs
index b4151941..82aa0686 100644
--- a/src/PepperDash.Essentials.Core/CrestronIO/IDigitalOutput.cs
+++ b/src/PepperDash.Essentials.Core/CrestronIO/IDigitalOutput.cs
@@ -11,7 +11,15 @@ namespace PepperDash.Essentials.Core.CrestronIO
///
public interface IDigitalOutput
{
+ ///
+ /// Feedback to indicate the state of the output
+ ///
BoolFeedback OutputStateFeedback { get; }
+
+ ///
+ /// Sets the output state
+ ///
+ /// The desired state of the output
void SetOutput(bool state);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/CrestronIO/IHasCresnetBranches.cs b/src/PepperDash.Essentials.Core/CrestronIO/IHasCresnetBranches.cs
index 4f70f914..ee86b5fe 100644
--- a/src/PepperDash.Essentials.Core/CrestronIO/IHasCresnetBranches.cs
+++ b/src/PepperDash.Essentials.Core/CrestronIO/IHasCresnetBranches.cs
@@ -13,6 +13,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasCresnetBranches
{
+ ///
+ /// Collection of Cresnet branches
+ ///
CrestronCollection CresnetBranches { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/CrestronIO/ISwitchedOutput.cs b/src/PepperDash.Essentials.Core/CrestronIO/ISwitchedOutput.cs
index 19f8e0df..30b4b8f9 100644
--- a/src/PepperDash.Essentials.Core/CrestronIO/ISwitchedOutput.cs
+++ b/src/PepperDash.Essentials.Core/CrestronIO/ISwitchedOutput.cs
@@ -13,14 +13,30 @@ namespace PepperDash.Essentials.Core.CrestronIO
///
public interface ISwitchedOutput
{
+ ///
+ /// Feedback to indicate whether the output is on
+ ///
BoolFeedback OutputIsOnFeedback {get;}
+ ///
+ /// Turns the output on
+ ///
void On();
+
+ ///
+ /// Turns the output off
+ ///
void Off();
}
+ ///
+ /// Describes a collection of switched outputs
+ ///
public interface ISwitchedOutputCollection
{
+ ///
+ /// Dictionary of switched outputs by their port number
+ ///
Dictionary SwitchedOutputs { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Device Info/DeviceInfoEventArgs.cs b/src/PepperDash.Essentials.Core/Device Info/DeviceInfoEventArgs.cs
index 22cd3b0d..266b0d0b 100644
--- a/src/PepperDash.Essentials.Core/Device Info/DeviceInfoEventArgs.cs
+++ b/src/PepperDash.Essentials.Core/Device Info/DeviceInfoEventArgs.cs
@@ -12,11 +12,18 @@ namespace PepperDash.Essentials.Core.DeviceInfo
///
public DeviceInfo DeviceInfo { get; set; }
+ ///
+ /// Constructor
+ ///
public DeviceInfoEventArgs()
{
}
+ ///
+ /// Constructor with DeviceInfo
+ ///
+ /// the DeviceInfo instance
public DeviceInfoEventArgs(DeviceInfo devInfo)
{
DeviceInfo = devInfo;
diff --git a/src/PepperDash.Essentials.Core/Device Info/IDeviceInfoProvider.cs b/src/PepperDash.Essentials.Core/Device Info/IDeviceInfoProvider.cs
index 4ac9e6c3..3f5a4735 100644
--- a/src/PepperDash.Essentials.Core/Device Info/IDeviceInfoProvider.cs
+++ b/src/PepperDash.Essentials.Core/Device Info/IDeviceInfoProvider.cs
@@ -8,10 +8,19 @@ namespace PepperDash.Essentials.Core.DeviceInfo
///
public interface IDeviceInfoProvider:IKeyed
{
+ ///
+ /// Gets the DeviceInfo
+ ///
DeviceInfo DeviceInfo { get; }
+ ///
+ /// Event fired when DeviceInfo changes
+ ///
event DeviceInfoChangeHandler DeviceInfoChanged;
+ ///
+ /// Updates the DeviceInfo
+ ///
void UpdateDeviceInfo();
}
diff --git a/src/PepperDash.Essentials.Core/Device Info/NetworkDeviceHelpers.cs b/src/PepperDash.Essentials.Core/Device Info/NetworkDeviceHelpers.cs
index 32c987b3..79eaa018 100644
--- a/src/PepperDash.Essentials.Core/Device Info/NetworkDeviceHelpers.cs
+++ b/src/PepperDash.Essentials.Core/Device Info/NetworkDeviceHelpers.cs
@@ -8,6 +8,9 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.DeviceInfo
{
+ ///
+ /// Static class NetworkDeviceHelpers
+ ///
public static class NetworkDeviceHelpers
{
///
@@ -167,7 +170,14 @@ namespace PepperDash.Essentials.Core.DeviceInfo
///
public class ArpEntry
{
+ ///
+ /// The IP Address of the ARP Entry
+ ///
public readonly IPAddress IpAddress;
+
+ ///
+ /// The MAC Address of the ARP Entry
+ ///
public readonly string MacAddress;
///
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZone.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZone.cs
index 593c2ea8..0ec65d79 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZone.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZone.cs
@@ -5,6 +5,10 @@ namespace PepperDash.Essentials.Core
///
public interface IAudioZone : IBasicVolumeWithFeedback
{
+ ///
+ /// Selects the specified input
+ ///
+ /// The input to select
void SelectInput(ushort input);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZones.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZones.cs
index 19c43fd8..540b7a03 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZones.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IAudioZones.cs
@@ -7,6 +7,9 @@ namespace PepperDash.Essentials.Core
///
public interface IAudioZones : IRouting
{
+ ///
+ /// Gets the collection of audio zones
+ ///
Dictionary Zone { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedback.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedback.cs
index addee08a..679dce71 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedback.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedback.cs
@@ -5,10 +5,30 @@ namespace PepperDash.Essentials.Core
///
public interface IBasicVolumeWithFeedback : IBasicVolumeControls
{
+ ///
+ /// Gets the mute feedback
+ ///
BoolFeedback MuteFeedback { get; }
+
+ ///
+ /// Mutes the volume
+ ///
void MuteOn();
+
+ ///
+ /// Unmutes the volume
+ ///
void MuteOff();
+
+ ///
+ /// Sets the volume to the specified level
+ ///
+ /// The volume level to set
void SetVolume(ushort level);
+
+ ///
+ /// Gets the mute feedback
+ ///
IntFeedback VolumeLevelFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedbackAdvanced.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedbackAdvanced.cs
index 5f51ce02..f0a018c5 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedbackAdvanced.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IBasicVolumeWithFeedbackAdvanced.cs
@@ -5,8 +5,14 @@ namespace PepperDash.Essentials.Core
///
public interface IBasicVolumeWithFeedbackAdvanced : IBasicVolumeWithFeedback
{
+ ///
+ /// Gets the raw volume level
+ ///
int RawVolumeLevel { get; }
+ ///
+ /// Gets the volume level units
+ ///
eVolumeLevelUnits Units { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IChannel.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IChannel.cs
index 09e0ac7a..c8c54006 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IChannel.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IChannel.cs
@@ -7,26 +7,56 @@ using PepperDash.Essentials.Core.SmartObjects;
namespace PepperDash.Essentials.Core
{
///
- ///
+ /// Defines the contract for IChannel
///
public interface IChannel
{
+ ///
+ /// Channel up
+ ///
+ /// indicates whether this is a press or release
+ ///
void ChannelUp(bool pressRelease);
+ ///
+ /// Channel down
+ ///
+ /// indicates whether this is a press or release
void ChannelDown(bool pressRelease);
+
+ ///
+ /// Last channel
+ ///
+ /// indicates whether this is a press or release
void LastChannel(bool pressRelease);
+
+ ///
+ /// Guide
+ ///
+ /// indicates whether this is a press or release
+ ///
void Guide(bool pressRelease);
+
+ ///
+ /// Info
+ ///
+ /// indicates whether this is a press or release
void Info(bool pressRelease);
+
+ ///
+ /// Exit
+ ///
+ /// indicates whether this is a press or release
void Exit(bool pressRelease);
}
///
- ///
+ /// IChannelExtensions class
///
public static class IChannelExtensions
{
- ///
- /// LinkButtons method
- ///
+ ///
+ /// LinkButtons method
+ ///
public static void LinkButtons(this IChannel dev, BasicTriList triList)
{
triList.SetBoolSigAction(123, dev.ChannelUp);
@@ -37,9 +67,9 @@ namespace PepperDash.Essentials.Core
triList.SetBoolSigAction(134, dev.Exit);
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
public static void UnlinkButtons(this IChannel dev, BasicTriList triList)
{
triList.ClearBoolSigAction(123);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IColorFunctions.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IColorFunctions.cs
index 0df2a97d..69acc8f6 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IColorFunctions.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IColorFunctions.cs
@@ -7,24 +7,45 @@ using PepperDash.Essentials.Core.SmartObjects;
namespace PepperDash.Essentials.Core
{
///
- ///
+ /// IColor interface
///
public interface IColor
{
+ ///
+ /// Red button
+ ///
+ /// indicates whether this is a press or release
void Red(bool pressRelease);
+
+ ///
+ /// Green button
+ ///
+ /// indicates whether this is a press or release
void Green(bool pressRelease);
+
+ ///
+ /// Yellow button
+ ///
+ /// indicates whether this is a press or release
void Yellow(bool pressRelease);
+
+ ///
+ /// Blue button
+ ///
+ /// indicates whether this is a press or release
void Blue(bool pressRelease);
}
///
- ///
+ /// IColorExtensions class
///
public static class IColorExtensions
{
- ///
- /// LinkButtons method
- ///
+ ///
+ /// LinkButtons method
+ ///
+ /// The IColor device
+ /// The BasicTriList to link
public static void LinkButtons(this IColor dev, BasicTriList TriList)
{
TriList.SetBoolSigAction(155, dev.Red);
@@ -33,9 +54,11 @@ namespace PepperDash.Essentials.Core
TriList.SetBoolSigAction(158, dev.Blue);
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
+ /// The IColor device
+ /// The BasicTriList to unlink
public static void UnlinkButtons(this IColor dev, BasicTriList triList)
{
triList.ClearBoolSigAction(155);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDPad.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDPad.cs
index 4a070382..ec9362b8 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDPad.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDPad.cs
@@ -11,23 +11,57 @@ namespace PepperDash.Essentials.Core
///
public interface IDPad : IKeyed
{
+ ///
+ /// Up button press
+ ///
+ /// determines if the button is pressed or released
void Up(bool pressRelease);
+
+ ///
+ /// Down button press
+ ///
+ /// determines if the button is pressed or released
void Down(bool pressRelease);
+
+ ///
+ /// Left button press
+ ///
+ /// determines if the button is pressed or released
void Left(bool pressRelease);
+
+ ///
+ /// Right button press
+ ///
+ /// determines if the button is pressed or released
void Right(bool pressRelease);
+
+ ///
+ /// Select button press
+ ///
+ /// determines if the button is pressed or released
void Select(bool pressRelease);
+
+ ///
+ /// Menu button press
+ ///
+ /// determines if the button is pressed or released
void Menu(bool pressRelease);
+
+ ///
+ /// Exit button press
+ ///
+ /// determines if the button is pressed or released
void Exit(bool pressRelease);
}
///
- ///
+ /// IDPadExtensions class
///
public static class IDPadExtensions
{
- ///
- /// LinkButtons method
- ///
+ ///
+ /// LinkButtons method
+ ///
public static void LinkButtons(this IDPad dev, BasicTriList triList)
{
triList.SetBoolSigAction(138, dev.Up);
@@ -39,9 +73,9 @@ namespace PepperDash.Essentials.Core
triList.SetBoolSigAction(134, dev.Exit);
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
public static void UnlinkButtons(this IDPad dev, BasicTriList triList)
{
triList.ClearBoolSigAction(138);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDisplayBasic.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDisplayBasic.cs
index f191417c..b76d3145 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDisplayBasic.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDisplayBasic.cs
@@ -11,15 +11,54 @@ namespace PepperDash.Essentials.Core.Devices.DeviceTypeInterfaces
///
public interface IDisplayBasic
{
+ ///
+ /// Sets the input to HDMI 1
+ ///
void InputHdmi1();
+
+ ///
+ /// Sets the input to HDMI 2
+ ///
void InputHdmi2();
+
+ ///
+ /// Sets the input to HDMI 3
+ ///
void InputHdmi3();
+
+ ///
+ /// Sets the input to HDMI 4
+ ///
void InputHdmi4();
+
+ ///
+ /// Sets the input to DisplayPort 1
+ ///
void InputDisplayPort1();
+
+ ///
+ /// Sets the input to DVI 1
+ ///
void InputDvi1();
+
+ ///
+ /// Sets the input to Video 1
+ ///
void InputVideo1();
+
+ ///
+ /// Sets the input to VGA 1
+ ///
void InputVga1();
+
+ ///
+ /// Sets the input to VGA 2
+ ///
void InputVga2();
+
+ ///
+ /// Sets the input to RGB 1
+ ///
void InputRgb1();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDvr.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDvr.cs
index 214fa78b..527e8d46 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDvr.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IDvr.cs
@@ -16,24 +16,40 @@ namespace PepperDash.Essentials.Core
///
public interface IDvr : IDPad
{
+ ///
+ /// DVR List button press
+ ///
+ /// determines if the button is pressed or released
void DvrList(bool pressRelease);
+
+ ///
+ /// Record button press
+ ///
+ /// determines if the button is pressed or released
void Record(bool pressRelease);
}
///
- ///
+ /// IDvrExtensions class
///
public static class IDvrExtensions
{
- ///
- /// LinkButtons method
- ///
+ ///
+ /// LinkButtons method
+ ///
+ /// IDvr device
+ /// BasicTriList to link to
public static void LinkButtons(this IDvr dev, BasicTriList triList)
{
triList.SetBoolSigAction(136, dev.DvrList);
triList.SetBoolSigAction(152, dev.Record);
}
+ ///
+ /// UnlinkButtons method
+ ///
+ /// IDvr device
+ /// BasicTriList to unlink from
public static void UnlinkButtons(this IDvr dev, BasicTriList triList)
{
triList.ClearBoolSigAction(136);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IEmergencyOSD.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IEmergencyOSD.cs
index c24e3e7a..efc068b0 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IEmergencyOSD.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IEmergencyOSD.cs
@@ -11,7 +11,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IEmergencyOSD
{
+ ///
+ /// Shows an emergency message on the OSD
+ ///
+ /// The URL of the emergency message to display
void ShowEmergencyMessage(string url);
+
+ ///
+ /// Hides the emergency message from the OSD
+ ///
void HideEmergencyMessage();
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IFullAudioSettings.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IFullAudioSettings.cs
index 5344dd6f..7036551c 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IFullAudioSettings.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IFullAudioSettings.cs
@@ -5,37 +5,149 @@ namespace PepperDash.Essentials.Core
///
public interface IFullAudioSettings : IBasicVolumeWithFeedback
{
+ ///
+ /// SetBalance method
+ ///
+ /// level to set
void SetBalance(ushort level);
+
+ ///
+ /// BalanceLeft method
+ ///
+ /// determines if the button is pressed or released
void BalanceLeft(bool pressRelease);
+
+ ///
+ /// BalanceRight method
+ ///
+ /// determines if the button is pressed or released
void BalanceRight(bool pressRelease);
+ ///
+ /// SetBass method
+ ///
+ /// level to set
void SetBass(ushort level);
+
+ ///
+ /// BassUp method
+ ///
+ /// determines if the button is pressed or released
void BassUp(bool pressRelease);
+
+ ///
+ /// BassDown method
+ ///
+ /// determines if the button is pressed or released
void BassDown(bool pressRelease);
+ ///
+ /// SetTreble method
+ ///
+ /// level to set
void SetTreble(ushort level);
+
+ ///
+ /// TrebleUp method
+ ///
+ /// determines if the button is pressed or released
void TrebleUp(bool pressRelease);
+
+ ///
+ /// TrebleDown method
+ ///
+ /// determines if the button is pressed or released
void TrebleDown(bool pressRelease);
+ ///
+ /// hasMaxVolume property
+ ///
bool hasMaxVolume { get; }
+
+ ///
+ /// SetMaxVolume method
+ ///
+ /// level to set
void SetMaxVolume(ushort level);
+
+ ///
+ /// MaxVolumeUp method
+ ///
+ /// determines if the button is pressed or released
void MaxVolumeUp(bool pressRelease);
+
+ ///
+ /// MaxVolumeDown method
+ ///
+ /// determines if the button is pressed or released
void MaxVolumeDown(bool pressRelease);
+ ///
+ /// hasDefaultVolume property
+ ///
bool hasDefaultVolume { get; }
+
+ ///
+ /// SetDefaultVolume method
+ ///
+ /// level to set
void SetDefaultVolume(ushort level);
+
+ ///
+ /// DefaultVolumeUp method
+ ///
+ /// determines if the button is pressed or released
void DefaultVolumeUp(bool pressRelease);
+
+ ///
+ /// DefaultVolumeDown method
+ ///
+ /// determines if the button is pressed or released
void DefaultVolumeDown(bool pressRelease);
+ ///
+ /// LoudnessToggle method
+ ///
void LoudnessToggle();
+
+ ///
+ /// MonoToggle method
+ ///
void MonoToggle();
+ ///
+ /// LoudnessFeedback property
+ ///
BoolFeedback LoudnessFeedback { get; }
+
+ ///
+ /// MonoFeedback property
+ ///
BoolFeedback MonoFeedback { get; }
+
+ ///
+ /// BalanceFeedback property
+ ///
IntFeedback BalanceFeedback { get; }
+
+ ///
+ /// BassFeedback property
+ ///
IntFeedback BassFeedback { get; }
+
+ ///
+ /// TrebleFeedback property
+ ///
IntFeedback TrebleFeedback { get; }
+
+ ///
+ /// MaxVolumeFeedback property
+ ///
IntFeedback MaxVolumeFeedback { get; }
+
+ ///
+ /// DefaultVolumeFeedback property
+ ///
IntFeedback DefaultVolumeFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasBranding.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasBranding.cs
index 299f1431..c05ef572 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasBranding.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasBranding.cs
@@ -7,7 +7,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IHasBranding
{
+ ///
+ /// Gets whether branding is enabled
+ ///
bool BrandingEnabled { get; }
+
+ ///
+ /// Initializes branding for the device
+ ///
+ /// The key identifying the room for branding purposes
void InitializeBranding(string roomKey);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasCurrentVolumeControls.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasCurrentVolumeControls.cs
index e6b1d7a3..8239f2d5 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasCurrentVolumeControls.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasCurrentVolumeControls.cs
@@ -7,11 +7,24 @@ namespace PepperDash.Essentials.Core
///
public interface IHasCurrentVolumeControls
{
+ ///
+ /// CurrentVolumeControls property
+ ///
IBasicVolumeControls CurrentVolumeControls { get; }
+
+ ///
+ /// CurrentVolumeDeviceChange event
+ ///
event EventHandler CurrentVolumeDeviceChange;
+ ///
+ /// SetDefaultLevels method
+ ///
void SetDefaultLevels();
+ ///
+ /// ZeroVolumeWhenSwtichingVolumeDevices property
+ ///
bool ZeroVolumeWhenSwtichingVolumeDevices { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasFarEndContentStatus.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasFarEndContentStatus.cs
index 114665db..5a8f66ee 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasFarEndContentStatus.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasFarEndContentStatus.cs
@@ -5,6 +5,9 @@
///
public interface IHasFarEndContentStatus
{
+ ///
+ /// Gets whether far end content is being received
+ ///
BoolFeedback ReceivingContent { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasInputs.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasInputs.cs
index ff9511fa..42e97b4b 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasInputs.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasInputs.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IHasInputs : IKeyName
{
+ ///
+ /// Gets the collection of inputs
+ ///
ISelectableItems Inputs { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControl.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControl.cs
index 4a89d8cf..20867868 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControl.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControl.cs
@@ -5,6 +5,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasMuteControl
{
+ ///
+ /// MuteToggle method
+ ///
void MuteToggle();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControlWithFeedback.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControlWithFeedback.cs
index 5278541a..eb71b40f 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControlWithFeedback.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasMuteControlWithFeedback.cs
@@ -5,8 +5,19 @@ namespace PepperDash.Essentials.Core
///
public interface IHasMuteControlWithFeedback : IHasMuteControl
{
+ ///
+ /// MuteFeedback property
+ ///
BoolFeedback MuteFeedback { get; }
+
+ ///
+ /// MuteOn method
+ ///
void MuteOn();
+
+ ///
+ /// MuteOff method
+ ///
void MuteOff();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasPhoneDialing.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasPhoneDialing.cs
index 80fdcbe4..b884092b 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasPhoneDialing.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasPhoneDialing.cs
@@ -8,11 +8,36 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IHasPhoneDialing
{
+ ///
+ /// Feedback that indicates whether the phone is off-hook
+ ///
BoolFeedback PhoneOffHookFeedback { get; }
+
+ ///
+ /// Feedback that provides the caller ID name
+ ///
StringFeedback CallerIdNameFeedback { get; }
+
+ ///
+ /// Feedback that provides the caller ID number
+ ///
StringFeedback CallerIdNumberFeedback { get; }
+
+ ///
+ /// Dials a phone call to the specified number
+ ///
+ /// the number to dial
void DialPhoneCall(string number);
+
+ ///
+ /// Ends the current phone call
+ ///
void EndPhoneCall();
+
+ ///
+ /// Sends a DTMF digit to the phone
+ ///
+ /// the DTMF digit to send
void SendDtmfToPhone(string digit);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasSurroundSoundModes.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasSurroundSoundModes.cs
index c1c4ec86..45b24f8b 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasSurroundSoundModes.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasSurroundSoundModes.cs
@@ -11,10 +11,18 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
/// Describes a device that has selectable surround sound modes
///
/// the type to use as the key for each input item. Most likely an enum or string
+ /// the type used to select an item. Most likely an enum or string
public interface IHasSurroundSoundModes: IKeyName
{
+ ///
+ /// The available surround sound modes
+ ///
ISelectableItems SurroundSoundModes { get; }
+ ///
+ /// The currently selected surround sound mode
+ ///
+ /// the selector for the surround sound mode
void SetSurroundSoundMode(TSelector selector);
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControl.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControl.cs
index eae458a3..aff866de 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControl.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControl.cs
@@ -5,7 +5,16 @@ namespace PepperDash.Essentials.Core
///
public interface IHasVolumeControl
{
+ ///
+ /// VolumeUp method
+ ///
+ /// determines if the volume up command is a press or release action
void VolumeUp(bool pressRelease);
+
+ ///
+ /// VolumeDown method
+ ///
+ /// determines if the volume down command is a press or release action
void VolumeDown(bool pressRelease);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControlWithFeedback.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControlWithFeedback.cs
index a021edb1..fe3f5440 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControlWithFeedback.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeControlWithFeedback.cs
@@ -5,7 +5,15 @@ namespace PepperDash.Essentials.Core
///
public interface IHasVolumeControlWithFeedback : IHasVolumeControl
{
+ ///
+ /// SetVolume method
+ ///
+ /// The volume level to set
void SetVolume(ushort level);
+
+ ///
+ /// VolumeLevelFeedback property
+ ///
IntFeedback VolumeLevelFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeDevice.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeDevice.cs
index 706271aa..3012da19 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeDevice.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasVolumeDevice.cs
@@ -5,6 +5,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasVolumeDevice
{
+ ///
+ /// VolumeDevice property
+ ///
IBasicVolumeControls VolumeDevice { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasWebView.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasWebView.cs
index 3d95504c..be751f41 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasWebView.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IHasWebView.cs
@@ -11,9 +11,28 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IHasWebView
{
+ ///
+ /// Indicates whether the webview is currently visible
+ ///
bool WebviewIsVisible { get; }
+
+ ///
+ /// Shows the webview with the specified parameters
+ ///
+ /// the URL to display in the webview
+ /// the display mode for the webview
+ /// the title to display on the webview
+ /// the target for the webview
void ShowWebView(string url, string mode, string title, string target);
+
+ ///
+ /// Hides the webview
+ ///
void HideWebView();
+
+ ///
+ /// Event raised when the webview status changes
+ ///
event EventHandler WebViewStatusChanged;
}
@@ -27,6 +46,10 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public string Status { get; }
+ ///
+ /// Constructor for WebViewStatusChangedEventArgs
+ ///
+ /// the new status of the webview
public WebViewStatusChangedEventArgs(string status)
{
Status = status;
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageDefinition.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageDefinition.cs
index 6a168f2d..f02c0e05 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageDefinition.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageDefinition.cs
@@ -8,14 +8,49 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ILanguageDefinition
{
+ ///
+ /// The locale name for the language definition
+ ///
string LocaleName { get; set; }
+
+ ///
+ /// The friendly name for the language definition
+ ///
string FriendlyName { get; set; }
+
+ ///
+ /// Indicates whether the language definition is enabled
+ ///
bool Enable { get; set; }
+
+ ///
+ /// The UI labels for the language definition
+ ///
List UiLabels { get; set; }
+
+ ///
+ /// The source and destination labels for the language definition
+ ///
List Sources { get; set; }
+
+ ///
+ /// The destination labels for the language definition
+ ///
List Destinations { get; set; }
+
+ ///
+ /// The source group names for the language definition
+ ///
List SourceGroupNames { get; set; }
+
+ ///
+ /// The destination group names for the language definition
+ ///
List DestinationGroupNames { get; set; }
+
+ ///
+ /// The room names for the language definition
+ ///
List RoomNames { get; set; }
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageProvider.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageProvider.cs
index ea6afe3b..9ac22d2b 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageProvider.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILanguageProvider.cs
@@ -8,8 +8,14 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ILanguageProvider
{
+ ///
+ /// The current language definition
+ ///
ILanguageDefinition CurrentLanguage { get; set; }
+ ///
+ /// Event raised when the current language changes
+ ///
event EventHandler CurrentLanguageChanged;
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILevelControls.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILevelControls.cs
index 34c87419..e0a1081f 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILevelControls.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ILevelControls.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ILevelControls
{
+ ///
+ /// The level control points
+ ///
Dictionary LevelControlPoints { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlAction.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlAction.cs
index 982deaae..86a3d61a 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlAction.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlAction.cs
@@ -8,8 +8,14 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IMobileControlAction
{
+ ///
+ /// The messenger to use for mobile control actions
+ ///
IMobileControlMessenger Messenger { get; }
+ ///
+ /// The action to perform for mobile control actions
+ ///
Action Action { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlMessage.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlMessage.cs
index 41645da2..326eb38d 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlMessage.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlMessage.cs
@@ -3,14 +3,26 @@ using Newtonsoft.Json.Linq;
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
{
+ ///
+ /// Defines the contract for IMobileControlMessage
+ ///
public interface IMobileControlMessage
{
+ ///
+ /// The type of mobile control message
+ ///
[JsonProperty("type")]
string Type { get; }
+ ///
+ /// The client ID for the mobile control message
+ ///
[JsonProperty("clientId", NullValueHandling = NullValueHandling.Ignore)]
string ClientId { get; }
+ ///
+ /// The content of the mobile control message
+ ///
[JsonProperty("content", NullValueHandling = NullValueHandling.Ignore)]
JToken Content { get; }
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlRoomMessenger.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlRoomMessenger.cs
index 6f4d9a17..9a0a5517 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlRoomMessenger.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IMobileControlRoomMessenger.cs
@@ -8,26 +8,60 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface IMobileControlRoomMessenger : IKeyed
{
+ ///
+ /// Raised when the user code changes
+ ///
event EventHandler UserCodeChanged;
+ ///
+ /// Raised when the user is prompted for the code
+ ///
event EventHandler UserPromptedForCode;
+ ///
+ /// Raised when a client joins the room
+ ///
event EventHandler ClientJoined;
+ ///
+ /// Raised when the app url changes
+ ///
event EventHandler AppUrlChanged;
+ ///
+ /// The user code for joining the room
+ ///
string UserCode { get; }
+ ///
+ /// The QR code URL for joining the room
+ ///
string QrCodeUrl { get; }
+ ///
+ /// The QR code checksum
+ ///
string QrCodeChecksum { get; }
+ ///
+ /// The Mobile Control server URL
+ ///
string McServerUrl { get; }
+ ///
+ /// The name of the room
+ ///
string RoomName { get; }
+ ///
+ /// The Mobile Control app URL
+ ///
string AppUrl { get; }
+ ///
+ /// Updates the url of the Mobile Control app
+ ///
+ /// The new URL of the Mobile Control app
void UpdateAppUrl(string url);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/INumeric.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/INumeric.cs
index 3adb7f4e..fc0fca99 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/INumeric.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/INumeric.cs
@@ -10,37 +10,119 @@ namespace PepperDash.Essentials.Core
///
public interface INumericKeypad:IKeyed
{
+ ///
+ /// Digit buttons 0
+ ///
+ /// determines if the digit button command is a press or release action
void Digit0(bool pressRelease);
+
+ ///
+ /// Digit buttons 1
+ ///
+ /// determines if the digit button command is a press or release action
void Digit1(bool pressRelease);
+
+ ///
+ /// Digit buttons 2
+ ///
+ /// determines if the digit button command is a press or release action
void Digit2(bool pressRelease);
+
+ ///
+ /// Digit buttons 3
+ ///
+ /// determines if the digit button command is a press or release action
void Digit3(bool pressRelease);
+
+ ///
+ /// Digit buttons 4
+ ///
+ ///
void Digit4(bool pressRelease);
+
+ ///
+ /// Digit buttons 5
+ ///
+ /// determines if the digit button command is a press or release action
void Digit5(bool pressRelease);
+
+ ///
+ /// Digit buttons 6
+ ///
+ /// determines if the digit button command is a press or release action
void Digit6(bool pressRelease);
+
+ ///
+ /// Digit buttons 7
+ ///
+ /// determines if the digit button command is a press or release action
void Digit7(bool pressRelease);
+
+ ///
+ /// Digit buttons 8
+ ///
+ /// determines if the digit button command is a press or release action
void Digit8(bool pressRelease);
+
+ ///
+ /// Digit buttons 9
+ ///
+ /// determines if the digit button command is a press or release action
void Digit9(bool pressRelease);
///
/// Used to hide/show the button and/or text on the left-hand keypad button
///
bool HasKeypadAccessoryButton1 { get; }
+
+ ///
+ /// Label for the left-hand keypad button
+ ///
string KeypadAccessoryButton1Label { get; }
+
+ ///
+ /// Left-hand keypad button action
+ ///
+ /// determines if the button command is a press or release action
void KeypadAccessoryButton1(bool pressRelease);
+ ///
+ /// Used to hide/show the button and/or text on the right-hand keypad button
+ ///
bool HasKeypadAccessoryButton2 { get; }
+
+ ///
+ /// Label for the right-hand keypad button
+ ///
string KeypadAccessoryButton2Label { get; }
+
+ ///
+ /// Right-hand keypad button action
+ ///
+ /// determines if the button command is a press or release action
void KeypadAccessoryButton2(bool pressRelease);
}
+ ///
+ /// Defines the contract for ISetTopBoxNumericKeypad
+ ///
public interface ISetTopBoxNumericKeypad : INumericKeypad
{
+ ///
+ /// Dash button action
+ ///
+ /// determines if the button command is a press or release action
void Dash(bool pressRelease);
+
+ ///
+ /// Keypad Enter button action
+ ///
+ /// determines if the button command is a press or release action
void KeypadEnter(bool pressRelease);
}
///
- ///
+ /// INumericExtensions class
///
public static class INumericExtensions
{
@@ -65,9 +147,9 @@ namespace PepperDash.Essentials.Core
trilist.StringInput[111].StringValue = dev.KeypadAccessoryButton2Label;
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
public static void UnlinkButtons(this INumericKeypad dev, BasicTriList trilist)
{
trilist.ClearBoolSigAction(110);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPasswordPrompt.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPasswordPrompt.cs
index 31e7acaf..2ee85341 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPasswordPrompt.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPasswordPrompt.cs
@@ -19,10 +19,13 @@ namespace PepperDash.Essentials.Core
///
/// Submits the password
///
- ///
+ /// The password to submit
void SubmitPassword(string password);
}
+ ///
+ /// PasswordPromptEventArgs class
+ ///
public class PasswordPromptEventArgs : EventArgs
{
///
@@ -45,6 +48,13 @@ namespace PepperDash.Essentials.Core
///
public string Message { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// indicates if the last submitted password was incorrect
+ /// indicates if the login attempt failed
+ /// indicates if the login attempt was cancelled
+ /// provides a message related to the password prompt
public PasswordPromptEventArgs(bool lastAttemptIncorrect, bool loginFailed, bool loginCancelled, string message)
{
LastAttemptWasIncorrect = lastAttemptIncorrect;
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPower.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPower.cs
index 79c58fa2..b94a64ed 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPower.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IPower.cs
@@ -19,6 +19,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasPowerControlWithFeedback : IHasPowerControl
{
+ ///
+ /// Feedback indicating whether the device is powered on
+ ///
BoolFeedback PowerIsOnFeedback { get; }
}
@@ -27,13 +30,24 @@ namespace PepperDash.Essentials.Core
///
public interface IHasPowerControl
{
+ ///
+ /// Powers the device on
+ ///
void PowerOn();
+
+ ///
+ /// Powers the device off
+ ///
void PowerOff();
+
+ ///
+ /// Toggles the power state of the device
+ ///
void PowerToggle();
}
///
- ///
+ /// IHasPowerControlExtensions class
///
public static class IHasPowerControlExtensions
{
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IProjectorScreenLiftControl.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IProjectorScreenLiftControl.cs
index 1d5d20da..56aef09e 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IProjectorScreenLiftControl.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IProjectorScreenLiftControl.cs
@@ -5,26 +5,60 @@ using Newtonsoft.Json.Converters;
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
{
- ///
- /// Defines the contract for IProjectorScreenLiftControl
- ///
+ ///
+ /// Defines the contract for IProjectorScreenLiftControl
+ ///
public interface IProjectorScreenLiftControl
{
+ ///
+ /// Raises the screen/lift
+ ///
void Raise();
+
+ ///
+ /// Lowers the screen/lift
+ ///
void Lower();
+
+ ///
+ /// Stops the screen/lift
+ ///
BoolFeedback IsInUpPosition { get; }
+
+ ///
+ /// Gets whether the screen/lift is in the up position
+ ///
bool InUpPosition { get; }
+
+ ///
+ /// Gets whether the screen/lift is in the down position
+ ///
event EventHandler PositionChanged;
+
+ ///
+ /// The device key of the display associated with this screen/lift
+ ///
string DisplayDeviceKey { get; }
+
+ ///
+ /// The type of device
+ ///
eScreenLiftControlType Type { get; } // screen/lift
}
- ///
- /// Enumeration of eScreenLiftControlType values
- ///
+ ///
+ /// Enumeration of eScreenLiftControlType values
+ ///
public enum eScreenLiftControlType
{
+ ///
+ /// Lift type device
+ ///
lift,
+
+ ///
+ /// Screen type device
+ ///
screen
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItem.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItem.cs
index 8d99b959..ff05188e 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItem.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItem.cs
@@ -10,10 +10,20 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ISelectableItem : IKeyName
{
+ ///
+ /// Raised when the item is updated
+ ///
event EventHandler ItemUpdated;
+ ///
+ /// Gets or sets whether the item is selected
+ ///
[JsonProperty("isSelected")]
bool IsSelected { get; set; }
+
+ ///
+ /// Selects the item
+ ///
void Select();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItems.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItems.cs
index f3d2beec..c955a56f 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItems.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISelectableItems.cs
@@ -9,12 +9,25 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ISelectableItems where TValue : ISelectableItem
{
+ ///
+ /// Raised when the items are updated
+ ///
event EventHandler ItemsUpdated;
+
+ ///
+ /// Raised when the current item changes
+ ///
event EventHandler CurrentItemChanged;
+ ///
+ /// Gets or sets the collection of selectable items
+ ///
[JsonProperty("items")]
Dictionary Items { get; set; }
+ ///
+ /// Gets or sets the current selected item key
+ ///
[JsonProperty("currentItem")]
TKey CurrentItem { get; set; }
@@ -24,9 +37,6 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
/// Describes a collection of items that can be selected
///
/// type for the keys in the collection. Probably a string or enum
- ///
- /// Defines the contract for ISelectableItems
- ///
public interface ISelectableItems : ISelectableItems
{
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISetTopBoxControls.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISetTopBoxControls.cs
index 646aab93..d8bf969e 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISetTopBoxControls.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ISetTopBoxControls.cs
@@ -5,9 +5,9 @@ using PepperDash.Essentials.Core.SmartObjects;
namespace PepperDash.Essentials.Core
{
- ///
- /// Defines the contract for ISetTopBoxControls
- ///
+ ///
+ /// Defines the contract for ISetTopBoxControls
+ ///
public interface ISetTopBoxControls : IChannel, IColor, IDPad, ISetTopBoxNumericKeypad,
ITransport, IUiDisplayInfo
{
@@ -31,27 +31,51 @@ namespace PepperDash.Essentials.Core
///
bool HasDpad { get; }
+ ///
+ /// TV Presets model
+ ///
PepperDash.Essentials.Core.Presets.DevicePresetsModel TvPresets { get; }
+
+ ///
+ /// LoadPresets method
+ ///
+ /// path to file that contains the presets
void LoadPresets(string filePath);
+ ///
+ /// DvrList button action
+ ///
+ /// determines if the button action is a press or release
void DvrList(bool pressRelease);
+
+ ///
+ /// Replay button action
+ ///
+ /// determines if the button action is a press or release
void Replay(bool pressRelease);
}
+ ///
+ /// ISetTopBoxControlsExtensions class
+ ///
public static class ISetTopBoxControlsExtensions
{
- ///
- /// LinkButtons method
- ///
+ ///
+ /// LinkButtons method
+ ///
+ /// The ISetTopBoxControls device
+ /// The BasicTriList to link buttons to
public static void LinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
{
triList.SetBoolSigAction(136, dev.DvrList);
triList.SetBoolSigAction(152, dev.Replay);
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
+ /// The ISetTopBoxControls device
+ /// The BasicTriList to unlink buttons from
public static void UnlinkButtons(this ISetTopBoxControls dev, BasicTriList triList)
{
triList.ClearBoolSigAction(136);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITemperatureSensor.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITemperatureSensor.cs
index f77a2ef8..897855b4 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITemperatureSensor.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITemperatureSensor.cs
@@ -17,9 +17,15 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
IntFeedback TemperatureFeedback { get; }
-
+ ///
+ /// The temperature in Celsius format
+ ///
BoolFeedback TemperatureInCFeedback { get; }
+ ///
+ /// Sets the temperature format to Celsius or Fahrenheit
+ ///
+ /// If true, sets the format to Celsius; otherwise, sets it to Fahrenheit.
void SetTemperatureFormat(bool setToC);
}
}
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITransport.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITransport.cs
index 1a8f2a2b..917a4b19 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITransport.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITransport.cs
@@ -7,25 +7,65 @@ namespace PepperDash.Essentials.Core
///
public interface ITransport
{
+ ///
+ /// Play button action
+ ///
+ /// determines if the button action is a press or release
void Play(bool pressRelease);
+
+ ///
+ /// Pause button action
+ ///
+ /// determines if the button action is a press or release
void Pause(bool pressRelease);
+
+ ///
+ /// Rewind button action
+ ///
+ /// determines if the button action is a press or release
void Rewind(bool pressRelease);
+
+ ///
+ /// Fast Forward button action
+ ///
+ /// determines if the button action is a press or release
void FFwd(bool pressRelease);
+
+ ///
+ /// Chapter Minus button action
+ ///
+ /// determines if the button action is a press or release
void ChapMinus(bool pressRelease);
+
+ ///
+ /// Chapter Plus button action
+ ///
+ /// determines if the button action is a press or release
void ChapPlus(bool pressRelease);
+
+ ///
+ /// Stop button action
+ ///
+ /// determines if the button action is a press or release
void Stop(bool pressRelease);
+
+ ///
+ /// Record button action
+ ///
+ /// determines if the button action is a press or release
void Record(bool pressRelease);
}
///
- ///
+ /// ITransportExtensions class
///
public static class ITransportExtensions
{
///
/// Attaches to trilist joins: Play:145, Pause:146, Stop:147, ChapPlus:148, ChapMinus:149, Rewind:150, Ffwd:151, Record:154
- ///
///
+ /// The ITransport device
+ /// The BasicTriList to link buttons to
public static void LinkButtons(this ITransport dev, BasicTriList triList)
{
triList.SetBoolSigAction(145, dev.Play);
@@ -38,9 +78,11 @@ namespace PepperDash.Essentials.Core
triList.SetBoolSigAction(154, dev.Record);
}
- ///
- /// UnlinkButtons method
- ///
+ ///
+ /// UnlinkButtons method
+ ///
+ /// The ITransport device
+ /// The BasicTriList to unlink buttons from
public static void UnlinkButtons(this ITransport dev, BasicTriList triList)
{
triList.ClearBoolSigAction(145);
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITvPresetsProvider.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITvPresetsProvider.cs
index 68650fa4..09b7066c 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITvPresetsProvider.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/ITvPresetsProvider.cs
@@ -7,6 +7,9 @@ namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
///
public interface ITvPresetsProvider
{
+ ///
+ /// The TV presets model
+ ///
DevicePresetsModel TvPresets { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IUiDisplayInfo.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IUiDisplayInfo.cs
index aa0144fe..231abf1f 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IUiDisplayInfo.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IUiDisplayInfo.cs
@@ -2,11 +2,14 @@
namespace PepperDash.Essentials.Core
{
- ///
- /// Defines the contract for IUiDisplayInfo
- ///
+ ///
+ /// Defines the contract for IUiDisplayInfo
+ ///
public interface IUiDisplayInfo : IKeyed
{
+ ///
+ /// Display UI Type
+ ///
uint DisplayUiType { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IWarmingCooling.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IWarmingCooling.cs
index 2baf1548..e69bf35c 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IWarmingCooling.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/IWarmingCooling.cs
@@ -11,7 +11,14 @@ namespace PepperDash.Essentials.Core
///
public interface IWarmingCooling
{
+ ///
+ /// Feedback indicating whether the device is warming up
+ ///
BoolFeedback IsWarmingUpFeedback { get; }
+
+ ///
+ /// Feedback indicating whether the device is cooling down
+ ///
BoolFeedback IsCoolingDownFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/eVolumeLevelUnits.cs b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/eVolumeLevelUnits.cs
index 0ebb9270..b88ea928 100644
--- a/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/eVolumeLevelUnits.cs
+++ b/src/PepperDash.Essentials.Core/DeviceTypeInterfaces/eVolumeLevelUnits.cs
@@ -1,10 +1,28 @@
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Volume level units
+ ///
public enum eVolumeLevelUnits
{
+ ///
+ /// Decibels
+ ///
Decibels,
+
+ ///
+ /// Percent
+ ///
Percent,
+
+ ///
+ /// Relative
+ ///
Relative,
+
+ ///
+ /// Absolute
+ ///
Absolute
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/AudioControlListItemBase.cs b/src/PepperDash.Essentials.Core/Devices/AudioControlListItemBase.cs
index 19244469..038f80a7 100644
--- a/src/PepperDash.Essentials.Core/Devices/AudioControlListItemBase.cs
+++ b/src/PepperDash.Essentials.Core/Devices/AudioControlListItemBase.cs
@@ -7,15 +7,15 @@ using System.Threading.Tasks;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Base class for audio control list items
+ ///
public abstract class AudioControlListItemBase
{
///
/// Key of the parent device in the DeviceManager
///
[JsonProperty("parentDeviceKey")]
- ///
- /// Gets or sets the ParentDeviceKey
- ///
public string ParentDeviceKey { get; set; }
///
diff --git a/src/PepperDash.Essentials.Core/Devices/AudioInterfaces.cs b/src/PepperDash.Essentials.Core/Devices/AudioInterfaces.cs
index 99b55669..cc886636 100644
--- a/src/PepperDash.Essentials.Core/Devices/AudioInterfaces.cs
+++ b/src/PepperDash.Essentials.Core/Devices/AudioInterfaces.cs
@@ -14,23 +14,37 @@ namespace PepperDash.Essentials.Core
///
public enum AudioChangeType
{
- Mute, Volume
+ ///
+ /// Mute change
+ ///
+ Mute,
+
+ ///
+ /// Volume change
+ ///
+ Volume
}
- ///
- /// Represents a AudioChangeEventArgs
- ///
+ ///
+ /// Represents a AudioChangeEventArgs
+ ///
public class AudioChangeEventArgs
{
- ///
- /// Gets or sets the ChangeType
- ///
+ ///
+ /// Gets or sets the ChangeType
+ ///
public AudioChangeType ChangeType { get; private set; }
- ///
- /// Gets or sets the AudioDevice
- ///
+
+ ///
+ /// Gets or sets the AudioDevice
+ ///
public IBasicVolumeControls AudioDevice { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// device that changed
+ /// type of change
public AudioChangeEventArgs(IBasicVolumeControls device, AudioChangeType changeType)
{
ChangeType = changeType;
diff --git a/src/PepperDash.Essentials.Core/Devices/CameraListItem.cs b/src/PepperDash.Essentials.Core/Devices/CameraListItem.cs
index 9b45c728..a154c083 100644
--- a/src/PepperDash.Essentials.Core/Devices/CameraListItem.cs
+++ b/src/PepperDash.Essentials.Core/Devices/CameraListItem.cs
@@ -8,10 +8,10 @@ namespace PepperDash.Essentials.Core
///
public class CameraListItem
{
- [JsonProperty("deviceKey")]
///
- /// Gets or sets the DeviceKey
+ /// Key of the camera device
///
+ [JsonProperty("deviceKey")]
public string DeviceKey { get; set; }
///
@@ -52,9 +52,6 @@ namespace PepperDash.Essentials.Core
/// A name that will override the source's name on the UI
///
[JsonProperty("name")]
- ///
- /// Gets or sets the Name
- ///
public string Name { get; set; }
diff --git a/src/PepperDash.Essentials.Core/Devices/CodecInterfaces.cs b/src/PepperDash.Essentials.Core/Devices/CodecInterfaces.cs
index 1c2391bb..b9d8a28f 100644
--- a/src/PepperDash.Essentials.Core/Devices/CodecInterfaces.cs
+++ b/src/PepperDash.Essentials.Core/Devices/CodecInterfaces.cs
@@ -12,11 +12,36 @@ namespace PepperDash.Essentials.Core
public interface IReceiveVolume
{
// Break this out into 3 interfaces
+
+ ///
+ /// Sets the receive volume level
+ ///
+ /// volume level to set
void SetReceiveVolume(ushort level);
+
+ ///
+ /// Mutes the receive audio
+ ///
void ReceiveMuteOn();
+
+ ///
+ /// Unmutes the receive audio
+ ///
void ReceiveMuteOff();
+
+ ///
+ /// Toggles the receive mute state
+ ///
void ReceiveMuteToggle();
+
+ ///
+ /// Feedback for the receive volume level
+ ///
IntFeedback ReceiveLevelFeedback { get; }
+
+ ///
+ /// Feedback for the receive mute state
+ ///
BoolFeedback ReceiveMuteIsOnFeedback { get; }
}
@@ -25,11 +50,35 @@ namespace PepperDash.Essentials.Core
///
public interface ITransmitVolume
{
+ ///
+ /// Sets the transmit volume level
+ ///
+ /// volume level to set
void SetTransmitVolume(ushort level);
+
+ ///
+ /// Mutes the transmit audio
+ ///
void TransmitMuteOn();
+
+ ///
+ /// Unmutes the transmit audio
+ ///
void TransmitMuteOff();
+
+ ///
+ /// Toggles the transmit mute state
+ ///
void TransmitMuteToggle();
+
+ ///
+ /// Feedback for the transmit volume level
+ ///
IntFeedback TransmitLevelFeedback { get; }
+
+ ///
+ /// Feedback for the transmit mute state
+ ///
BoolFeedback TransmitMuteIsOnFeedback { get; }
}
@@ -38,9 +87,24 @@ namespace PepperDash.Essentials.Core
///
public interface IPrivacy
{
+ ///
+ /// Enables privacy mode
+ ///
void PrivacyModeOn();
+
+ ///
+ /// Disables privacy mode
+ ///
void PrivacyModeOff();
+
+ ///
+ /// Toggles privacy mode
+ ///
void PrivacyModeToggle();
+
+ ///
+ /// Feedback for the privacy mode state
+ ///
BoolFeedback PrivacyModeIsOnFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/CrestronProcessor.cs b/src/PepperDash.Essentials.Core/Devices/CrestronProcessor.cs
index 57d99df8..8c31d4c6 100644
--- a/src/PepperDash.Essentials.Core/Devices/CrestronProcessor.cs
+++ b/src/PepperDash.Essentials.Core/Devices/CrestronProcessor.cs
@@ -15,10 +15,20 @@ namespace PepperDash.Essentials.Core.Devices
///
public class CrestronProcessor : Device, ISwitchedOutputCollection
{
+ ///
+ /// Collection of switched outputs (relays) on the processor
+ ///
public Dictionary SwitchedOutputs { get; private set; }
+ ///
+ /// The underlying CrestronControlSystem processor
+ ///
public Crestron.SimplSharpPro.CrestronControlSystem Processor { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// key for the processor
public CrestronProcessor(string key)
: base(key)
{
diff --git a/src/PepperDash.Essentials.Core/Devices/DestinationListItem.cs b/src/PepperDash.Essentials.Core/Devices/DestinationListItem.cs
index 053d3895..5a66c0b3 100644
--- a/src/PepperDash.Essentials.Core/Devices/DestinationListItem.cs
+++ b/src/PepperDash.Essentials.Core/Devices/DestinationListItem.cs
@@ -52,9 +52,6 @@ namespace PepperDash.Essentials.Core
/// If set, this name will be used as the PreferredName instead of the device name.
///
[JsonProperty("name")]
- ///
- /// Gets or sets the Name
- ///
public string Name { get; set; }
///
diff --git a/src/PepperDash.Essentials.Core/Devices/DeviceApiBase.cs b/src/PepperDash.Essentials.Core/Devices/DeviceApiBase.cs
index 34669ff5..28ac13dc 100644
--- a/src/PepperDash.Essentials.Core/Devices/DeviceApiBase.cs
+++ b/src/PepperDash.Essentials.Core/Devices/DeviceApiBase.cs
@@ -11,7 +11,14 @@ namespace PepperDash.Essentials.Core.Devices
///
public abstract class DeviceApiBase
{
+ ///
+ /// Action API dictionary
+ ///
public Dictionary ActionApi { get; protected set; }
+
+ ///
+ /// Feedback API dictionary
+ ///
public Dictionary FeedbackApi { get; protected set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/DeviceFeedbackExtensions.cs b/src/PepperDash.Essentials.Core/Devices/DeviceFeedbackExtensions.cs
index e2ef5d8d..0e7595e1 100644
--- a/src/PepperDash.Essentials.Core/Devices/DeviceFeedbackExtensions.cs
+++ b/src/PepperDash.Essentials.Core/Devices/DeviceFeedbackExtensions.cs
@@ -8,18 +8,18 @@ using PepperDash.Core;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// DeviceFeedbackExtensions class
+ ///
public static class DeviceFeedbackExtensions
{
///
/// Attempts to get and return a feedback property from a device by name.
/// If unsuccessful, returns null.
///
- ///
- ///
- ///
- ///
- /// GetFeedbackProperty method
- ///
+ /// device to get feedback from
+ /// name of the feedback property
+ /// Feedback property if found, otherwise null
public static Feedback GetFeedbackProperty(this Device device, string propertyName)
{
var feedback = DeviceJsonApi.GetPropertyByName(device.Key, propertyName) as Feedback;
diff --git a/src/PepperDash.Essentials.Core/Devices/DeviceJsonApi.cs b/src/PepperDash.Essentials.Core/Devices/DeviceJsonApi.cs
index a71ca455..c4ec2ca9 100644
--- a/src/PepperDash.Essentials.Core/Devices/DeviceJsonApi.cs
+++ b/src/PepperDash.Essentials.Core/Devices/DeviceJsonApi.cs
@@ -16,13 +16,10 @@ namespace PepperDash.Essentials.Core
///
public class DeviceJsonApi
{
- ///
- ///
- ///
- ///
///
/// DoDeviceActionWithJson method
///
+ /// json method
public static void DoDeviceActionWithJson(string json)
{
if (String.IsNullOrEmpty(json))
@@ -45,13 +42,10 @@ namespace PepperDash.Essentials.Core
}
- ///
- ///
- ///
- ///
///
/// DoDeviceAction method
///
+ /// action method
public static void DoDeviceAction(DeviceActionWrapper action)
{
var key = action.DeviceKey;
@@ -111,6 +105,10 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// DoDeviceActionAsync method
+ ///
+ /// action method
public static async Task DoDeviceActionAsync(DeviceActionWrapper action)
{
var key = action.DeviceKey;
@@ -194,11 +192,8 @@ namespace PepperDash.Essentials.Core
///
/// Gets the properties on a device
///
- ///
- ///
- ///
- /// GetProperties method
- ///
+ /// The path to the device object
+ /// A JSON string representing the properties of the device
public static string GetProperties(string deviceObjectPath)
{
var obj = FindObjectOnPath(deviceObjectPath);
@@ -214,12 +209,9 @@ namespace PepperDash.Essentials.Core
///
/// Gets a property from a device path by name
///
- ///
- ///
- ///
- ///
- /// GetPropertyByName method
- ///
+ /// The path to the device object
+ /// The name of the property to get
+ /// The value of the property
public static object GetPropertyByName(string deviceObjectPath, string propertyName)
{
var dev = FindObjectOnPath(deviceObjectPath);
@@ -243,11 +235,8 @@ namespace PepperDash.Essentials.Core
///
/// Gets the methods on a device
///
- ///
- ///
- ///
- /// GetMethods method
- ///
+ /// The path to the device object
+ /// A JSON string representing the methods of the device
public static string GetMethods(string deviceObjectPath)
{
var obj = FindObjectOnPath(deviceObjectPath);
@@ -263,8 +252,10 @@ namespace PepperDash.Essentials.Core
}
///
- /// GetApiMethods method
+ /// Gets the API methods on a device
///
+ /// The path to the device object
+ /// A JSON string representing the API methods of the device
public static string GetApiMethods(string deviceObjectPath)
{
var obj = FindObjectOnPath(deviceObjectPath);
@@ -284,6 +275,8 @@ namespace PepperDash.Essentials.Core
///
/// FindObjectOnPath method
///
+ /// The path to the device object
+ /// The object found at the specified path
public static object FindObjectOnPath(string deviceObjectPath)
{
var path = deviceObjectPath.Split('.');
@@ -369,11 +362,8 @@ namespace PepperDash.Essentials.Core
///
/// Sets a property on an object.
///
- ///
- ///
- ///
- /// SetProperty method
- ///
+ /// The path to the device object
+ /// A JSON string representing the result of setting the property
public static string SetProperty(string deviceObjectPath)
{
throw new NotImplementedException("This could be really useful. Finish it please");
@@ -393,13 +383,21 @@ namespace PepperDash.Essentials.Core
}
+ ///
+ /// Represents a DeviceActionWrapper
+ ///
public class DeviceActionWrapper
{
+ ///
+ /// Gets or sets the DeviceKey
+ ///
public string DeviceKey { get; set; }
+
///
/// Gets or sets the MethodName
///
public string MethodName { get; set; }
+
///
/// Gets or sets the Params
///
@@ -413,19 +411,25 @@ namespace PepperDash.Essentials.Core
{
private object Parent;
- [JsonIgnore]
///
/// Gets or sets the PropInfo
///
+ [JsonIgnore]
public PropertyInfo PropInfo { get; private set; }
+
///
/// Gets or sets the Name
///
public string Name { get { return PropInfo.Name; } }
+
///
/// Gets or sets the Type
///
public string Type { get { return PropInfo.PropertyType.Name; } }
+
+ ///
+ /// Gets or sets the Value
+ ///
public string Value
{
get
@@ -450,12 +454,17 @@ namespace PepperDash.Essentials.Core
/// Gets or sets the CanRead
///
public bool CanRead { get { return PropInfo.CanRead; } }
+
///
/// Gets or sets the CanWrite
///
public bool CanWrite { get { return PropInfo.CanWrite; } }
-
+ ///
+ /// PropertyNameType constructor
+ ///
+ /// property info
+ /// parent object
public PropertyNameType(PropertyInfo info, object parent)
{
PropInfo = info;
@@ -468,16 +477,20 @@ namespace PepperDash.Essentials.Core
///
public class MethodNameParams
{
- [JsonIgnore]
///
/// Gets or sets the MethodInfo
///
+ [JsonIgnore]
public MethodInfo MethodInfo { get; private set; }
///
/// Gets or sets the Name
///
public string Name { get { return MethodInfo.Name; } }
+
+ ///
+ /// Gets or sets the Params
+ ///
public IEnumerable Params
{
get
@@ -487,6 +500,10 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// MethodNameParams constructor
+ ///
+ /// method info
public MethodNameParams(MethodInfo info)
{
MethodInfo = info;
@@ -508,10 +525,10 @@ namespace PepperDash.Essentials.Core
public string Type { get; set; }
}
- [AttributeUsage(AttributeTargets.All)]
///
/// Represents a ApiAttribute
///
+ [AttributeUsage(AttributeTargets.All)]
public class ApiAttribute : Attribute
{
diff --git a/src/PepperDash.Essentials.Core/Devices/DisplayUiConstants.cs b/src/PepperDash.Essentials.Core/Devices/DisplayUiConstants.cs
index a42239fc..1c6ae244 100644
--- a/src/PepperDash.Essentials.Core/Devices/DisplayUiConstants.cs
+++ b/src/PepperDash.Essentials.Core/Devices/DisplayUiConstants.cs
@@ -13,16 +13,54 @@ namespace PepperDash.Essentials.Core
///
public class DisplayUiConstants
{
+ ///
+ /// TypeRadio constant
+ ///
public const uint TypeRadio = 1;
+
+ ///
+ /// TypeTv constant
+ ///
public const uint TypeDirecTv = 9;
+
+ ///
+ /// TypeBluray constant
+ ///
public const uint TypeBluray = 13;
+
+ ///
+ /// TypeStreamingDevice constant
+ ///
public const uint TypeChromeTv = 15;
+
+ ///
+ /// TypeStreamingDevice constant
+ ///
public const uint TypeFireTv = 16;
+
+ ///
+ /// TypeStreamingDevice constant
+ ///
public const uint TypeAppleTv = 17;
+
+ ///
+ /// TypeStreamingDevice constant
+ ///
public const uint TypeRoku = 18;
+
+ ///
+ /// TypeLaptop constant
+ ///
public const uint TypeLaptop = 31;
+
+ ///
+ /// TypePc constant
+ ///
public const uint TypePc = 32;
+ ///
+ /// TypeNoControls constant
+ ///
public const uint TypeNoControls = 49;
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/EssentialsPluginDevelopmentDeviceFactory.cs b/src/PepperDash.Essentials.Core/Devices/EssentialsPluginDevelopmentDeviceFactory.cs
index 62864551..8bd60124 100644
--- a/src/PepperDash.Essentials.Core/Devices/EssentialsPluginDevelopmentDeviceFactory.cs
+++ b/src/PepperDash.Essentials.Core/Devices/EssentialsPluginDevelopmentDeviceFactory.cs
@@ -2,6 +2,10 @@ using System.Collections.Generic;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// EssentialsPluginDevelopmentDeviceFactory class
+ ///
+ ///
public abstract class EssentialsPluginDevelopmentDeviceFactory : EssentialsDeviceFactory, IPluginDevelopmentDeviceFactory where T : EssentialsDevice
{
///
diff --git a/src/PepperDash.Essentials.Core/Devices/GenericIRController.cs b/src/PepperDash.Essentials.Core/Devices/GenericIRController.cs
index bbb3c544..a55235e6 100644
--- a/src/PepperDash.Essentials.Core/Devices/GenericIRController.cs
+++ b/src/PepperDash.Essentials.Core/Devices/GenericIRController.cs
@@ -31,6 +31,12 @@ namespace PepperDash.Essentials.Core.Devices
///
public string[] IrCommands {get { return _port.IrFileCommands; }}
+ ///
+ /// Constructor
+ ///
+ /// key for the device
+ /// name of the device
+ /// IR output port controller
public GenericIrController(string key, string name, IrOutputPortController irPort) : base(key, name)
{
_port = irPort;
@@ -105,9 +111,9 @@ namespace PepperDash.Essentials.Core.Devices
var joinNumber = bridgeJoin.Value.Value.JoinNumber;
Debug.LogMessage(LogEventLevel.Verbose, this, @"bridgeJoin: Key-'{0}'
-Value.Key-'{1}'
-Value.JoinNumber-'{2}'
-Value.Metadata.Description-'{3}'",
+ Value.Key-'{1}'
+ Value.JoinNumber-'{2}'
+ Value.Metadata.Description-'{3}'",
key,
joinDataKey,
joinNumber,
@@ -172,6 +178,9 @@ Value.Metadata.Description-'{3}'",
///
public class GenericIrControllerFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor
+ ///
public GenericIrControllerFactory()
{
TypeNames = new List {"genericIrController"};
diff --git a/src/PepperDash.Essentials.Core/Devices/GenericMonitoredTcpDevice.cs b/src/PepperDash.Essentials.Core/Devices/GenericMonitoredTcpDevice.cs
index e4a2b986..148a9cac 100644
--- a/src/PepperDash.Essentials.Core/Devices/GenericMonitoredTcpDevice.cs
+++ b/src/PepperDash.Essentials.Core/Devices/GenericMonitoredTcpDevice.cs
@@ -10,18 +10,28 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.Devices
{
- ///
- /// Represents a GenericCommunicationMonitoredDevice
- ///
+ ///
+ /// Represents a GenericCommunicationMonitoredDevice
+ ///
public class GenericCommunicationMonitoredDevice : Device, ICommunicationMonitor
{
IBasicCommunication Client;
- ///
- /// Gets or sets the CommunicationMonitor
- ///
+ ///
+ /// Gets or sets the CommunicationMonitor
+ ///
public StatusMonitorBase CommunicationMonitor { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// key of the device
+ /// name of the device
+ /// communication client
+ /// poll string
+ /// poll time
+ /// warning time
+ /// error time
public GenericCommunicationMonitoredDevice(string key, string name, IBasicCommunication comm, string pollString,
long pollTime, long warningTime, long errorTime)
: base(key, name)
@@ -37,6 +47,13 @@ namespace PepperDash.Essentials.Core.Devices
}
+ ///
+ /// Constructor with default times
+ ///
+ /// key of the device
+ /// name of the device
+ /// communication client
+ /// poll string
public GenericCommunicationMonitoredDevice(string key, string name, IBasicCommunication comm, string pollString)
: this(key, name, comm, pollString, 30000, 120000, 300000)
{
diff --git a/src/PepperDash.Essentials.Core/Devices/IAttachVideoStatusExtensions.cs b/src/PepperDash.Essentials.Core/Devices/IAttachVideoStatusExtensions.cs
index d92f9530..83914f6f 100644
--- a/src/PepperDash.Essentials.Core/Devices/IAttachVideoStatusExtensions.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IAttachVideoStatusExtensions.cs
@@ -6,16 +6,16 @@ using Crestron.SimplSharp;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// IAttachVideoStatusExtensions class
+ ///
public static class IAttachVideoStatusExtensions
{
///
/// Gets the VideoStatusOutputs for the device
///
- ///
+ ///
/// Attached VideoStatusOutputs or the default if none attached
- ///
- /// GetVideoStatuses method
- ///
public static VideoStatusOutputs GetVideoStatuses(this IAttachVideoStatus attachedDev)
{
// See if this device is connected to a status-providing port
diff --git a/src/PepperDash.Essentials.Core/Devices/IDisplayUsage.cs b/src/PepperDash.Essentials.Core/Devices/IDisplayUsage.cs
index 0d74d819..6d6f8f51 100644
--- a/src/PepperDash.Essentials.Core/Devices/IDisplayUsage.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IDisplayUsage.cs
@@ -5,6 +5,9 @@ namespace PepperDash.Essentials.Core
///
public interface IDisplayUsage
{
+ ///
+ /// Gets the LampHours
+ ///
IntFeedback LampHours { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/IDspPresets.cs b/src/PepperDash.Essentials.Core/Devices/IDspPresets.cs
index 90006b3b..bfe81658 100644
--- a/src/PepperDash.Essentials.Core/Devices/IDspPresets.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IDspPresets.cs
@@ -8,8 +8,15 @@ namespace PepperDash.Essentials.Core
///
public interface IDspPresets
{
+ ///
+ /// Gets the Presets
+ ///
Dictionary Presets { get; }
+ ///
+ /// Recalls the preset by key
+ ///
+ /// key of preset to recall
void RecallPreset(string key);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/IProjectorInterfaces.cs b/src/PepperDash.Essentials.Core/Devices/IProjectorInterfaces.cs
index 5195592d..d6473e64 100644
--- a/src/PepperDash.Essentials.Core/Devices/IProjectorInterfaces.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IProjectorInterfaces.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core
///
public interface IBasicVideoMute
{
+ ///
+ /// Toggles the video mute
+ ///
void VideoMuteToggle();
}
@@ -19,9 +22,19 @@ namespace PepperDash.Essentials.Core
///
public interface IBasicVideoMuteWithFeedback : IBasicVideoMute
{
+ ///
+ /// Gets the VideoMuteIsOn feedback
+ ///
BoolFeedback VideoMuteIsOn { get; }
+ ///
+ /// Sets the video mute on
+ ///
void VideoMuteOn();
+
+ ///
+ /// Sets the video mute off
+ ///
void VideoMuteOff();
}
diff --git a/src/PepperDash.Essentials.Core/Devices/IReconfigurableDevice.cs b/src/PepperDash.Essentials.Core/Devices/IReconfigurableDevice.cs
index 6712312d..245c0a5c 100644
--- a/src/PepperDash.Essentials.Core/Devices/IReconfigurableDevice.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IReconfigurableDevice.cs
@@ -13,10 +13,20 @@ namespace PepperDash.Essentials.Core.Devices
///
public interface IReconfigurableDevice
{
+ ///
+ /// Event fired when the configuration changes
+ ///
event EventHandler ConfigChanged;
+ ///
+ /// Gets the current DeviceConfig
+ ///
DeviceConfig Config { get; }
+ ///
+ /// Sets the DeviceConfig
+ ///
+ /// config to set
void SetConfig(DeviceConfig config);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/IUsageTracking.cs b/src/PepperDash.Essentials.Core/Devices/IUsageTracking.cs
index 352e736d..7edce646 100644
--- a/src/PepperDash.Essentials.Core/Devices/IUsageTracking.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IUsageTracking.cs
@@ -13,6 +13,9 @@ namespace PepperDash.Essentials.Core
///
public interface IUsageTracking
{
+ ///
+ /// Gets or sets the UsageTracker
+ ///
UsageTracking UsageTracker { get; set; }
}
@@ -29,6 +32,9 @@ namespace PepperDash.Essentials.Core
///
public class UsageTracking
{
+ ///
+ /// Event fired when device usage ends
+ ///
public event EventHandler DeviceUsageEnded;
///
@@ -59,6 +65,10 @@ namespace PepperDash.Essentials.Core
///
public Device Parent { get; private set; }
+ ///
+ /// Constructor for UsageTracking class
+ ///
+ /// The parent device
public UsageTracking(Device parent)
{
Parent = parent;
diff --git a/src/PepperDash.Essentials.Core/Devices/IrOutputPortController.cs b/src/PepperDash.Essentials.Core/Devices/IrOutputPortController.cs
index 78e1a7e6..1f122735 100644
--- a/src/PepperDash.Essentials.Core/Devices/IrOutputPortController.cs
+++ b/src/PepperDash.Essentials.Core/Devices/IrOutputPortController.cs
@@ -26,10 +26,24 @@ namespace PepperDash.Essentials.Core
uint IrPortUid;
IROutputPort IrPort;
+ ///
+ /// Gets the DriverLoaded feedback
+ ///
public BoolFeedback DriverLoaded { get; private set; }
+ ///
+ /// Gets or sets the StandardIrPulseTime
+ ///
public ushort StandardIrPulseTime { get; set; }
+
+ ///
+ /// Gets or sets the DriverFilepath
+ ///
public string DriverFilepath { get; private set; }
+
+ ///
+ /// Gets or sets the DriverIsLoaded
+ ///
public bool DriverIsLoaded { get; private set; }
///
@@ -37,9 +51,9 @@ namespace PepperDash.Essentials.Core
///
public string[] IrFileCommands { get { return IrPort.AvailableStandardIRCmds(IrPortUid); } }
- ///
- /// Gets or sets the UseBridgeJoinMap
- ///
+ ///
+ /// Gets or sets the UseBridgeJoinMap
+ ///
public bool UseBridgeJoinMap { get; private set; }
///
@@ -61,6 +75,12 @@ namespace PepperDash.Essentials.Core
LoadDriver(irDriverFilepath);
}
+ ///
+ /// Constructor for IrDevice base class using post activation function to get port
+ ///
+ /// key of the device
+ /// function to call post activation
+ /// config of the device
public IrOutputPortController(string key, Func postActivationFunc,
DeviceConfig config)
: base(key)
@@ -105,9 +125,9 @@ namespace PepperDash.Essentials.Core
});
}
- ///
- /// PrintAvailableCommands method
- ///
+ ///
+ /// PrintAvailableCommands method
+ ///
public void PrintAvailableCommands()
{
Debug.LogMessage(LogEventLevel.Verbose, this, "Available IR Commands in IR File {0}", IrPortUid);
@@ -121,10 +141,7 @@ namespace PepperDash.Essentials.Core
///
/// Loads the IR driver at path
///
- ///
- ///
- /// LoadDriver method
- ///
+ /// path of the IR driver file
public void LoadDriver(string path)
{
Debug.LogMessage(LogEventLevel.Verbose, this, "***Loading IR File***");
@@ -148,10 +165,12 @@ namespace PepperDash.Essentials.Core
}
- ///
- /// PressRelease method
- ///
- ///
+ ///
+ /// PressRelease method
+ ///
+ /// IR command to send
+ /// true to press, false to release
+ ///
public virtual void PressRelease(string command, bool state)
{
Debug.LogMessage(LogEventLevel.Verbose, this, "IR:'{0}'={1}", command, state);
@@ -176,10 +195,12 @@ namespace PepperDash.Essentials.Core
IrPort.Release();
}
- ///
- /// Pulse method
- ///
- ///
+ ///
+ /// Pulse method
+ ///
+ /// IR command to send
+ /// time to pulse the command
+ ///
public virtual void Pulse(string command, ushort time)
{
if (IrPort == null)
@@ -201,6 +222,7 @@ namespace PepperDash.Essentials.Core
///
/// Notifies the console when a bad command is used.
///
+ /// command that was not found
protected void NoIrCommandError(string command)
{
Debug.LogMessage(LogEventLevel.Verbose, this, "Device {0}: IR Driver {1} does not contain command {2}",
diff --git a/src/PepperDash.Essentials.Core/Devices/LevelControlListItem.cs b/src/PepperDash.Essentials.Core/Devices/LevelControlListItem.cs
index ea54857e..821a0c2b 100644
--- a/src/PepperDash.Essentials.Core/Devices/LevelControlListItem.cs
+++ b/src/PepperDash.Essentials.Core/Devices/LevelControlListItem.cs
@@ -74,9 +74,6 @@ namespace PepperDash.Essentials.Core
///
[JsonProperty("type")]
[JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]
- ///
- /// Gets or sets the Type
- ///
public eLevelControlType Type { get; set; }
diff --git a/src/PepperDash.Essentials.Core/Devices/PowerInterfaces.cs b/src/PepperDash.Essentials.Core/Devices/PowerInterfaces.cs
index e09a002d..ef0173d5 100644
--- a/src/PepperDash.Essentials.Core/Devices/PowerInterfaces.cs
+++ b/src/PepperDash.Essentials.Core/Devices/PowerInterfaces.cs
@@ -8,12 +8,39 @@ namespace PepperDash.Essentials.Core
///
public interface IHasBatteryStats : IKeyName
{
+ ///
+ /// Gets the BatteryPercentage
+ ///
int BatteryPercentage { get; }
+
+ ///
+ /// Gets the BatteryCautionThresholdPercentage
+ ///
int BatteryCautionThresholdPercentage { get; }
+
+ ///
+ /// Gets the BatteryWarningThresholdPercentage
+ ///
int BatteryWarningThresholdPercentage { get; }
+
+ ///
+ /// Gets the BatteryIsWarningFeedback
+ ///
BoolFeedback BatteryIsWarningFeedback { get; }
+
+ ///
+ /// Gets the BatteryIsCautionFeedback
+ ///
BoolFeedback BatteryIsCautionFeedback { get; }
+
+ ///
+ /// Gets the BatteryIsOkFeedback
+ ///
BoolFeedback BatteryIsOkFeedback { get; }
+
+ ///
+ /// Gets the BatteryPercentageFeedback
+ ///
IntFeedback BatteryPercentageFeedback { get; }
}
@@ -22,6 +49,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasBatteryCharging : IHasBatteryStats
{
+ ///
+ /// Gets the BatteryIsCharging
+ ///
BoolFeedback BatteryIsCharging { get; }
}
@@ -30,19 +60,55 @@ namespace PepperDash.Essentials.Core
///
public interface IHasBatteries : IKeyName
{
+ ///
+ /// Collection of batteries
+ ///
ReadOnlyDictionary Batteries { get; }
}
+ ///
+ /// Defines the contract for IHasBatteryStatsExtended
+ ///
public interface IHasBatteryStatsExtended : IHasBatteryStats
{
+ ///
+ /// Gets the InputVoltage in millivolts
+ ///
int InputVoltage { get; }
+
+ ///
+ /// Gets the OutputVoltage in millivolts
+ ///
int OutputVoltage { get; }
+
+ ///
+ /// Gets the InputCurrent in milliamps
+ ///
int InptuCurrent { get; }
+
+ ///
+ /// Gets the OutputCurrent in milliamps
+ ///
int OutputCurrent { get; }
+ ///
+ /// Gets the InputVoltageFeedback
+ ///
IntFeedback InputVoltageFeedback { get; }
+
+ ///
+ /// Gets the OutputVoltageFeedback
+ ///
IntFeedback OutputVoltageFeedback { get; }
+
+ ///
+ /// Gets the InputCurrentFeedback
+ ///
IntFeedback InputCurrentFeedback { get; }
+
+ ///
+ /// Gets the OutputCurrentFeedback
+ ///
IntFeedback OutputCurrentFeedback { get; }
}
diff --git a/src/PepperDash.Essentials.Core/Devices/PresentationDeviceType.cs b/src/PepperDash.Essentials.Core/Devices/PresentationDeviceType.cs
index 56367e53..44474832 100644
--- a/src/PepperDash.Essentials.Core/Devices/PresentationDeviceType.cs
+++ b/src/PepperDash.Essentials.Core/Devices/PresentationDeviceType.cs
@@ -14,6 +14,34 @@ namespace PepperDash.Essentials.Core
///
public enum PresentationSourceType
{
- None, Dvd, Laptop, PC, SetTopBox, VCR
+ ///
+ /// No source type assigned
+ ///
+ None,
+
+ ///
+ /// DVD source type
+ ///
+ Dvd,
+
+ ///
+ /// Document Camera source type
+ ///
+ Laptop,
+
+ ///
+ /// PC source type
+ ///
+ PC,
+
+ ///
+ /// Set Top Box source type
+ ///
+ SetTopBox,
+
+ ///
+ /// VCR source type
+ ///
+ VCR
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/PresetListItem.cs b/src/PepperDash.Essentials.Core/Devices/PresetListItem.cs
index 04a1aeaa..625dcec9 100644
--- a/src/PepperDash.Essentials.Core/Devices/PresetListItem.cs
+++ b/src/PepperDash.Essentials.Core/Devices/PresetListItem.cs
@@ -14,6 +14,9 @@ namespace PepperDash.Essentials.Core
///
public class PresetListItem : AudioControlListItemBase
{
+ ///
+ /// Gets the preset associated with this list item
+ ///
[JsonIgnore]
public IKeyName Preset
{
diff --git a/src/PepperDash.Essentials.Core/Devices/ReconfigurableDevice.cs b/src/PepperDash.Essentials.Core/Devices/ReconfigurableDevice.cs
index 3f83640f..ccb74a39 100644
--- a/src/PepperDash.Essentials.Core/Devices/ReconfigurableDevice.cs
+++ b/src/PepperDash.Essentials.Core/Devices/ReconfigurableDevice.cs
@@ -19,10 +19,20 @@ namespace PepperDash.Essentials.Core.Devices
///
public abstract class ReconfigurableDevice : EssentialsDevice, IReconfigurableDevice
{
+ ///
+ /// Event fired when the configuration changes
+ ///
public event EventHandler ConfigChanged;
+ ///
+ /// Gets the current DeviceConfig
+ ///
public DeviceConfig Config { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// config of the device
protected ReconfigurableDevice(DeviceConfig config)
: base(config.Key)
{
@@ -64,19 +74,33 @@ namespace PepperDash.Essentials.Core.Devices
///
/// Used by the extending class to allow for any custom actions to be taken (tell the ConfigWriter to write config, etc)
///
- ///
+ /// config of the device
protected virtual void CustomSetConfig(DeviceConfig config)
{
ConfigWriter.UpdateDeviceConfig(config);
}
}
+ ///
+ /// A ReconfigurableDevice that is also bridgeable
+ ///
public abstract class ReconfigurableBridgableDevice : ReconfigurableDevice, IBridgeAdvanced
{
+ ///
+ /// Constructor
+ ///
+ /// config of the device
protected ReconfigurableBridgableDevice(DeviceConfig config) : base(config)
{
}
+ ///
+ /// LinkToApi method
+ ///
+ /// trilist to link
+ /// the join to start at
+ /// key to the join map
+ /// the bridge to use
public abstract void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/SmartObjectBaseTypes.cs b/src/PepperDash.Essentials.Core/Devices/SmartObjectBaseTypes.cs
index 48020690..55e70de4 100644
--- a/src/PepperDash.Essentials.Core/Devices/SmartObjectBaseTypes.cs
+++ b/src/PepperDash.Essentials.Core/Devices/SmartObjectBaseTypes.cs
@@ -6,9 +6,19 @@ namespace PepperDash.Essentials.Core
///
public class SmartObjectJoinOffsets
{
+ ///
+ /// Dpad Join Offset
+ ///
public const ushort Dpad = 1;
+
+ ///
+ /// Numpad Join Offset
+ ///
public const ushort Numpad = 2;
+ ///
+ /// PresetList Join Offset
+ ///
public const ushort PresetList = 6;
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Devices/VolumeDeviceChangeEventArgs.cs b/src/PepperDash.Essentials.Core/Devices/VolumeDeviceChangeEventArgs.cs
index 441af0d6..ae2895db 100644
--- a/src/PepperDash.Essentials.Core/Devices/VolumeDeviceChangeEventArgs.cs
+++ b/src/PepperDash.Essentials.Core/Devices/VolumeDeviceChangeEventArgs.cs
@@ -14,10 +14,27 @@ namespace PepperDash.Essentials.Core
///
public class VolumeDeviceChangeEventArgs : EventArgs
{
+ ///
+ /// The old device
+ ///
public IBasicVolumeControls OldDev { get; private set; }
+
+ ///
+ /// The new device
+ ///
public IBasicVolumeControls NewDev { get; private set; }
+
+ ///
+ /// The type of change
+ ///
public ChangeType Type { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// the old device
+ /// the new device
+ /// the type of change
public VolumeDeviceChangeEventArgs(IBasicVolumeControls oldDev, IBasicVolumeControls newDev, ChangeType type)
{
OldDev = oldDev;
@@ -31,6 +48,14 @@ namespace PepperDash.Essentials.Core
///
public enum ChangeType
{
- WillChange, DidChange
+ ///
+ /// Will change
+ ///
+ WillChange,
+
+ ///
+ /// Did change
+ ///
+ DidChange
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Ethernet/EthernetStatistics.cs b/src/PepperDash.Essentials.Core/Ethernet/EthernetStatistics.cs
index cbdd0617..0f5c2863 100644
--- a/src/PepperDash.Essentials.Core/Ethernet/EthernetStatistics.cs
+++ b/src/PepperDash.Essentials.Core/Ethernet/EthernetStatistics.cs
@@ -8,24 +8,48 @@ using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.Ethernet
{
+ ///
+ /// Ethernet settings feedbacks
+ ///
public static class EthernetSettings
{
+ ///
+ /// Link active feedback
+ ///
public static readonly BoolFeedback LinkActive = new BoolFeedback("LinkActive",
() => true);
+
+ ///
+ /// DHCP active feedback
+ ///
public static readonly BoolFeedback DhcpActive = new BoolFeedback("DhcpActive",
() => CrestronEthernetHelper.GetEthernetParameter(
CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_CURRENT_DHCP_STATE, 0) == "ON");
-
+ ///
+ /// Hostname feedback
+ ///
public static readonly StringFeedback Hostname = new StringFeedback("Hostname",
() => CrestronEthernetHelper.GetEthernetParameter(
CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_HOSTNAME, 0));
+
+ ///
+ /// IP Address feedback
+ ///
public static readonly StringFeedback IpAddress0 = new StringFeedback("IpAddress0",
() => CrestronEthernetHelper.GetEthernetParameter(
CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_CURRENT_IP_ADDRESS, 0));
+
+ ///
+ /// Subnet Mask feedback
+ ///
public static readonly StringFeedback SubnetMask0 = new StringFeedback("SubnetMask0",
() => CrestronEthernetHelper.GetEthernetParameter(
CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_CURRENT_IP_MASK, 0));
+
+ ///
+ /// Default Gateway feedback
+ ///
public static readonly StringFeedback DefaultGateway0 = new StringFeedback("DefaultGateway0",
() => CrestronEthernetHelper.GetEthernetParameter(
CrestronEthernetHelper.ETHERNET_PARAMETER_TO_GET.GET_CURRENT_ROUTER, 0));
diff --git a/src/PepperDash.Essentials.Core/Extensions/JsonExtensions.cs b/src/PepperDash.Essentials.Core/Extensions/JsonExtensions.cs
index 43a84443..74697525 100644
--- a/src/PepperDash.Essentials.Core/Extensions/JsonExtensions.cs
+++ b/src/PepperDash.Essentials.Core/Extensions/JsonExtensions.cs
@@ -10,11 +10,17 @@ using Newtonsoft.Json.Linq;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// JsonExtensions class
+ ///
public static class JsonExtensions
{
///
/// FindTokens method
///
+ /// token for the container
+ /// name of the token to find
+ /// list of matching tokens
public static List FindTokens(this JToken containerToken, string name)
{
List matches = new List();
diff --git a/src/PepperDash.Essentials.Core/Extensions/StringExtensions.cs b/src/PepperDash.Essentials.Core/Extensions/StringExtensions.cs
index 2efa3c18..9dbb6244 100644
--- a/src/PepperDash.Essentials.Core/Extensions/StringExtensions.cs
+++ b/src/PepperDash.Essentials.Core/Extensions/StringExtensions.cs
@@ -7,6 +7,9 @@ using Crestron.SimplSharp;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// StringExtensions class
+ ///
public static class StringExtensions
{
///
@@ -14,9 +17,6 @@ namespace PepperDash.Essentials.Core
///
/// string input
/// null if the string is emtpy, otherwise returns the string
- ///
- /// NullIfEmpty method
- ///
public static string NullIfEmpty(this string s)
{
return string.IsNullOrEmpty(s) ? null : s;
@@ -27,9 +27,6 @@ namespace PepperDash.Essentials.Core
///
/// string input
/// null if the string is wempty or made of only whitespace characters, otherwise returns the string
- ///
- /// NullIfWhiteSpace method
- ///
public static string NullIfWhiteSpace(this string s)
{
return string.IsNullOrEmpty(s.Trim()) ? null : s;
@@ -41,9 +38,6 @@ namespace PepperDash.Essentials.Core
/// input string
/// string to replace with if input string is empty or whitespace
/// returns newString if s is null, emtpy, or made of whitespace characters, otherwise returns s
- ///
- /// ReplaceIfNullOrEmpty method
- ///
public static string ReplaceIfNullOrEmpty(this string s, string newString)
{
return string.IsNullOrEmpty(s) ? newString : s;
@@ -56,9 +50,6 @@ namespace PepperDash.Essentials.Core
/// String to check in Source String
/// Comparison parameters
/// true of string contains "toCheck"
- ///
- /// Contains method
- ///
public static bool Contains(this string source, string toCheck, StringComparison comp)
{
if (string.IsNullOrEmpty(source)) return false;
@@ -70,9 +61,6 @@ namespace PepperDash.Essentials.Core
///
/// String to Trim
/// Trimmed String
- ///
- /// TrimAll method
- ///
public static string TrimAll(this string source)
{
return string.IsNullOrEmpty(source) ? string.Empty : source.TrimStart().TrimEnd();
@@ -84,9 +72,6 @@ namespace PepperDash.Essentials.Core
/// String to Trim
/// Char Array to trim from string
/// Trimmed String
- ///
- /// TrimAll method
- ///
public static string TrimAll(this string source, char[] chars)
{
return string.IsNullOrEmpty(source) ? string.Empty : source.TrimStart(chars).TrimEnd(chars);
diff --git a/src/PepperDash.Essentials.Core/Factory/ProcessorExtensionDeviceFactory.cs b/src/PepperDash.Essentials.Core/Factory/ProcessorExtensionDeviceFactory.cs
index 02bf1bcd..6336795c 100644
--- a/src/PepperDash.Essentials.Core/Factory/ProcessorExtensionDeviceFactory.cs
+++ b/src/PepperDash.Essentials.Core/Factory/ProcessorExtensionDeviceFactory.cs
@@ -15,6 +15,9 @@ namespace PepperDash.Essentials.Core
///
public class ProcessorExtensionDeviceFactory
{
+ ///
+ /// Constructor
+ ///
public ProcessorExtensionDeviceFactory() {
var assy = Assembly.GetExecutingAssembly();
PluginLoader.SetEssentialsAssembly(assy.GetName().Name, assy);
@@ -50,7 +53,8 @@ namespace PepperDash.Essentials.Core
///
/// Adds a plugin factory method
///
- ///
+ /// name fo extension to add
+ /// method to add
///
public static void AddFactoryForType(string extensionName, Func method)
{
@@ -58,6 +62,13 @@ namespace PepperDash.Essentials.Core
ProcessorExtensionDeviceFactory.ProcessorExtensionFactoryMethods.Add(extensionName, new DeviceFactoryWrapper() { FactoryMethod = method });
}
+ ///
+ /// Adds a plugin factory method with type and description
+ ///
+ /// name of extension to add
+ /// description of extension to add
+ /// type of extension to add
+ /// method to add
public static void AddFactoryForType(string extensionName, string description, Type Type, Func method)
{
//Debug.LogMessage(LogEventLevel.Debug, "Adding factory method for type '{0}'", typeName);
diff --git a/src/PepperDash.Essentials.Core/Factory/ReadyEventArgs.cs b/src/PepperDash.Essentials.Core/Factory/ReadyEventArgs.cs
index 1b917690..544ef5cc 100644
--- a/src/PepperDash.Essentials.Core/Factory/ReadyEventArgs.cs
+++ b/src/PepperDash.Essentials.Core/Factory/ReadyEventArgs.cs
@@ -17,6 +17,10 @@ namespace PepperDash.Essentials.Core
///
public bool IsReady { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// indicates if the object is ready
public IsReadyEventArgs(bool data)
{
IsReady = data;
@@ -28,7 +32,14 @@ namespace PepperDash.Essentials.Core
///
public interface IHasReady
{
+ ///
+ /// Fires when the IsReady property changes
+ ///
event EventHandler IsReadyEvent;
+
+ ///
+ /// indicates whether the object is ready
+ ///
bool IsReady { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedback.cs b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedback.cs
index eb3abbb4..ea222b7f 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedback.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedback.cs
@@ -63,6 +63,10 @@ namespace PepperDash.Essentials.Core
ValueFunc = valueFunc;
}
+ ///
+ /// Sets the ValueFunc
+ ///
+ /// New function to set as the ValueFunc
public void SetValueFunc(Func newFunc)
{
ValueFunc = newFunc;
@@ -153,6 +157,10 @@ namespace PepperDash.Essentials.Core
LinkedCrestronFeedbacks.Remove(feedback);
}
+ ///
+ /// ToString override
+ ///
+ ///
public override string ToString()
{
return (InTestMode ? "TEST -- " : "") + BoolValue.ToString();
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackOneShot.cs b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackOneShot.cs
index 7dca3eaf..6b0b39b8 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackOneShot.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackOneShot.cs
@@ -48,12 +48,8 @@ namespace PepperDash.Essentials.Core
}
///
- /// Starts the
+ /// Start method
///
- ///
- ///
- /// Start method
- ///
public void Start()
{
if (Timer == null)
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackPulseExtender.cs b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackPulseExtender.cs
index 53a5e559..3a9dccde 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackPulseExtender.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/BoolFeedbackPulseExtender.cs
@@ -12,7 +12,14 @@ namespace PepperDash.Essentials.Core
///
public class BoolFeedbackPulseExtender
{
+ ///
+ /// Gets or sets the TimeoutMs
+ ///
public uint TimeoutMs { get; set; }
+
+ ///
+ /// Gets the Feedback
+ ///
public BoolFeedback Feedback { get; private set; }
CTimer Timer;
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/BoolOutputLogicals.cs b/src/PepperDash.Essentials.Core/Feedbacks/BoolOutputLogicals.cs
index b4562904..901b80dd 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/BoolOutputLogicals.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/BoolOutputLogicals.cs
@@ -8,7 +8,9 @@ using Crestron.SimplSharpPro;
namespace PepperDash.Essentials.Core
{
-
+ ///
+ /// Abstract base class for BoolOutputLogicals
+ ///
public abstract class BoolFeedbackLogic
{
///
@@ -21,13 +23,23 @@ namespace PepperDash.Essentials.Core
///
protected List OutputsIn = new List();
+ ///
+ /// Gets or sets the ComputedValue
+ ///
protected bool ComputedValue;
+ ///
+ /// Constructor
+ ///
protected BoolFeedbackLogic()
{
Output = new BoolFeedback(() => ComputedValue);
}
+ ///
+ /// AddOutputIn method
+ ///
+ /// feedback to add
public void AddOutputIn(BoolFeedback output)
{
// Don't double up outputs
@@ -38,9 +50,10 @@ namespace PepperDash.Essentials.Core
Evaluate();
}
- ///
- /// AddOutputsIn method
- ///
+ ///
+ /// AddOutputsIn method
+ ///
+ /// feedbacks to add
public void AddOutputsIn(List outputs)
{
foreach (var o in outputs.Where(o => !OutputsIn.Contains(o)))
@@ -51,9 +64,10 @@ namespace PepperDash.Essentials.Core
Evaluate();
}
- ///
- /// RemoveOutputIn method
- ///
+ ///
+ /// RemoveOutputIn method
+ ///
+ /// feedback to remove
public void RemoveOutputIn(BoolFeedback output)
{
// Don't double up outputs
@@ -64,9 +78,10 @@ namespace PepperDash.Essentials.Core
Evaluate();
}
- ///
- /// RemoveOutputsIn method
- ///
+ ///
+ /// RemoveOutputsIn method
+ ///
+ /// feedbacks to remove
public void RemoveOutputsIn(List outputs)
{
foreach (var o in outputs)
@@ -77,20 +92,28 @@ namespace PepperDash.Essentials.Core
Evaluate();
}
- ///
- /// ClearOutputs method
- ///
+ ///
+ /// ClearOutputs method
+ ///
public void ClearOutputs()
{
OutputsIn.Clear();
Evaluate();
}
+ ///
+ /// AnyInput_OutputChange event handler
+ ///
+ ///
+ ///
void AnyInput_OutputChange(object sender, EventArgs e)
{
Evaluate();
}
+ ///
+ /// Evaluate method
+ ///
protected abstract void Evaluate();
}
@@ -99,6 +122,9 @@ namespace PepperDash.Essentials.Core
///
public class BoolFeedbackAnd : BoolFeedbackLogic
{
+ ///
+ /// Evaluate method
+ ///
protected override void Evaluate()
{
var prevValue = ComputedValue;
@@ -112,11 +138,14 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a BoolFeedbackOr
- ///
+ ///
+ /// Represents a BoolFeedbackOr
+ ///
public class BoolFeedbackOr : BoolFeedbackLogic
{
+ ///
+ /// Evaluate method
+ ///
protected override void Evaluate()
{
var prevValue = ComputedValue;
@@ -130,19 +159,26 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a BoolFeedbackLinq
- ///
+ ///
+ /// Represents a BoolFeedbackLinq
+ ///
public class BoolFeedbackLinq : BoolFeedbackLogic
{
readonly Func, bool> _predicate;
+ ///
+ /// Constructor
+ ///
+ ///
public BoolFeedbackLinq(Func, bool> predicate)
: base()
{
_predicate = predicate;
}
+ ///
+ /// Evaluate method
+ ///
protected override void Evaluate()
{
var prevValue = ComputedValue;
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/FeedbackBase.cs b/src/PepperDash.Essentials.Core/Feedbacks/FeedbackBase.cs
index 723d22a6..0c756ace 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/FeedbackBase.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/FeedbackBase.cs
@@ -102,12 +102,19 @@ namespace PepperDash.Essentials.Core
if (OutputChange != null) OutputChange(this, new FeedbackEventArgs(value));
}
+ ///
+ /// Helper method that fires event. Use this intstead of calling OutputChange
+ ///
+ /// value to seed eventArgs
protected void OnOutputChange(int value)
{
if (OutputChange != null) OutputChange(this, new FeedbackEventArgs(value));
}
-
+ ///
+ /// Helper method that fires event. Use this intstead of calling OutputChange
+ ///
+ /// value to seed eventArgs
protected void OnOutputChange(string value)
{
if (OutputChange != null) OutputChange(this, new FeedbackEventArgs(value));
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/FeedbackEventArgs.cs b/src/PepperDash.Essentials.Core/Feedbacks/FeedbackEventArgs.cs
index d2182245..e22e9366 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/FeedbackEventArgs.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/FeedbackEventArgs.cs
@@ -15,10 +15,15 @@ namespace PepperDash.Essentials.Core
/// Gets or sets the BoolValue
///
public bool BoolValue { get; private set; }
+
///
/// Gets or sets the IntValue
///
public int IntValue { get; private set; }
+
+ ///
+ /// Gets or sets the UShortValue
+ ///
public ushort UShortValue
{
get
@@ -26,27 +31,41 @@ namespace PepperDash.Essentials.Core
return (ushort)IntValue;
}
}
+
///
/// Gets or sets the StringValue
///
public string StringValue { get; private set; }
+
///
/// Gets or sets the Type
///
public eFeedbackEventType Type { get; private set; }
+ ///
+ /// Constructor for BoolValue
+ ///
+ /// value to set
public FeedbackEventArgs(bool value)
{
BoolValue = value;
Type = eFeedbackEventType.TypeBool;
}
+ ///
+ /// Constructor for IntValue
+ ///
+ /// value to set
public FeedbackEventArgs(int value)
{
IntValue = value;
Type = eFeedbackEventType.TypeInt;
}
+ ///
+ /// Constructor for StringValue
+ ///
+ /// value to set
public FeedbackEventArgs(string value)
{
StringValue = value;
@@ -59,8 +78,19 @@ namespace PepperDash.Essentials.Core
///
public enum eFeedbackEventType
{
+ ///
+ /// Boolean type feedback event
+ ///
TypeBool,
+
+ ///
+ /// Integer type feedback event
+ ///
TypeInt,
+
+ ///
+ /// String type feedback event
+ ///
TypeString
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/IntFeedback.cs b/src/PepperDash.Essentials.Core/Feedbacks/IntFeedback.cs
index ee23e310..4dd0424b 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/IntFeedback.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/IntFeedback.cs
@@ -64,6 +64,10 @@ namespace PepperDash.Essentials.Core
ValueFunc = valueFunc;
}
+ ///
+ /// Sets the ValueFunc
+ ///
+ /// function to set
public void SetValueFunc(Func newFunc)
{
ValueFunc = newFunc;
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/SerialFeedback.cs b/src/PepperDash.Essentials.Core/Feedbacks/SerialFeedback.cs
index b26e23e6..1bde5a08 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/SerialFeedback.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/SerialFeedback.cs
@@ -13,6 +13,9 @@ namespace PepperDash.Essentials.Core
///
public class SerialFeedback : Feedback
{
+ ///
+ /// Gets the SerialValue
+ ///
public override string SerialValue { get { return _SerialValue; } }
string _SerialValue;
@@ -25,11 +28,18 @@ namespace PepperDash.Essentials.Core
List LinkedInputSigs = new List();
+ ///
+ /// Constructor
+ ///
[Obsolete("use constructor with Key parameter. This constructor will be removed in a future version")]
public SerialFeedback()
{
}
+ ///
+ /// Constructor with Key parameter
+ ///
+ /// Key to find this Feedback
public SerialFeedback(string key)
: base(key)
{
diff --git a/src/PepperDash.Essentials.Core/Feedbacks/StringFeedback.cs b/src/PepperDash.Essentials.Core/Feedbacks/StringFeedback.cs
index f7d594c4..4c419903 100644
--- a/src/PepperDash.Essentials.Core/Feedbacks/StringFeedback.cs
+++ b/src/PepperDash.Essentials.Core/Feedbacks/StringFeedback.cs
@@ -59,6 +59,10 @@ namespace PepperDash.Essentials.Core
ValueFunc = valueFunc;
}
+ ///
+ /// Sets the ValueFunc
+ ///
+ /// function to set
public void SetValueFunc(Func newFunc)
{
ValueFunc = newFunc;
diff --git a/src/PepperDash.Essentials.Core/File/FileIO.cs b/src/PepperDash.Essentials.Core/File/FileIO.cs
index 0c41522b..df1c0750 100644
--- a/src/PepperDash.Essentials.Core/File/FileIO.cs
+++ b/src/PepperDash.Essentials.Core/File/FileIO.cs
@@ -10,14 +10,23 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Static class for FileIO operations
+ ///
public static class FileIO
{
static CCriticalSection fileLock = new CCriticalSection();
- ///
- /// Delegate for GotFileEventHandler
- ///
+ ///
+ /// Delegate for GotFileEventHandler
+ ///
+ ///
+ ///
public delegate void GotFileEventHandler(object sender, FileEventArgs e);
+
+ ///
+ /// Event for GotFileEvent
+ ///
public static event GotFileEventHandler GotFileEvent;
///
@@ -297,6 +306,10 @@ namespace PepperDash.Essentials.Core
///
public class FileEventArgs
{
+ ///
+ /// Constructor
+ ///
+ ///
public FileEventArgs(string data) { Data = data; }
///
/// Gets or sets the Data
diff --git a/src/PepperDash.Essentials.Core/Fusion/FusionProcessorQueries.cs b/src/PepperDash.Essentials.Core/Fusion/FusionProcessorQueries.cs
index 930483fb..86ed62f3 100644
--- a/src/PepperDash.Essentials.Core/Fusion/FusionProcessorQueries.cs
+++ b/src/PepperDash.Essentials.Core/Fusion/FusionProcessorQueries.cs
@@ -15,6 +15,10 @@ namespace PepperDash.Essentials.Core.Fusion
{
//public static Dictionary Programs { get; private set; }
+ ///
+ /// Gets the processor program registry
+ ///
+ ///
public static Dictionary GetProcessorProgReg()
{
var programs = new Dictionary();
diff --git a/src/PepperDash.Essentials.Core/Fusion/FusionRviDataClasses.cs b/src/PepperDash.Essentials.Core/Fusion/FusionRviDataClasses.cs
index da83d9d7..cef4926f 100644
--- a/src/PepperDash.Essentials.Core/Fusion/FusionRviDataClasses.cs
+++ b/src/PepperDash.Essentials.Core/Fusion/FusionRviDataClasses.cs
@@ -17,18 +17,47 @@ namespace PepperDash.Essentials.Core.Fusion
///
public class FusionRoomGuids
{
+ ///
+ /// Gets or sets the RoomName
+ ///
public string RoomName { get; set; }
+
+ ///
+ /// Gets or sets the IpId
+ ///
public uint IpId { get; set; }
+
+ ///
+ /// Gets or sets the RoomGuid
+ ///
public string RoomGuid { get; set; }
+
+ ///
+ /// Gets or sets the OccupancyAsset
+ ///
public FusionOccupancySensorAsset OccupancyAsset { get; set; }
+
+ ///
+ /// Gets or sets the StaticAssets
+ ///
public Dictionary StaticAssets { get; set; }
+ ///
+ /// FusionRoomGuids constructor
+ ///
public FusionRoomGuids()
{
StaticAssets = new Dictionary();
OccupancyAsset = new FusionOccupancySensorAsset();
}
+ ///
+ /// FusionRoomGuids constructor
+ ///
+ /// name of the fusion room
+ /// ipID of the fusion room
+ /// room GUID
+ /// dictionary of assets
public FusionRoomGuids(string roomName, uint ipId, string roomGuid, Dictionary staticAssets)
{
RoomName = roomName;
@@ -39,6 +68,14 @@ namespace PepperDash.Essentials.Core.Fusion
OccupancyAsset = new FusionOccupancySensorAsset();
}
+ ///
+ /// FusionRoomGuids constructor
+ ///
+ /// name of the fusion room
+ /// ipID of the fusion room
+ /// room GUID
+ /// dictionary of assets
+ /// occupancy asset
public FusionRoomGuids(string roomName, uint ipId, string roomGuid, Dictionary staticAssets, FusionOccupancySensorAsset occAsset)
{
RoomName = roomName;
@@ -143,10 +180,17 @@ namespace PepperDash.Essentials.Core.Fusion
///
public string InstanceId { get; set; }
+ ///
+ /// Default constructor
+ ///
public FusionOccupancySensorAsset()
{
}
+ ///
+ /// FusionOccupancySensorAsset constructor
+ ///
+ /// asset type
public FusionOccupancySensorAsset(eAssetType type)
{
Type = type;
@@ -177,11 +221,21 @@ namespace PepperDash.Essentials.Core.Fusion
///
public string InstanceId { get;set; }
+ ///
+ /// Default constructor
+ ///
public FusionAsset()
{
}
+ ///
+ /// FusionAsset constructor
+ ///
+ /// slot number of asset
+ /// name of the asset
+ /// type of the asset
+ /// instance ID of the asset
public FusionAsset(uint slotNum, string assetName, string type, string instanceId)
{
SlotNumber = slotNum;
@@ -210,6 +264,9 @@ namespace PepperDash.Essentials.Core.Fusion
///
public List Meetings { get; set; }
+ ///
+ /// RoomSchedule constructor
+ ///
public RoomSchedule()
{
Meetings = new List();
@@ -224,6 +281,9 @@ namespace PepperDash.Essentials.Core.Fusion
///
public class LocalTimeRequest
{
+ ///
+ /// Gets or sets the RequestID
+ ///
public string RequestID { get; set; }
}
@@ -238,13 +298,30 @@ namespace PepperDash.Essentials.Core.Fusion
/// Gets or sets the RequestID
///
public string RequestID { get; set; }
+
//[XmlElement(ElementName = "RoomID")]
+ ///
+ /// Gets or sets the RoomID
+ ///
public string RoomID { get; set; }
+
//[XmlElement(ElementName = "Start")]
+ ///
+ /// Gets or sets the Start
+ ///
public DateTime Start { get; set; }
+
//[XmlElement(ElementName = "HourSpan")]
+ ///
+ /// Gets or sets the HourSpan
+ ///
public double HourSpan { get; set; }
+ ///
+ /// RequestSchedule constructor
+ ///
+ /// id of the request
+ /// id of the room
public RequestSchedule(string requestID, string roomID)
{
RequestID = requestID;
@@ -282,6 +359,12 @@ namespace PepperDash.Essentials.Core.Fusion
///
public List Parameters { get; set; }
+ ///
+ /// RequestAction constructor
+ ///
+ /// id of the room
+ /// id of the action
+ /// list of parameters
public RequestAction(string roomID, string actionID, List parameters)
{
RoomID = roomID;
@@ -301,11 +384,13 @@ namespace PepperDash.Essentials.Core.Fusion
/// Gets or sets the RequestID
///
public string RequestID { get; set; }
+
//[XmlElement(ElementName = "ActionID")]
///
/// Gets or sets the ActionID
///
public string ActionID { get; set; }
+
//[XmlElement(ElementName = "Parameters")]
///
/// Gets or sets the Parameters
@@ -324,6 +409,7 @@ namespace PepperDash.Essentials.Core.Fusion
/// Gets or sets the ID
///
public string ID { get; set; }
+
//[XmlAttribute(AttributeName = "Value")]
///
/// Gets or sets the Value
@@ -345,14 +431,32 @@ namespace PepperDash.Essentials.Core.Fusion
public class ScheduleResponse
{
//[XmlElement(ElementName = "RequestID")]
+ ///
+ /// Gets or sets the RequestID
+ ///
public string RequestID { get; set; }
+
//[XmlElement(ElementName = "RoomID")]
+ ///
+ /// Gets or sets the RoomID
+ ///
public string RoomID { get; set; }
+
//[XmlElement(ElementName = "RoomName")]
+ ///
+ /// Gets or sets the RoomName
+ ///
public string RoomName { get; set; }
+
//[XmlElement("Event")]
+ ///
+ /// Gets or sets the Events
+ ///
public List Events { get; set; }
+ ///
+ /// ScheduleResponse constructor
+ ///
public ScheduleResponse()
{
Events = new List();
diff --git a/src/PepperDash.Essentials.Core/Global/Global.cs b/src/PepperDash.Essentials.Core/Global/Global.cs
index 95773858..37d4472d 100644
--- a/src/PepperDash.Essentials.Core/Global/Global.cs
+++ b/src/PepperDash.Essentials.Core/Global/Global.cs
@@ -22,6 +22,9 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Global static class for Essentials
+ ///
public static class Global
{
///
@@ -34,6 +37,9 @@ namespace PepperDash.Essentials.Core
///
public static eDevicePlatform Platform { get { return CrestronEnvironment.DevicePlatform; } }
+ ///
+ /// Gets the collection of Ethernet Adapter Info
+ ///
public static Dictionary EthernetAdapterInfoCollection { get; private set; }
///
@@ -47,6 +53,9 @@ namespace PepperDash.Essentials.Core
public static eCrestronSeries ProcessorSeries { get { return CrestronEnvironment.ProgramCompatibility; } }
// TODO: consider making this configurable later
+ ///
+ /// The CultureInfo for formatting
+ ///
public static IFormatProvider Culture = CultureInfo.CreateSpecificCulture("en-US");
///
@@ -182,6 +191,13 @@ namespace PepperDash.Essentials.Core
AssemblyVersion = assemblyVersion;
}
+ ///
+ /// Checks to see if the running version is in the list of development versions. If so, checks to see if it meets the minimum version requirement.
+ /// If not in the list, returns false. For beta versions (0.xx.yy), will always return true.
+ ///
+ /// list of development versions
+ /// minimum version
+ ///
public static bool IsRunningDevelopmentVersion(List developmentVersions, string minimumVersion)
{
if (Regex.Match(AssemblyVersion, @"^(\d*).(\d*).(\d*).*").Groups[1].Value == "0")
diff --git a/src/PepperDash.Essentials.Core/Global/JobTimer.cs b/src/PepperDash.Essentials.Core/Global/JobTimer.cs
index 6a6fd683..55814368 100644
--- a/src/PepperDash.Essentials.Core/Global/JobTimer.cs
+++ b/src/PepperDash.Essentials.Core/Global/JobTimer.cs
@@ -6,6 +6,9 @@ using Crestron.SimplSharp;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Represents a JobTimer
+ ///
public static class JobTimer
{
static CTimer MinuteTimer;
@@ -13,25 +16,18 @@ namespace PepperDash.Essentials.Core
static List Items = new List();
///
- ///
- ///
- ///
- ///
- /// AddAction method
- ///
+ /// AddAction method
+ ///
+ /// action to add
public static void AddAction(Action act)
{
}
///
- ///
+ /// AddJobTimerItem method
///
- ///
- ///
- ///
- /// AddJobTimerItem method
- ///
+ /// JobTimerItem to add
public static void AddJobTimerItem(JobTimerItem item)
{
var existing = Items.FirstOrDefault(i => i.Key == item.Key);
@@ -62,25 +58,61 @@ namespace PepperDash.Essentials.Core
///
public class JobTimerItem
{
- public string Key { get; private set; }
- public Action JobAction { get; private set; }
- public eJobTimerCycleTypes CycleType { get; private set; }
///
- ///
+ /// Key property
+ ///
+ public string Key { get; private set; }
+
+ ///
+ /// JobAction property
+ ///
+ public Action JobAction { get; private set; }
+
+ ///
+ /// CycleType property
+ ///
+ public eJobTimerCycleTypes CycleType { get; private set; }
+
+ ///
+ /// RunNextAt property
///
public DateTime RunNextAt { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// item key
+ /// cycle type
+ /// action to run
public JobTimerItem(string key, eJobTimerCycleTypes cycle, Action act)
{
}
}
+ ///
+ /// JobTimerCycleTypes enum
+ ///
public enum eJobTimerCycleTypes
{
+ ///
+ /// RunEveryDay property
+ ///
RunEveryDay,
+
+ ///
+ /// RunEveryHour property
+ ///
RunEveryHour,
+
+ ///
+ /// RunEveryHalfHour property
+ ///
RunEveryHalfHour,
+
+ ///
+ /// RunEveryMinute property
+ ///
RunEveryMinute
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Global/Scheduler.cs b/src/PepperDash.Essentials.Core/Global/Scheduler.cs
index aee40cff..d3641ffc 100644
--- a/src/PepperDash.Essentials.Core/Global/Scheduler.cs
+++ b/src/PepperDash.Essentials.Core/Global/Scheduler.cs
@@ -138,6 +138,11 @@ Recurrence Days: {evt.Value.Recurrence.RecurrenceDays}
EventGroups.Remove(eventGroup.Name);
}
+ ///
+ /// Gets the event group by key
+ ///
+ /// key of the event group
+ ///
public static ScheduledEventGroup GetEventGroup(string key)
{
ScheduledEventGroup returnValue;
@@ -146,6 +151,9 @@ Recurrence Days: {evt.Value.Recurrence.RecurrenceDays}
}
}
+ ///
+ /// SchedulerUtilities class
+ ///
public static class SchedulerUtilities
{
///
diff --git a/src/PepperDash.Essentials.Core/InUseTracking/IInUseTracking.cs b/src/PepperDash.Essentials.Core/InUseTracking/IInUseTracking.cs
index 97a7c7f6..59ea87b3 100644
--- a/src/PepperDash.Essentials.Core/InUseTracking/IInUseTracking.cs
+++ b/src/PepperDash.Essentials.Core/InUseTracking/IInUseTracking.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core
///
public interface IInUseTracking
{
+ ///
+ /// Gets the InUseTracker
+ ///
InUseTracking InUseTracker { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/InUseTracking/InUseTracking.cs b/src/PepperDash.Essentials.Core/InUseTracking/InUseTracking.cs
index 177b1c22..c0fcdbf6 100644
--- a/src/PepperDash.Essentials.Core/InUseTracking/InUseTracking.cs
+++ b/src/PepperDash.Essentials.Core/InUseTracking/InUseTracking.cs
@@ -28,6 +28,9 @@ namespace PepperDash.Essentials.Core
///
public IntFeedback InUseCountFeedback { get; private set; }
+ ///
+ /// Constructor
+ ///
public InUseTracking()
{
InUseFeedback = new BoolFeedback(() => _Users.Count > 0);
@@ -39,9 +42,7 @@ namespace PepperDash.Essentials.Core
/// multiple times, provided that the label is different
///
/// A label to identify the instance of the user. Treated like a "role", etc.
- ///
- /// AddUser method
- ///
+ /// The object to add
public void AddUser(object objectToAdd, string label)
{
// check if an exact object/label pair exists and ignore if so. No double-registers.
@@ -56,9 +57,11 @@ namespace PepperDash.Essentials.Core
InUseCountFeedback.FireUpdate();
}
- ///
- /// RemoveUser method
- ///
+ ///
+ /// RemoveUser method
+ ///
+ /// The label of the user to remove
+ /// The object to remove
public void RemoveUser(object objectToRemove, string label)
{
// Find the user object if exists and remove it
@@ -73,14 +76,26 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a InUseTrackingObject
- ///
+ ///
+ /// Represents a InUseTrackingObject
+ ///
public class InUseTrackingObject
{
+ ///
+ /// The label of the user
+ ///
public string Label { get; private set; }
+
+ ///
+ /// The user object
+ ///
public object User { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// user using the object
+ /// label for the object
public InUseTrackingObject(object user, string label)
{
User = user;
diff --git a/src/PepperDash.Essentials.Core/JoinMaps/JoinMapBase.cs b/src/PepperDash.Essentials.Core/JoinMaps/JoinMapBase.cs
index 01f71098..d2e7d036 100644
--- a/src/PepperDash.Essentials.Core/JoinMaps/JoinMapBase.cs
+++ b/src/PepperDash.Essentials.Core/JoinMaps/JoinMapBase.cs
@@ -17,6 +17,9 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// JoinMapHelper class
+ ///
public static class JoinMapHelper
{
///
@@ -93,6 +96,9 @@ namespace PepperDash.Essentials.Core
///
public abstract class JoinMapBaseAdvanced
{
+ ///
+ /// The join offset
+ ///
protected uint JoinOffset;
///
@@ -100,6 +106,10 @@ namespace PepperDash.Essentials.Core
///
public Dictionary Joins { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// join start offset
protected JoinMapBaseAdvanced(uint joinStart)
{
Joins = new Dictionary();
@@ -107,11 +117,20 @@ namespace PepperDash.Essentials.Core
JoinOffset = joinStart - 1;
}
+ ///
+ /// Constructor
+ ///
+ /// join start offset
+ /// type of joinstart
protected JoinMapBaseAdvanced(uint joinStart, Type type):this(joinStart)
{
AddJoins(type);
}
+ ///
+ /// AddJoins method
+ ///
+ /// type of join to add
protected void AddJoins(Type type)
{
var fields =
@@ -303,18 +322,11 @@ namespace PepperDash.Essentials.Core
PrintJoinMapInfo();
}
- ///
- /// Returns the join span for the join with the specified key
- ///
- ///
- ///
-
-
- ///
- /// Returns the join span for the join with the specified key
- ///
- ///
- ///
+ // ///
+ // /// Returns the join span for the join with the specified key
+ // ///
+ // ///
+ // ///
//public uint GetJoinSpanForKey(string key)
//{
// return Joins.ContainsKey(key) ? Joins[key].JoinSpan : 0;
@@ -328,28 +340,86 @@ namespace PepperDash.Essentials.Core
[Flags]
public enum eJoinCapabilities
{
+ ///
+ /// No capabilities
+ ///
None = 0,
+
+ ///
+ /// To SIMPL
+ ///
ToSIMPL = 1,
+
+ ///
+ /// From SIMPL
+ ///
FromSIMPL = 2,
+
+ ///
+ /// To and From SIMPL
+ ///
ToFromSIMPL = ToSIMPL | FromSIMPL,
+
+ ///
+ /// To Fusion
+ ///
ToFusion = 4,
+
+ ///
+ /// From Fusion
+ ///
FromFusion = 8,
+
+ ///
+ /// To and From Fusion
+ ///
ToFromFusion = ToFusion | FromFusion,
}
- [Flags]
///
/// Enumeration of eJoinType values
///
+ [Flags]
public enum eJoinType
{
+ ///
+ /// No join type
+ ///
None = 0,
+
+ ///
+ /// Digital join
+ ///
Digital = 1,
+
+ ///
+ /// Analog join
+ ///
Analog = 2,
+
+ ///
+ /// Serial join
+ ///
Serial = 4,
+
+ ///
+ /// Digital and Analog join
+ ///
DigitalAnalog = Digital | Analog,
+
+ ///
+ /// Digital and Serial join
+ ///
DigitalSerial = Digital | Serial,
+
+ ///
+ /// Analog and Serial join
+ ///
AnalogSerial = Analog | Serial,
+
+ ///
+ /// Digital, Analog and Serial join
+ ///
DigitalAnalogSerial = Digital | Analog | Serial,
}
@@ -364,29 +434,23 @@ namespace PepperDash.Essentials.Core
///
[JsonProperty("description")]
public string Description { get { return _description; } set { _description = value; } }
- ///
- /// Signal type(s)
- ///
- [JsonProperty("joinType")]
+
///
/// Gets or sets the JoinType
///
+ [JsonProperty("joinType")]
public eJoinType JoinType { get; set; }
- ///
- /// Indicates whether the join is read and/or write
- ///
- [JsonProperty("joinCapabilities")]
+
///
/// Gets or sets the JoinCapabilities
///
+ [JsonProperty("joinCapabilities")]
public eJoinCapabilities JoinCapabilities { get; set; }
- ///
- /// Indicates a set of valid values (particularly if this translates to an enum
- ///
- [JsonProperty("validValues")]
+
///
/// Gets or sets the ValidValues
///
+ [JsonProperty("validValues")]
public string[] ValidValues { get; set; }
}
@@ -401,18 +465,17 @@ namespace PepperDash.Essentials.Core
///
[JsonProperty("joinNumber")]
public uint JoinNumber { get; set; }
+
///
/// Join range span. If join indicates the start of a range of joins, this indicated the maximum number of joins in the range
///
[JsonProperty("joinSpan")]
public uint JoinSpan { get; set; }
- ///
- /// Fusion Attribute Name (optional)
- ///
- [JsonProperty("attributeName")]
+
///
/// Gets or sets the AttributeName
///
+ [JsonProperty("attributeName")]
public string AttributeName { get; set; }
}
@@ -424,18 +487,34 @@ namespace PepperDash.Essentials.Core
private uint _joinOffset;
private JoinData _data;
+
+ ///
+ /// Gets or sets the JoinMetadata
+ ///
public JoinMetadata Metadata { get; set; }
+
///
/// To store some future information as you please
///
public object UserObject { get; private set; }
+ ///
+ /// Constructor
+ ///
+ ///
+ ///
public JoinDataComplete(JoinData data, JoinMetadata metadata)
{
_data = data;
Metadata = metadata;
}
+ ///
+ /// GetMarkdownFormattedData method
+ ///
+ /// formatter to use
+ /// length of the description
+ ///
public string GetMarkdownFormattedData(string stringFormatter, int descriptionLen)
{
@@ -498,9 +577,6 @@ namespace PepperDash.Essentials.Core
/// Sets the join offset value
///
///
- ///
- /// SetJoinOffset method
- ///
public void SetJoinOffset(uint joinOffset)
{
_joinOffset = joinOffset;
@@ -515,11 +591,17 @@ namespace PepperDash.Essentials.Core
set { _data.JoinNumber = value; }
}
+ ///
+ /// The join span
+ ///
public uint JoinSpan
{
get { return _data.JoinSpan; }
}
+ ///
+ /// The attribute name
+ ///
public string AttributeName
{
get { return _data.AttributeName; }
@@ -551,20 +633,27 @@ namespace PepperDash.Essentials.Core
- [AttributeUsage(AttributeTargets.All)]
///
/// Represents a JoinNameAttribute
///
+ [AttributeUsage(AttributeTargets.All)]
public class JoinNameAttribute : Attribute
{
private string _Name;
+ ///
+ /// Constructor
+ ///
+ /// name of the attribute
public JoinNameAttribute(string name)
{
Debug.LogMessage(LogEventLevel.Verbose, "Setting Attribute Name: {0}",null, name);
_Name = name;
}
+ ///
+ /// Gets the Name
+ ///
public string Name
{
get { return _Name; }
diff --git a/src/PepperDash.Essentials.Core/License/EssentialsLicenseManager.cs b/src/PepperDash.Essentials.Core/License/EssentialsLicenseManager.cs
index f8500996..ded7f699 100644
--- a/src/PepperDash.Essentials.Core/License/EssentialsLicenseManager.cs
+++ b/src/PepperDash.Essentials.Core/License/EssentialsLicenseManager.cs
@@ -13,21 +13,29 @@ using Serilog.Events;
namespace PepperDash.Essentials.License
{
+ ///
+ /// Abstract base class for License Managers
+ ///
public abstract class LicenseManager
{
- ///
- /// Gets or sets the LicenseIsValid
- ///
+ ///
+ /// Gets or sets the LicenseIsValid
+ ///
public BoolFeedback LicenseIsValid { get; protected set; }
- ///
- /// Gets or sets the LicenseMessage
- ///
+
+ ///
+ /// Gets or sets the LicenseMessage
+ ///
public StringFeedback LicenseMessage { get; protected set; }
- ///
- /// Gets or sets the LicenseLog
- ///
+
+ ///
+ /// Gets or sets the LicenseLog
+ ///
public StringFeedback LicenseLog { get; protected set; }
+ ///
+ /// Constructor
+ ///
protected LicenseManager()
{
CrestronConsole.AddNewConsoleCommand(
@@ -36,12 +44,15 @@ namespace PepperDash.Essentials.License
ConsoleAccessLevelEnum.AccessOperator);
}
+ ///
+ /// Gets the status string for console command
+ ///
protected abstract string GetStatusString();
}
- ///
- /// Represents a MockEssentialsLicenseManager
- ///
+ ///
+ /// Represents a MockEssentialsLicenseManager
+ ///
public class MockEssentialsLicenseManager : LicenseManager
{
///
@@ -91,6 +102,10 @@ namespace PepperDash.Essentials.License
SetIsValid(isValid);
}
+ ///
+ /// Gets the status string for console command
+ ///
+ /// license status valid or invalid
protected override string GetStatusString()
{
return string.Format("License Status: {0}", IsValid ? "Valid" : "Not Valid");
diff --git a/src/PepperDash.Essentials.Core/Lighting/Lighting Interfaces.cs b/src/PepperDash.Essentials.Core/Lighting/Lighting Interfaces.cs
index de581681..642ca6f8 100644
--- a/src/PepperDash.Essentials.Core/Lighting/Lighting Interfaces.cs
+++ b/src/PepperDash.Essentials.Core/Lighting/Lighting Interfaces.cs
@@ -8,12 +8,25 @@ namespace PepperDash.Essentials.Core.Lighting
///
public interface ILightingScenes
{
+ ///
+ /// Fires when the lighting scene changes
+ ///
event EventHandler LightingSceneChange;
+ ///
+ /// Gets the list of LightingScenes
+ ///
List LightingScenes { get; }
+ ///
+ /// Selects the given LightingScene
+ ///
+ /// scene to select
void SelectScene(LightingScene scene);
+ ///
+ /// Gets the currently selected LightingScene
+ ///
LightingScene CurrentLightingScene { get; }
}
@@ -23,6 +36,9 @@ namespace PepperDash.Essentials.Core.Lighting
///
public interface ILightingScenesDynamic : ILightingScenes
{
+ ///
+ /// Fires when the lighting scenes are updated
+ ///
event EventHandler LightingScenesUpdated;
}
@@ -31,8 +47,19 @@ namespace PepperDash.Essentials.Core.Lighting
///
public interface ILightingMasterRaiseLower
{
+ ///
+ /// Raises the master level
+ ///
void MasterRaise();
+
+ ///
+ /// Lowers the master level
+ ///
void MasterLower();
+
+ ///
+ /// Stops raising or lowering the master level
+ ///
void MasterRaiseLowerStop();
}
@@ -41,11 +68,30 @@ namespace PepperDash.Essentials.Core.Lighting
///
public interface ILightingLoad
{
+ ///
+ /// Sets the load level
+ ///
+ /// level to set
void SetLoadLevel(int level);
+
+ ///
+ /// Raises the load level
+ ///
void Raise();
+
+ ///
+ /// Lowers the load level
+ ///
void Lower();
+ ///
+ /// feedback of the current load level
+ ///
IntFeedback LoadLevelFeedback { get; }
+
+ ///
+ /// feedback of whether the load is on
+ ///
BoolFeedback LoadIsOnFeedback { get; }
}
@@ -59,6 +105,10 @@ namespace PepperDash.Essentials.Core.Lighting
///
public LightingScene CurrentLightingScene { get; private set; }
+ ///
+ /// Constructor for LightingSceneChangeEventArgs
+ ///
+ /// The lighting scene that changed
public LightingSceneChangeEventArgs(LightingScene scene)
{
CurrentLightingScene = scene;
diff --git a/src/PepperDash.Essentials.Core/Lighting/LightingScene.cs b/src/PepperDash.Essentials.Core/Lighting/LightingScene.cs
index 788dbb35..15afb8c1 100644
--- a/src/PepperDash.Essentials.Core/Lighting/LightingScene.cs
+++ b/src/PepperDash.Essentials.Core/Lighting/LightingScene.cs
@@ -10,17 +10,23 @@ namespace PepperDash.Essentials.Core.Lighting
///
public class LightingScene
{
- [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the Name
///
+ [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)]
public string Name { get; set; }
- [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)]
+
///
/// Gets or sets the ID
///
+ [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)]
public string ID { get; set; }
+
bool _IsActive;
+
+ ///
+ /// Gets or sets whether the scene is active
+ ///
[JsonProperty("isActive", NullValueHandling = NullValueHandling.Ignore)]
public bool IsActive
{
@@ -35,18 +41,22 @@ namespace PepperDash.Essentials.Core.Lighting
}
}
- [JsonProperty("sortOrder", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the SortOrder
///
+ [JsonProperty("sortOrder", NullValueHandling = NullValueHandling.Ignore)]
public int SortOrder { get; set; }
- [JsonIgnore]
+
///
/// Gets or sets the IsActiveFeedback
///
+ [JsonIgnore]
public BoolFeedback IsActiveFeedback { get; set; }
+ ///
+ /// Constructor for LightingScene
+ ///
public LightingScene()
{
IsActiveFeedback = new BoolFeedback(new Func(() => IsActive));
diff --git a/src/PepperDash.Essentials.Core/Microphone Privacy/MicrophonePrivacyController.cs b/src/PepperDash.Essentials.Core/Microphone Privacy/MicrophonePrivacyController.cs
index 203d75ed..a15e0dc4 100644
--- a/src/PepperDash.Essentials.Core/Microphone Privacy/MicrophonePrivacyController.cs
+++ b/src/PepperDash.Essentials.Core/Microphone Privacy/MicrophonePrivacyController.cs
@@ -23,6 +23,9 @@ namespace PepperDash.Essentials.Core.Privacy
bool initialized;
+ ///
+ /// Gets or sets whether LED control is enabled
+ ///
public bool EnableLeds
{
get
@@ -69,6 +72,11 @@ namespace PepperDash.Essentials.Core.Privacy
///
public IPrivacy PrivacyDevice { get; private set; }
+ ///
+ /// Constructor for MicrophonePrivacyController
+ ///
+ /// key of the controller device
+ /// configuration for the controller device
public MicrophonePrivacyController(string key, MicrophonePrivacyControllerConfig config) :
base(key)
{
@@ -264,6 +272,9 @@ namespace PepperDash.Essentials.Core.Privacy
///
public class MicrophonePrivacyControllerFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor for MicrophonePrivacyControllerFactory
+ ///
public MicrophonePrivacyControllerFactory()
{
TypeNames = new List() { "microphoneprivacycontroller" };
diff --git a/src/PepperDash.Essentials.Core/Monitoring/CrestronGenericBaseCommunicationMonitor.cs b/src/PepperDash.Essentials.Core/Monitoring/CrestronGenericBaseCommunicationMonitor.cs
index b10be947..dc9406a3 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/CrestronGenericBaseCommunicationMonitor.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/CrestronGenericBaseCommunicationMonitor.cs
@@ -20,6 +20,13 @@ namespace PepperDash.Essentials.Core
{
GenericBase Device;
+ ///
+ /// Constructor for CrestronGenericBaseCommunicationMonitor
+ ///
+ /// parent device
+ /// device to monitor
+ /// time before warning status
+ /// time before error status
public CrestronGenericBaseCommunicationMonitor(IKeyed parent, GenericBase device, long warningTime, long errorTime)
: base(parent, warningTime, errorTime)
{
diff --git a/src/PepperDash.Essentials.Core/Monitoring/GenericCommunicationMonitor.cs b/src/PepperDash.Essentials.Core/Monitoring/GenericCommunicationMonitor.cs
index eca013c5..34f074d9 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/GenericCommunicationMonitor.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/GenericCommunicationMonitor.cs
@@ -12,6 +12,9 @@ namespace PepperDash.Essentials.Core
///
public class GenericCommunicationMonitor : StatusMonitorBase
{
+ ///
+ /// Gets the Client being monitored
+ ///
public IBasicCommunication Client { get; private set; }
///
@@ -281,17 +284,29 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a CommunicationMonitorConfig
- ///
+ ///
+ /// Represents a CommunicationMonitorConfig
+ ///
public class CommunicationMonitorConfig
{
- ///
- /// Gets or sets the PollInterval
- ///
+ ///
+ /// Gets or sets the PollInterval
+ ///
public int PollInterval { get; set; }
+
+ ///
+ /// Gets or sets the TimeToWarning
+ ///
public int TimeToWarning { get; set; }
+
+ ///
+ /// Gets or sets the TimeToError
+ ///
public int TimeToError { get; set; }
+
+ ///
+ /// Gets or sets the PollString
+ ///
public string PollString { get; set; }
///
diff --git a/src/PepperDash.Essentials.Core/Monitoring/Interfaces.cs b/src/PepperDash.Essentials.Core/Monitoring/Interfaces.cs
index a4d8d2ae..4a3303fe 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/Interfaces.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/Interfaces.cs
@@ -11,12 +11,39 @@ namespace PepperDash.Essentials.Core
///
public interface IStatusMonitor
{
+ ///
+ /// Gets the Parent
+ ///
IKeyed Parent { get; }
+
+ ///
+ /// Fires when the status changes
+ ///
event EventHandler StatusChange;
+
+ ///
+ /// Gets the Status
+ ///
MonitorStatus Status { get; }
+
+ ///
+ /// Gets the Message
+ ///
string Message { get; }
+
+ ///
+ /// Gets or sets the IsOnlineFeedback
+ ///
BoolFeedback IsOnlineFeedback { get; set; }
+
+ ///
+ /// Start method
+ ///
void Start();
+
+ ///
+ /// Stop method
+ ///
void Stop();
}
@@ -26,6 +53,9 @@ namespace PepperDash.Essentials.Core
///
public interface ICommunicationMonitor
{
+ ///
+ /// Gets the CommunicationMonitor
+ ///
StatusMonitorBase CommunicationMonitor { get; }
}
@@ -34,29 +64,57 @@ namespace PepperDash.Essentials.Core
///
public enum MonitorStatus
{
+ ///
+ /// Status Unknown
+ ///
StatusUnknown = 0,
- IsOk = 1,
- InWarning = 2,
+
+ ///
+ /// Is Ok
+ ///
+ IsOk = 1,
+
+ ///
+ /// In Warning
+ ///
+ InWarning = 2,
+
+ ///
+ /// In Error
+ ///
InError = 3
}
+ ///
+ /// Represents a MonitorStatusChangeEventArgs
+ ///
public class MonitorStatusChangeEventArgs : EventArgs
{
- ///
- /// Gets or sets the Status
- ///
+ ///
+ /// Gets or sets the Status
+ ///
public MonitorStatus Status { get; private set; }
- ///
- /// Gets or sets the Message
- ///
+
+ ///
+ /// Gets or sets the Message
+ ///
public string Message { get; private set; }
+ ///
+ /// Constructor for MonitorStatusChangeEventArgs
+ ///
+ /// monitor status
public MonitorStatusChangeEventArgs(MonitorStatus status)
{
Status = status;
Message = status == MonitorStatus.IsOk ? "" : status.ToString();
}
+ ///
+ /// Constructor for MonitorStatusChangeEventArgs
+ ///
+ /// monitor status
+ /// status message
public MonitorStatusChangeEventArgs(MonitorStatus status, string message)
{
Status = status;
diff --git a/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorBase.cs b/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorBase.cs
index 1934f945..7f44fa0f 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorBase.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorBase.cs
@@ -13,8 +13,14 @@ using PepperDash.Core;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Base class for status monitors
+ ///
public abstract class StatusMonitorBase : IStatusMonitor, IKeyName
{
+ ///
+ /// Event fired when status changes
+ ///
public event EventHandler StatusChange;
///
@@ -27,15 +33,24 @@ namespace PepperDash.Essentials.Core
///
public string Name { get { return "Comm. monitor"; } }
- ///
- /// Gets or sets the Parent
- ///
+ ///
+ /// Gets or sets the Parent
+ ///
public IKeyed Parent { get; private set; }
+ ///
+ /// Bool feedback for online status
+ ///
public BoolFeedback IsOnlineFeedback { get; set; }
+ ///
+ /// Indicates whether the monitored device is online
+ ///
public bool IsOnline;
+ ///
+ /// Current monitor status
+ ///
public MonitorStatus Status
{
get { return _Status; }
@@ -51,6 +66,9 @@ namespace PepperDash.Essentials.Core
}
MonitorStatus _Status;
+ ///
+ /// Current status message
+ ///
public string Message
{
get { return _Message; }
@@ -69,6 +87,12 @@ namespace PepperDash.Essentials.Core
CTimer WarningTimer;
CTimer ErrorTimer;
+ ///
+ /// Constructor
+ ///
+ /// parent device
+ /// time in milliseconds before warning status
+ /// time in milliseconds before error status
public StatusMonitorBase(IKeyed parent, long warningTime, long errorTime)
{
Parent = parent;
@@ -83,9 +107,20 @@ namespace PepperDash.Essentials.Core
ErrorTime = errorTime;
}
+ ///
+ /// Starts the monitor
+ ///
public abstract void Start();
+
+ ///
+ /// Stops the monitor
+ ///
public abstract void Stop();
+ ///
+ /// Fires the StatusChange event
+ ///
+ /// monitor status
protected void OnStatusChange(MonitorStatus status)
{
if (_Status == MonitorStatus.IsOk)
@@ -98,6 +133,11 @@ namespace PepperDash.Essentials.Core
handler(this, new MonitorStatusChangeEventArgs(status));
}
+ ///
+ /// Fires the StatusChange event with message
+ ///
+ /// monitor status
+ /// status message
protected void OnStatusChange(MonitorStatus status, string message)
{
if (_Status == MonitorStatus.IsOk)
@@ -110,12 +150,18 @@ namespace PepperDash.Essentials.Core
handler(this, new MonitorStatusChangeEventArgs(status, message));
}
+ ///
+ /// Starts the error timers
+ ///
protected void StartErrorTimers()
{
if (WarningTimer == null) WarningTimer = new CTimer(o => { Status = MonitorStatus.InWarning; }, WarningTime);
if (ErrorTimer == null) ErrorTimer = new CTimer(o => { Status = MonitorStatus.InError; }, ErrorTime);
}
+ ///
+ /// Stops the error timers
+ ///
protected void StopErrorTimers()
{
if (WarningTimer != null) WarningTimer.Stop();
@@ -124,6 +170,9 @@ namespace PepperDash.Essentials.Core
ErrorTimer = null;
}
+ ///
+ /// Resets the error timers
+ ///
protected void ResetErrorTimers()
{
if(WarningTimer != null)
diff --git a/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorCollection.cs b/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorCollection.cs
index a517e5d0..4dd1d93a 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorCollection.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/StatusMonitorCollection.cs
@@ -14,41 +14,51 @@ using PepperDash.Core;
namespace PepperDash.Essentials.Core
{
///
- ///
+ /// Collection class for multiple status monitors
///
public class StatusMonitorCollection : IStatusMonitor
{
+ ///
+ /// Gets or sets the Parent
+ ///
public IKeyed Parent { get; private set; }
List Monitors = new List();
#region IStatusMonitor Members
+ ///
+ /// Event fired when status changes
+ ///
public event EventHandler StatusChange;
- ///
- /// Gets or sets the Status
- ///
+ ///
+ /// Gets or sets the Status
+ ///
public MonitorStatus Status { get; protected set; }
- ///
- /// Gets or sets the Message
- ///
+ ///
+ /// Gets or sets the Message
+ ///
public string Message { get; private set; }
- ///
- /// Gets or sets the IsOnlineFeedback
- ///
+ ///
+ /// Gets or sets the IsOnlineFeedback
+ ///
public BoolFeedback IsOnlineFeedback { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// parent device
public StatusMonitorCollection(IKeyed parent)
{
Parent = parent;
}
- ///
- /// Start method
- ///
+ ///
+ /// Start method
+ ///
public void Start()
{
foreach (var mon in Monitors)
@@ -135,7 +145,11 @@ namespace PepperDash.Essentials.Core
Monitors.Add(monitor);
}
-
+ ///
+ /// Fires the StatusChange event
+ ///
+ /// monitor status
+ /// status message
protected void OnStatusChange(MonitorStatus status, string message)
{
var handler = StatusChange;
diff --git a/src/PepperDash.Essentials.Core/Monitoring/SystemMonitorController.cs b/src/PepperDash.Essentials.Core/Monitoring/SystemMonitorController.cs
index a353a072..61e70117 100644
--- a/src/PepperDash.Essentials.Core/Monitoring/SystemMonitorController.cs
+++ b/src/PepperDash.Essentials.Core/Monitoring/SystemMonitorController.cs
@@ -26,15 +26,26 @@ namespace PepperDash.Essentials.Core.Monitoring
private string _uptime;
private string _lastStart;
+ ///
+ /// Event fired when any SystemMonitor property changes
+ ///
public event EventHandler SystemMonitorPropertiesChanged;
+ ///
+ /// Gets or sets the ProgramStatusFeedbackCollection
+ ///
public Dictionary ProgramStatusFeedbackCollection;
+
+ ///
+ /// Gets or sets the EthernetStatusFeedbackCollection
+ ///
public Dictionary EthernetStatusFeedbackCollection;
///
/// Gets or sets the TimeZoneFeedback
///
public IntFeedback TimeZoneFeedback { get; protected set; }
+
///
/// Gets or sets the TimeZoneTextFeedback
///
@@ -44,14 +55,17 @@ namespace PepperDash.Essentials.Core.Monitoring
/// Gets or sets the IoControllerVersionFeedback
///
public StringFeedback IoControllerVersionFeedback { get; protected set; }
+
///
/// Gets or sets the SnmpVersionFeedback
///
public StringFeedback SnmpVersionFeedback { get; protected set; }
+
///
/// Gets or sets the BaCnetAppVersionFeedback
///
public StringFeedback BaCnetAppVersionFeedback { get; protected set; }
+
///
/// Gets or sets the ControllerVersionFeedback
///
@@ -62,6 +76,7 @@ namespace PepperDash.Essentials.Core.Monitoring
/// Gets or sets the SerialNumberFeedback
///
public StringFeedback SerialNumberFeedback { get; protected set; }
+
///
/// Gets or sets the ModelFeedback
///
@@ -71,30 +86,34 @@ namespace PepperDash.Essentials.Core.Monitoring
/// Gets or sets the UptimeFeedback
///
public StringFeedback UptimeFeedback { get; set; }
+
///
/// Gets or sets the LastStartFeedback
///
public StringFeedback LastStartFeedback { get; set; }
- ///
- /// Gets or sets the IsApplianceFeedback
- ///
+ ///
+ /// Gets or sets the IsApplianceFeedback
+ ///
public BoolFeedback IsApplianceFeedback { get; protected set; }
private bool _isApplianceFb
{
get { return CrestronEnvironment.DevicePlatform == eDevicePlatform.Appliance; }
}
- ///
- /// Gets or sets the IsServerFeedback
- ///
+ ///
+ /// Gets or sets the IsServerFeedback
+ ///
public BoolFeedback IsServerFeedback { get; protected set; }
private bool _isServerFb
{
get { return CrestronEnvironment.DevicePlatform == eDevicePlatform.Server; }
}
-
+ ///
+ /// Constructor
+ ///
+ /// device key
public SystemMonitorController(string key)
: base(key)
{
@@ -464,55 +483,71 @@ namespace PepperDash.Essentials.Core.Monitoring
OnSystemMonitorPropertiesChanged();
}
+ ///
+ /// Represents an EthernetStatusFeedbacks
+ ///
public class EthernetStatusFeedbacks
{
///
/// Gets or sets the HostNameFeedback
///
public StringFeedback HostNameFeedback { get; protected set; }
+
///
/// Gets or sets the DnsServerFeedback
///
public StringFeedback DnsServerFeedback { get; protected set; }
+
///
/// Gets or sets the DomainFeedback
///
public StringFeedback DomainFeedback { get; protected set; }
+
///
/// Gets or sets the MacAddressFeedback
///
public StringFeedback MacAddressFeedback { get; protected set; }
+
///
/// Gets or sets the DhcpStatusFeedback
///
public StringFeedback DhcpStatusFeedback { get; protected set; }
+
///
/// Gets or sets the CurrentIpAddressFeedback
///
public StringFeedback CurrentIpAddressFeedback { get; protected set; }
+
///
/// Gets or sets the CurrentSubnetMaskFeedback
///
public StringFeedback CurrentSubnetMaskFeedback { get; protected set; }
+
///
/// Gets or sets the CurrentDefaultGatewayFeedback
///
public StringFeedback CurrentDefaultGatewayFeedback { get; protected set; }
-
+
///
/// Gets or sets the StaticIpAddressFeedback
///
public StringFeedback StaticIpAddressFeedback { get; protected set; }
+
///
/// Gets or sets the StaticSubnetMaskFeedback
///
public StringFeedback StaticSubnetMaskFeedback { get; protected set; }
+
///
/// Gets or sets the StaticDefaultGatewayFeedback
///
public StringFeedback StaticDefaultGatewayFeedback { get; protected set; }
+ ///
+ /// Constructor
+ ///
+ /// index of the ethernet addapter
public EthernetStatusFeedbacks(short adapterIndex)
{
Debug.LogMessage(LogEventLevel.Verbose, "Ethernet Information for interface {0}", adapterIndex);
@@ -621,6 +656,9 @@ namespace PepperDash.Essentials.Core.Monitoring
///
public class ProgramStatusFeedbacks
{
+ ///
+ /// Event fired when ProgramInfo changes
+ ///
public event EventHandler ProgramInfoChanged;
///
@@ -637,14 +675,17 @@ namespace PepperDash.Essentials.Core.Monitoring
/// Gets or sets the ProgramStartedFeedback
///
public BoolFeedback ProgramStartedFeedback;
+
///
/// Gets or sets the ProgramStoppedFeedback
///
public BoolFeedback ProgramStoppedFeedback;
+
///
/// Gets or sets the ProgramRegisteredFeedback
///
public BoolFeedback ProgramRegisteredFeedback;
+
///
/// Gets or sets the ProgramUnregisteredFeedback
///
@@ -654,24 +695,32 @@ namespace PepperDash.Essentials.Core.Monitoring
/// Gets or sets the ProgramNameFeedback
///
public StringFeedback ProgramNameFeedback;
+
///
/// Gets or sets the ProgramCompileTimeFeedback
///
public StringFeedback ProgramCompileTimeFeedback;
+
///
/// Gets or sets the CrestronDataBaseVersionFeedback
///
public StringFeedback CrestronDataBaseVersionFeedback;
+
// SIMPL windows version
///
/// Gets or sets the EnvironmentVersionFeedback
///
public StringFeedback EnvironmentVersionFeedback;
+
///
/// Gets or sets the AggregatedProgramInfoFeedback
///
public StringFeedback AggregatedProgramInfoFeedback;
+ ///
+ /// Constructor
+ ///
+ /// program to get status about
public ProgramStatusFeedbacks(Program program)
{
ProgramInfo = new ProgramInfo(program.Number);
@@ -863,38 +912,47 @@ namespace PepperDash.Essentials.Core.Monitoring
{
// Shared properties
+ ///
+ /// Gets the ProgramNumber
+ ///
[JsonProperty("programNumber")]
public uint ProgramNumber { get; private set; }
+ ///
+ /// Gets or sets the OperatingState
+ ///
[JsonConverter(typeof (StringEnumConverter))]
[JsonProperty("operatingState")]
public eProgramOperatingState OperatingState { get; set; }
- [JsonConverter(typeof (StringEnumConverter))]
- [JsonProperty("registrationState")]
///
/// Gets or sets the RegistrationState
///
+ [JsonConverter(typeof (StringEnumConverter))]
+ [JsonProperty("registrationState")]
public eProgramRegistrationState RegistrationState { get; set; }
- [JsonProperty("programFile")]
///
/// Gets or sets the ProgramFile
///
+ [JsonProperty("programFile")]
public string ProgramFile { get; set; }
- [JsonProperty("friendlyName")]
///
/// Gets or sets the FriendlyName
///
+ [JsonProperty("friendlyName")]
public string FriendlyName { get; set; }
- [JsonProperty("compilerRevision")]
///
/// Gets or sets the CompilerRevision
///
+ [JsonProperty("compilerRevision")]
public string CompilerRevision { get; set; }
+ ///
+ /// Gets the CompilerRevisionInfo
+ ///
[JsonIgnore]
public Version CompilerRevisionInfo
{
@@ -904,69 +962,75 @@ namespace PepperDash.Essentials.Core.Monitoring
}
}
- [JsonProperty("compileTime")]
///
/// Gets or sets the CompileTime
///
+ [JsonProperty("compileTime")]
public string CompileTime { get; set; }
- [JsonProperty("include4Dat")]
///
/// Gets or sets the Include4Dat
///
+ [JsonProperty("include4Dat")]
public string Include4Dat { get; set; }
// SIMPL Windows properties
- [JsonProperty("systemName")]
+
///
/// Gets or sets the SystemName
///
+ [JsonProperty("systemName")]
public string SystemName { get; set; }
- [JsonProperty("crestronDb")]
///
/// Gets or sets the CrestronDb
///
+ [JsonProperty("crestronDb")]
public string CrestronDb { get; set; }
- [JsonProperty("environment")]
///
/// Gets or sets the Environment
///
+ [JsonProperty("environment")]
public string Environment { get; set; }
- [JsonProperty("programmer")]
///
/// Gets or sets the Programmer
///
+ [JsonProperty("programmer")]
public string Programmer { get; set; }
// SSP Properties
- [JsonProperty("applicationName")]
+
///
/// Gets or sets the ApplicationName
///
+ [JsonProperty("applicationName")]
public string ApplicationName { get; set; }
- [JsonProperty("programTool")]
///
/// Gets or sets the ProgramTool
///
+ [JsonProperty("programTool")]
public string ProgramTool { get; set; }
- [JsonProperty("minFirmwareVersion")]
///
/// Gets or sets the MinFirmwareVersion
///
+ [JsonProperty("minFirmwareVersion")]
public string MinFirmwareVersion { get; set; }
- [JsonProperty("plugInVersion")]
///
/// Gets or sets the PlugInVersion
///
+ [JsonProperty("plugInVersion")]
public string PlugInVersion { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// program slot to get info about
public ProgramInfo(uint number)
{
ProgramNumber = number;
@@ -999,6 +1063,10 @@ namespace PepperDash.Essentials.Core.Monitoring
///
public ProgramInfo ProgramInfo;
+ ///
+ /// Constructor
+ ///
+ /// program info
public ProgramInfoEventArgs(ProgramInfo progInfo)
{
ProgramInfo = progInfo;
diff --git a/src/PepperDash.Essentials.Core/PartitionSensor/EssentialsPartitionController.cs b/src/PepperDash.Essentials.Core/PartitionSensor/EssentialsPartitionController.cs
index f2043dbc..ee20a22a 100644
--- a/src/PepperDash.Essentials.Core/PartitionSensor/EssentialsPartitionController.cs
+++ b/src/PepperDash.Essentials.Core/PartitionSensor/EssentialsPartitionController.cs
@@ -14,10 +14,16 @@ namespace PepperDash.Essentials.Core
{
private IPartitionStateProvider _partitionSensor;
+ ///
+ /// Indicates whether the controller is in Auto mode or Manual mode
+ ///
public bool IsInAutoMode { get; private set; }
private bool _partitionPresent;
+ ///
+ /// Gets or sets the PartitionPresent state
+ ///
public bool PartitionPresent
{
get
@@ -45,6 +51,14 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// Constructor
+ ///
+ /// key for the partition controller
+ /// name of the partition controller
+ /// partition state provider sensor
+ /// whether to default to manual mode
+ /// list of adjacent room keys
public EssentialsPartitionController(string key, string name, IPartitionStateProvider sensor, bool defaultToManualMode, List adjacentRoomKeys)
{
Key = key;
diff --git a/src/PepperDash.Essentials.Core/PartitionSensor/IPartitionStateProvider.cs b/src/PepperDash.Essentials.Core/PartitionSensor/IPartitionStateProvider.cs
index f41a3f35..5bf40345 100644
--- a/src/PepperDash.Essentials.Core/PartitionSensor/IPartitionStateProvider.cs
+++ b/src/PepperDash.Essentials.Core/PartitionSensor/IPartitionStateProvider.cs
@@ -9,9 +9,15 @@ namespace PepperDash.Essentials.Core
///
public interface IPartitionStateProvider : IKeyName
{
+ ///
+ /// Feedback indicating whether the partition is present
+ ///
[JsonIgnore]
BoolFeedback PartitionPresentFeedback { get; }
+ ///
+ /// Indicates whether the partition is present
+ ///
[JsonProperty("partitionPresent")]
bool PartitionPresent { get; }
}
@@ -21,20 +27,41 @@ namespace PepperDash.Essentials.Core
///
public interface IPartitionController : IPartitionStateProvider
{
+ ///
+ /// List of adjacent room keys
+ ///
[JsonProperty("adjacentRoomKeys")]
List AdjacentRoomKeys { get; }
+ ///
+ /// Indicates whether the controller is in Auto mode or Manual mode
+ ///
[JsonProperty("isInAutoMode")]
bool IsInAutoMode { get; }
+ ///
+ /// Sets the PartitionPresent state
+ ///
void SetPartitionStatePresent();
+ ///
+ /// Sets the PartitionPresent state to not present
+ ///
void SetPartitionStateNotPresent();
+ ///
+ /// Toggles the PartitionPresent state
+ ///
void ToggglePartitionState();
+ ///
+ /// Sets the controller to Manual mode
+ ///
void SetManualMode();
+ ///
+ /// Sets the controller to Auto mode
+ ///
void SetAutoMode();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Plugins/PluginLoader.cs b/src/PepperDash.Essentials.Core/Plugins/PluginLoader.cs
index a1dd9413..2f195ba9 100644
--- a/src/PepperDash.Essentials.Core/Plugins/PluginLoader.cs
+++ b/src/PepperDash.Essentials.Core/Plugins/PluginLoader.cs
@@ -174,9 +174,6 @@ namespace PepperDash.Essentials
///
///
///
- ///
- /// GetAssemblyVersion method
- ///
public static string GetAssemblyVersion(Assembly assembly)
{
var ver = assembly.GetCustomAttributes(typeof(AssemblyInformationalVersionAttribute), false);
@@ -198,11 +195,8 @@ namespace PepperDash.Essentials
///
/// Checks if the filename matches an already loaded assembly file's name
///
- ///
+ /// name of loaded assembly
/// True if file already matches loaded assembly file.
- ///
- /// CheckIfAssemblyLoaded method
- ///
public static bool CheckIfAssemblyLoaded(string name)
{
Debug.LogMessage(LogEventLevel.Verbose, "Checking if assembly: {0} is loaded...", name);
@@ -238,9 +232,6 @@ namespace PepperDash.Essentials
/// Used by console command to report the currently loaded assemblies and versions
///
///
- ///
- /// ReportAssemblyVersions method
- ///
public static void ReportAssemblyVersions(string command)
{
CrestronConsole.ConsoleCommandResponse("Essentials Version: {0}" + CrestronEnvironment.NewLine, Global.AssemblyVersion);
@@ -257,6 +248,7 @@ namespace PepperDash.Essentials
// CrestronConsole.ConsoleCommandResponse("{0} Version: {1}" + CrestronEnvironment.NewLine, assembly.Name, assembly.Version);
//}
}
+
///
/// Moves any .dll assemblies not already loaded from the plugins folder to loadedPlugins folder
///
diff --git a/src/PepperDash.Essentials.Core/Presets/DevicePresets.cs b/src/PepperDash.Essentials.Core/Presets/DevicePresets.cs
index 81612e92..253a19e1 100644
--- a/src/PepperDash.Essentials.Core/Presets/DevicePresets.cs
+++ b/src/PepperDash.Essentials.Core/Presets/DevicePresets.cs
@@ -19,8 +19,17 @@ namespace PepperDash.Essentials.Core.Presets
///
public class DevicePresetsModel : Device
{
+ ///
+ /// Delegate for preset recalled event
+ ///
+ /// device that recalled a preset
+ /// channel that was recalled
public delegate void PresetRecalledCallback(ISetTopBoxNumericKeypad device, string channel);
+ ///
+ /// Delegate for presets saved event
+ ///
+ /// list of presets that were saved
public delegate void PresetsSavedCallback(List presets);
private readonly CCriticalSection _fileOps = new CCriticalSection();
@@ -37,6 +46,12 @@ namespace PepperDash.Essentials.Core.Presets
private Action _enterFunction;
private string _filePath;
+ ///
+ /// Constructor
+ ///
+ /// key for the device
+ /// set top box device
+ /// file name for presets
public DevicePresetsModel(string key, ISetTopBoxNumericKeypad setTopBox, string fileName)
: this(key, fileName)
{
@@ -71,6 +86,11 @@ namespace PepperDash.Essentials.Core.Presets
_enterFunction = setTopBox.KeypadEnter;
}
+ ///
+ /// Constructor
+ ///
+ /// key for the device
+ /// file name for presets
public DevicePresetsModel(string key, string fileName) : base(key)
{
PulseTime = 150;
@@ -88,17 +108,26 @@ namespace PepperDash.Essentials.Core.Presets
_initSuccess = true;
}
+ ///
+ /// Event fired when a preset is recalled
+ ///
public event PresetRecalledCallback PresetRecalled;
+
+ ///
+ /// Event fired when presets are saved
+ ///
public event PresetsSavedCallback PresetsSaved;
///
/// Gets or sets the PulseTime
///
public int PulseTime { get; set; }
+
///
/// Gets or sets the DigitSpacingMs
///
public int DigitSpacingMs { get; set; }
+
///
/// Gets or sets the PresetsAreLoaded
///
@@ -109,6 +138,9 @@ namespace PepperDash.Essentials.Core.Presets
///
public List PresetsList { get; private set; }
+ ///
+ /// Gets the Count of presets
+ ///
public int Count
{
get { return PresetsList != null ? PresetsList.Count : 0; }
@@ -118,18 +150,25 @@ namespace PepperDash.Essentials.Core.Presets
/// Gets or sets the UseLocalImageStorage
///
public bool UseLocalImageStorage { get; set; }
+
///
/// Gets or sets the ImagesLocalHostPrefix
///
public string ImagesLocalHostPrefix { get; set; }
+
///
/// Gets or sets the ImagesPathPrefix
///
public string ImagesPathPrefix { get; set; }
+
///
/// Gets or sets the ListPathPrefix
///
public string ListPathPrefix { get; set; }
+
+ ///
+ /// Event fired when presets are loaded
+ ///
public event EventHandler PresetsLoaded;
diff --git a/src/PepperDash.Essentials.Core/Presets/DevicePresetsView.cs b/src/PepperDash.Essentials.Core/Presets/DevicePresetsView.cs
index 07fba078..42761de7 100644
--- a/src/PepperDash.Essentials.Core/Presets/DevicePresetsView.cs
+++ b/src/PepperDash.Essentials.Core/Presets/DevicePresetsView.cs
@@ -8,33 +8,42 @@ using Crestron.SimplSharpPro.DeviceSupport;
namespace PepperDash.Essentials.Core.Presets
{
- ///
- /// Represents a DevicePresetsView
- ///
+ ///
+ /// Represents a DevicePresetsView
+ ///
public class DevicePresetsView
{
- ///
- /// Gets or sets the ShowNumbers
- ///
+ ///
+ /// Gets or sets the ShowNumbers
+ ///
public bool ShowNumbers { get; set; }
- ///
- /// Gets or sets the ShowName
- ///
+
+ ///
+ /// Gets or sets the ShowName
+ ///
public bool ShowName { get; set; }
- ///
- /// Gets or sets the ShowIcon
- ///
+
+ ///
+ /// Gets or sets the ShowIcon
+ ///
public bool ShowIcon { get; set; }
///
/// Gets or sets the SRL
///
public SubpageReferenceList SRL { get; private set; }
- ///
- /// Gets or sets the Model
- ///
+
+ ///
+ /// Gets or sets the Model
+ ///
public DevicePresetsModel Model { get; private set; }
+ ///
+ /// Constructor
+ ///
+ /// trilst
+ /// device presets model
+ ///
public DevicePresetsView(BasicTriListWithSmartObject tl, DevicePresetsModel model)
{
if (model == null)
@@ -50,9 +59,9 @@ namespace PepperDash.Essentials.Core.Presets
Model.PresetsLoaded += new EventHandler(Model_PresetsLoaded);
}
- ///
- /// Attach method
- ///
+ ///
+ /// Attach method
+ ///
public void Attach()
{
if (Model.PresetsAreLoaded)
@@ -67,9 +76,9 @@ namespace PepperDash.Essentials.Core.Presets
}
}
- ///
- /// Detach method
- ///
+ ///
+ /// Detach method
+ ///
public void Detach()
{
SRL.Clear();
diff --git a/src/PepperDash.Essentials.Core/Presets/PresetBase.cs b/src/PepperDash.Essentials.Core/Presets/PresetBase.cs
index 3e42dd66..84af0bb9 100644
--- a/src/PepperDash.Essentials.Core/Presets/PresetBase.cs
+++ b/src/PepperDash.Essentials.Core/Presets/PresetBase.cs
@@ -15,36 +15,37 @@ namespace PepperDash.Essentials.Core.Presets
///
public class PresetBase
{
- [JsonProperty("id")]
///
/// Gets or sets the ID
///
+ [JsonProperty("id")]
public int ID { get; set; }
- ///
- /// Used to store the name of the preset
- ///
- [JsonProperty("description")]
+
///
/// Gets or sets the Description
///
+ [JsonProperty("description")]
public string Description { get; set; }
+
///
- /// Indicates if the preset is defined(stored) in the codec
+ /// Gets or sets Defined
///
[JsonProperty("defined")]
- ///
- /// Gets or sets the Defined
- ///
public bool Defined { get; set; }
- ///
- /// Indicates if the preset has the capability to be defined
- ///
- [JsonProperty("isDefinable")]
+
///
/// Gets or sets the IsDefinable
///
+ [JsonProperty("isDefinable")]
public bool IsDefinable { get; set; }
+ ///
+ /// Constructor
+ ///
+ /// id of the preset
+ /// description of the preset
+ /// whether the preset is defined
+ /// whether the preset is definable
public PresetBase(int id, string description, bool def, bool isDef)
{
ID = id;
diff --git a/src/PepperDash.Essentials.Core/Presets/PresetChannel.cs b/src/PepperDash.Essentials.Core/Presets/PresetChannel.cs
index b3b885eb..8fd15105 100644
--- a/src/PepperDash.Essentials.Core/Presets/PresetChannel.cs
+++ b/src/PepperDash.Essentials.Core/Presets/PresetChannel.cs
@@ -15,40 +15,40 @@ namespace PepperDash.Essentials.Core.Presets
public class PresetChannel
{
+ ///
+ /// Gets or sets the Name
+ ///
[JsonProperty(Required = Required.Always,PropertyName = "name")]
- ///
- /// Gets or sets the Name
- ///
public string Name { get; set; }
+ ///
+ /// Gets or sets the IconUrl
+ ///
[JsonProperty(Required = Required.Always, PropertyName = "iconUrl")]
- ///
- /// Gets or sets the IconUrl
- ///
public string IconUrl { get; set; }
+ ///
+ /// Gets or sets the Channel
+ ///
[JsonProperty(Required = Required.Always, PropertyName = "channel")]
- ///
- /// Gets or sets the Channel
- ///
public string Channel { get; set; }
}
- ///
- /// Represents a PresetsList
- ///
+ ///
+ /// Represents a PresetsList
+ ///
public class PresetsList
{
+ ///
+ /// Gets or sets the Name
+ ///
[JsonProperty(Required=Required.Always,PropertyName = "name")]
- ///
- /// Gets or sets the Name
- ///
public string Name { get; set; }
+ ///
+ /// Gets or sets the Channels
+ ///
[JsonProperty(Required = Required.Always, PropertyName = "channels")]
- ///
- /// Gets or sets the Channels
- ///
public List Channels { get; set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Presets/PresetsListSubpageReferenceListItem.cs b/src/PepperDash.Essentials.Core/Presets/PresetsListSubpageReferenceListItem.cs
index 826098d1..f7bfa3bd 100644
--- a/src/PepperDash.Essentials.Core/Presets/PresetsListSubpageReferenceListItem.cs
+++ b/src/PepperDash.Essentials.Core/Presets/PresetsListSubpageReferenceListItem.cs
@@ -20,6 +20,13 @@ namespace PepperDash.Essentials.Core.Presets
DevicePresetsView View;
PresetChannel Channel;
+ ///
+ /// Constructor
+ ///
+ /// preset channel
+ /// index of the preset
+ /// owner of the subpage reference list item
+ /// device presets view
public PresetsListSubpageReferenceListItem(PresetChannel chan, uint index,
SubpageReferenceList owner, DevicePresetsView view)
: base(index, owner)
@@ -30,10 +37,10 @@ namespace PepperDash.Essentials.Core.Presets
Refresh();
}
- ///
- /// Clear method
- ///
- ///
+ ///
+ /// Clear method
+ ///
+ ///
public override void Clear()
{
Owner.GetBoolFeedbackSig(Index, 1).UserObject = null;
@@ -42,10 +49,10 @@ namespace PepperDash.Essentials.Core.Presets
Owner.StringInputSig(Index, 3).StringValue = "";
}
- ///
- /// Refresh method
- ///
- ///
+ ///
+ /// Refresh method
+ ///
+ ///
public override void Refresh()
{
var name = View.ShowName ? Channel.Name : "";
diff --git a/src/PepperDash.Essentials.Core/Queues/GenericQueue.cs b/src/PepperDash.Essentials.Core/Queues/GenericQueue.cs
index ab1b53e0..af76f10f 100644
--- a/src/PepperDash.Essentials.Core/Queues/GenericQueue.cs
+++ b/src/PepperDash.Essentials.Core/Queues/GenericQueue.cs
@@ -14,8 +14,20 @@ namespace PepperDash.Essentials.Core.Queues
public class GenericQueue : IQueue
{
private readonly string _key;
+
+ ///
+ /// The internal queue
+ ///
protected readonly ConcurrentQueue _queue;
+
+ ///
+ /// The worker thread
+ ///
protected readonly Thread _worker;
+
+ ///
+ /// The wait handle for the queue
+ ///
protected readonly CEvent _waitHandle = new CEvent();
private bool _delayEnabled;
@@ -256,6 +268,9 @@ namespace PepperDash.Essentials.Core.Queues
Disposed = true;
}
+ ///
+ /// Finalizer
+ ///
~GenericQueue()
{
Dispose(true);
diff --git a/src/PepperDash.Essentials.Core/Queues/IQueue.cs b/src/PepperDash.Essentials.Core/Queues/IQueue.cs
index 502fd0ef..a8cbbf6a 100644
--- a/src/PepperDash.Essentials.Core/Queues/IQueue.cs
+++ b/src/PepperDash.Essentials.Core/Queues/IQueue.cs
@@ -8,7 +8,15 @@ namespace PepperDash.Essentials.Core.Queues
///
public interface IQueue : IKeyed, IDisposable where T : class
{
+ ///
+ /// Enqueues an item
+ ///
+ /// item to be queued
void Enqueue(T item);
+
+ ///
+ /// gets the disposed status of the queue
+ ///
bool Disposed { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Queues/IQueueMessage.cs b/src/PepperDash.Essentials.Core/Queues/IQueueMessage.cs
index 72463da8..2a050a3b 100644
--- a/src/PepperDash.Essentials.Core/Queues/IQueueMessage.cs
+++ b/src/PepperDash.Essentials.Core/Queues/IQueueMessage.cs
@@ -7,6 +7,9 @@ namespace PepperDash.Essentials.Core.Queues
///
public interface IQueueMessage
{
+ ///
+ /// Dispatches the message
+ ///
void Dispatch();
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Queues/StringResponseProcessor.cs b/src/PepperDash.Essentials.Core/Queues/StringResponseProcessor.cs
index 2f03a9d4..207fd597 100644
--- a/src/PepperDash.Essentials.Core/Queues/StringResponseProcessor.cs
+++ b/src/PepperDash.Essentials.Core/Queues/StringResponseProcessor.cs
@@ -4,6 +4,9 @@ using PepperDash.Core;
namespace PepperDash.Essentials.Core.Queues
{
+ ///
+ /// Processes string responses from a communication port or gather using a queue to ensure thread safety
+ ///
public sealed class StringResponseProcessor : IKeyed, IDisposable
{
private readonly Action _processStringAction;
@@ -98,6 +101,9 @@ namespace PepperDash.Essentials.Core.Queues
///
public bool Disposed { get; private set; }
+ ///
+ /// Finalizer
+ ///
~StringResponseProcessor()
{
Dispose(false);
diff --git a/src/PepperDash.Essentials.Core/Ramps and Increments/ActionIncrementer.cs b/src/PepperDash.Essentials.Core/Ramps and Increments/ActionIncrementer.cs
index 630aa4e9..544e7d94 100644
--- a/src/PepperDash.Essentials.Core/Ramps and Increments/ActionIncrementer.cs
+++ b/src/PepperDash.Essentials.Core/Ramps and Increments/ActionIncrementer.cs
@@ -15,10 +15,29 @@ namespace PepperDash.Essentials.Core
///
public class ActionIncrementer
{
+ ///
+ /// The amount to change the value by each increment
+ ///
public int ChangeAmount { get; set; }
+
+ ///
+ /// The maximum value for the incrementer
+ ///
public int MaxValue { get; set; }
+
+ ///
+ /// The minimum value for the incrementer
+ ///
public int MinValue { get; set; }
+
+ ///
+ /// The delay before repeating starts
+ ///
public uint RepeatDelay { get; set; }
+
+ ///
+ /// The time between repeats
+ ///
public uint RepeatTime { get; set; }
Action SetAction;
diff --git a/src/PepperDash.Essentials.Core/Ramps and Increments/UshortSigIncrementer.cs b/src/PepperDash.Essentials.Core/Ramps and Increments/UshortSigIncrementer.cs
index b516d17a..02c40f69 100644
--- a/src/PepperDash.Essentials.Core/Ramps and Increments/UshortSigIncrementer.cs
+++ b/src/PepperDash.Essentials.Core/Ramps and Increments/UshortSigIncrementer.cs
@@ -16,14 +16,44 @@ namespace PepperDash.Essentials.Core
public class UshortSigIncrementer
{
UShortInputSig TheSig;
+
+ ///
+ /// The amount to change the value by each increment
+ ///
public ushort ChangeAmount { get; set; }
+
+ ///
+ /// The maximum value for the incrementer
+ ///
public int MaxValue { get; set; }
+
+ ///
+ /// The minimum value for the incrementer
+ ///
public int MinValue { get; set; }
+
+ ///
+ /// The delay before repeating starts
+ ///
public uint RepeatDelay { get; set; }
+
+ ///
+ /// The time between repeats
+ ///
public uint RepeatTime { get; set; }
+
bool SignedMode;
CTimer Timer;
+ ///
+ /// Constructor
+ ///
+ /// the signal toi be incremented
+ /// the amount to increment by
+ /// the minimum value of the signal
+ /// the maximum value of the signal
+ /// the delay before repeating starts
+ /// the time between repeats
public UshortSigIncrementer(UShortInputSig sig, ushort changeAmount, int minValue, int maxValue, uint repeatDelay, uint repeatTime)
{
TheSig = sig;
diff --git a/src/PepperDash.Essentials.Core/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs b/src/PepperDash.Essentials.Core/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs
index d6f3c503..601c3559 100644
--- a/src/PepperDash.Essentials.Core/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs
+++ b/src/PepperDash.Essentials.Core/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs
@@ -25,8 +25,14 @@ namespace PepperDash.Essentials.Core
{
RoomOnToDefaultSourceWhenOccupiedConfig PropertiesConfig;
+ ///
+ /// Gets or sets the FeatureEnabled
+ ///
public bool FeatureEnabled { get; private set; }
+ ///
+ /// Gets or sets the FeatureEnabledTime
+ ///
public DateTime FeatureEnabledTime { get; private set; }
ScheduledEvent FeatureEnableEvent;
@@ -51,6 +57,10 @@ namespace PepperDash.Essentials.Core
private Fusion.IEssentialsRoomFusionController FusionRoom;
+ ///
+ /// Constructor for RoomOnToDefaultSourceWhenOccupied
+ ///
+ /// config of the device
public RoomOnToDefaultSourceWhenOccupied(DeviceConfig config) :
base (config)
{
@@ -152,7 +162,10 @@ namespace PepperDash.Essentials.Core
Debug.LogMessage(LogEventLevel.Debug, this, "Unable to get room from Device Manager with key: {0}", PropertiesConfig.RoomKey);
}
-
+ ///
+ /// CustomSetConfig method
+ ///
+ /// config of the device
protected override void CustomSetConfig(DeviceConfig config)
{
var newPropertiesConfig = JsonConvert.DeserializeObject(config.Properties.ToString());
@@ -367,7 +380,8 @@ namespace PepperDash.Essentials.Core
///
/// Checks existing event to see if it matches the execution time
///
- ///
+ /// event we are checking
+ /// time we are checking against
///
bool CheckExistingEventTimeForMatch(ScheduledEvent existingEvent, DateTime newTime)
{
@@ -520,70 +534,70 @@ namespace PepperDash.Essentials.Core
///
public class RoomOnToDefaultSourceWhenOccupiedConfig
{
- [JsonProperty("roomKey")]
///
/// Gets or sets the RoomKey
///
+ [JsonProperty("roomKey")]
public string RoomKey { get; set; }
- [JsonProperty("enableRoomOnWhenOccupied")]
///
/// Gets or sets the EnableRoomOnWhenOccupied
///
+ [JsonProperty("enableRoomOnWhenOccupied")]
public bool EnableRoomOnWhenOccupied { get; set; }
- [JsonProperty("occupancyStartTime")]
///
/// Gets or sets the OccupancyStartTime
///
+ [JsonProperty("occupancyStartTime")]
public string OccupancyStartTime { get; set; }
- [JsonProperty("occupancyEndTime")]
///
/// Gets or sets the OccupancyEndTime
///
+ [JsonProperty("occupancyEndTime")]
public string OccupancyEndTime { get; set; }
- [JsonProperty("enableSunday")]
///
/// Gets or sets the EnableSunday
///
+ [JsonProperty("enableSunday")]
public bool EnableSunday { get; set; }
- [JsonProperty("enableMonday")]
///
/// Gets or sets the EnableMonday
///
+ [JsonProperty("enableMonday")]
public bool EnableMonday { get; set; }
- [JsonProperty("enableTuesday")]
///
/// Gets or sets the EnableTuesday
///
+ [JsonProperty("enableWednesday")]
public bool EnableTuesday { get; set; }
- [JsonProperty("enableWednesday")]
///
/// Gets or sets the EnableWednesday
///
+ [JsonProperty("enableWednesday")]
public bool EnableWednesday { get; set; }
- [JsonProperty("enableThursday")]
///
/// Gets or sets the EnableThursday
///
+ [JsonProperty("enableThursday")]
public bool EnableThursday { get; set; }
- [JsonProperty("enableFriday")]
///
/// Gets or sets the EnableFriday
///
+ [JsonProperty("enableFriday")]
public bool EnableFriday { get; set; }
- [JsonProperty("enableSaturday")]
///
/// Gets or sets the EnableSaturday
///
+ [JsonProperty("enableSaturday")]
public bool EnableSaturday { get; set; }
}
@@ -592,6 +606,9 @@ namespace PepperDash.Essentials.Core
///
public class RoomOnToDefaultSourceWhenOccupiedFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor for RoomOnToDefaultSourceWhenOccupiedFactory
+ ///
public RoomOnToDefaultSourceWhenOccupiedFactory()
{
TypeNames = new List() { "roomonwhenoccupancydetectedfeature" };
diff --git a/src/PepperDash.Essentials.Core/Room/Combining/RoomCombinationScenario.cs b/src/PepperDash.Essentials.Core/Room/Combining/RoomCombinationScenario.cs
index aa0bdcaa..040251ee 100644
--- a/src/PepperDash.Essentials.Core/Room/Combining/RoomCombinationScenario.cs
+++ b/src/PepperDash.Essentials.Core/Room/Combining/RoomCombinationScenario.cs
@@ -53,6 +53,9 @@ namespace PepperDash.Essentials.Core
private bool _isActive;
+ ///
+ /// Gets or sets IsActive
+ ///
[JsonProperty("isActive")]
public bool IsActive
{
@@ -69,16 +72,20 @@ namespace PepperDash.Essentials.Core
}
}
- [JsonIgnore]
///
/// Gets or sets the IsActiveFeedback
///
+ [JsonIgnore]
public BoolFeedback IsActiveFeedback { get; private set; }
private List activationActions;
private List deactivationActions;
+ ///
+ /// Constructor for RoomCombinationScenario
+ ///
+ /// config of the room combine scenario
public RoomCombinationScenario(RoomCombinationScenarioConfig config)
{
Key = config.Key;
@@ -98,6 +105,10 @@ namespace PepperDash.Essentials.Core
IsActiveFeedback = new BoolFeedback(() => _isActive);
}
+ ///
+ /// Activates the scenario
+ ///
+ ///
public async Task Activate()
{
this.LogInformation("Activating Scenario {name} with {activationActionCount} action(s) defined", Name, activationActions.Count);
@@ -116,6 +127,10 @@ namespace PepperDash.Essentials.Core
IsActive = true;
}
+ ///
+ /// Deactivates the scenario
+ ///
+ ///
public async Task Deactivate()
{
this.LogInformation("Deactivating Scenario {name} with {deactivationActionCount} action(s) defined", Name, deactivationActions.Count);
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs
index 72286cec..c41ed3c2 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs
@@ -4,16 +4,16 @@ using Newtonsoft.Json;
namespace PepperDash.Essentials.Room.Config
{
- ///
- /// Represents a EssentialsHuddleVtc1PropertiesConfig
- ///
- public class EssentialsHuddleVtc1PropertiesConfig : EssentialsConferenceRoomPropertiesConfig
- {
- [JsonProperty("defaultDisplayKey")]
///
- /// Gets or sets the DefaultDisplayKey
+ /// Represents a EssentialsHuddleVtc1PropertiesConfig
///
- public string DefaultDisplayKey { get; set; }
+ public class EssentialsHuddleVtc1PropertiesConfig : EssentialsConferenceRoomPropertiesConfig
+ {
+ ///
+ /// Gets or sets the DefaultDisplayKey
+ ///
+ [JsonProperty("defaultDisplayKey")]
+ public string DefaultDisplayKey { get; set; }
- }
+ }
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs
index 0d5670a9..f65864b8 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs
@@ -11,13 +11,27 @@ namespace PepperDash.Essentials.Room.Config
///
public class EssentialsNDisplayRoomPropertiesConfig : EssentialsConferenceRoomPropertiesConfig
{
+ ///
+ /// Gets or sets the DefaultAudioBehavior
+ ///
[JsonProperty("defaultAudioBehavior")]
public string DefaultAudioBehavior { get; set; }
+
+ ///
+ /// Gets or sets the DefaultVideoBehavior
+ ///
[JsonProperty("defaultVideoBehavior")]
public string DefaultVideoBehavior { get; set; }
+
+ ///
+ /// Gets or sets the Displays
+ ///
[JsonProperty("displays")]
public Dictionary Displays { get; set; }
+ ///
+ /// Constructor
+ ///
public EssentialsNDisplayRoomPropertiesConfig()
{
Displays = new Dictionary();
@@ -34,6 +48,7 @@ namespace PepperDash.Essentials.Room.Config
/// Gets or sets the Key
///
public string Key { get; set; }
+
///
/// Gets or sets the Name
///
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsPresentationPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsPresentationPropertiesConfig.cs
index 74a8813e..8bd47197 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsPresentationPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsPresentationPropertiesConfig.cs
@@ -11,15 +11,35 @@ namespace PepperDash.Essentials.Room.Config
/// Gets or sets the DefaultAudioBehavior
///
public string DefaultAudioBehavior { get; set; }
+
///
/// Gets or sets the DefaultAudioKey
///
public string DefaultAudioKey { get; set; }
+
+ ///
+ /// Gets or sets the DefaultVideoBehavior
+ ///
public string DefaultVideoBehavior { get; set; }
+
+ ///
+ /// Gets or sets the DisplayKeys
+ ///
public List DisplayKeys { get; set; }
+
+ ///
+ /// Gets or sets the SourceListKey
+ ///
public string SourceListKey { get; set; }
+
+ ///
+ /// Gets or sets a value indicating whether the room has a DSP
+ ///
public bool HasDsp { get; set; }
+ ///
+ /// Constructor
+ ///
public EssentialsPresentationRoomPropertiesConfig()
{
DisplayKeys = new List();
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomConfig.cs
index 8de477f3..7de2405a 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomConfig.cs
@@ -285,7 +285,6 @@ namespace PepperDash.Essentials.Room.Config
///
/// Gets or sets the SourceListKey
///
- ///
[JsonProperty("sourceListKey")]
public string SourceListKey { get; set; }
///
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomEmergencyConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomEmergencyConfig.cs
index ff5b0e5a..349f44b8 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomEmergencyConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomEmergencyConfig.cs
@@ -25,11 +25,15 @@
/// contact,versiport
///
public string Type { get; set; }
+
///
/// Input number if contact
///
public int Number { get; set; }
+ ///
+ /// TriggerOnClose indicates if the trigger is on close
+ ///
public bool TriggerOnClose { get; set; }
}
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomScheduledEventsConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomScheduledEventsConfig.cs
index bb1ec94d..d7cb0514 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomScheduledEventsConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsRoomScheduledEventsConfig.cs
@@ -13,10 +13,10 @@ namespace PepperDash.Essentials.Room.Config
///
public class EssentialsRoomScheduledEventsConfig
{
- [JsonProperty("scheduledEvents")]
///
/// Gets or sets the ScheduledEvents
///
+ [JsonProperty("scheduledEvents")]
public List ScheduledEvents;
}
@@ -25,49 +25,52 @@ namespace PepperDash.Essentials.Room.Config
///
public class ScheduledEventConfig
{
- [JsonProperty("key")]
///
/// Gets or sets the Key
///
+ [JsonProperty("key")]
public string Key;
- [JsonProperty("name")]
///
/// Gets or sets the Name
///
+ [JsonProperty("name")]
public string Name;
+ ///
+ /// Gets or sets the Days
+ ///
[JsonProperty("days")]
public ScheduledEventCommon.eWeekDays Days;
- [JsonProperty("time")]
///
/// Gets or sets the Time
///
+ [JsonProperty("time")]
public string Time;
- [JsonProperty("actions")]
///
/// Gets or sets the Actions
///
+ [JsonProperty("actions")]
public List Actions;
- [JsonProperty("persistent")]
///
/// Gets or sets the Persistent
///
+ [JsonProperty("persistent")]
public bool Persistent;
- [JsonProperty("acknowledgeable")]
///
/// Gets or sets the Acknowledgeable
///
+ [JsonProperty("acknowledgeable")]
public bool Acknowledgeable;
- [JsonProperty("enable")]
///
/// Gets or sets the Enable
///
+ [JsonProperty("enable")]
public bool Enable;
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsTechRoomConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsTechRoomConfig.cs
index bca77725..dfc3d7a6 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsTechRoomConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsTechRoomConfig.cs
@@ -14,9 +14,6 @@ namespace PepperDash.Essentials.Room.Config
/// The key of the dummy device used to enable routing
///
[JsonProperty("dummySourceKey")]
- ///
- /// Gets or sets the DummySourceKey
- ///
public string DummySourceKey { get; set; }
///
@@ -26,7 +23,7 @@ namespace PepperDash.Essentials.Room.Config
public List Displays { get; set; }
///
- /// The keys of the tuners assinged to this room
+ /// The keys of the tuners assigned to this room
///
[JsonProperty("tuners")]
public List Tuners { get; set; }
@@ -49,19 +46,16 @@ namespace PepperDash.Essentials.Room.Config
[JsonProperty("presetsFileName")]
public string PresetsFileName { get; set; }
- [JsonProperty("scheduledEvents")]
///
/// Gets or sets the ScheduledEvents
///
+ [JsonProperty("scheduledEvents")]
public List ScheduledEvents { get; set; }
///
/// Indicates that the room is the primary when true
///
[JsonProperty("isPrimary")]
- ///
- /// Gets or sets the IsPrimary
- ///
public bool IsPrimary { get; set; }
///
@@ -70,21 +64,21 @@ namespace PepperDash.Essentials.Room.Config
[JsonProperty("mirroredTuners")]
public Dictionary MirroredTuners { get; set; }
- [JsonProperty("helpMessage")]
///
/// Gets or sets the HelpMessage
///
+ [JsonProperty("helpMessage")]
public string HelpMessage { get; set; }
- ///
- /// Indicates the room
- ///
- [JsonProperty("isTvPresetsProvider")]
///
/// Gets or sets the IsTvPresetsProvider
///
+ [JsonProperty("isTvPresetsProvider")]
public bool IsTvPresetsProvider;
+ ///
+ /// Constructor
+ ///
public EssentialsTechRoomConfig()
{
Displays = new List();
diff --git a/src/PepperDash.Essentials.Core/Room/Config/EssentialsVolumeLevelConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/EssentialsVolumeLevelConfig.cs
index 4e3d502f..51172130 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/EssentialsVolumeLevelConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/EssentialsVolumeLevelConfig.cs
@@ -12,8 +12,20 @@ namespace PepperDash.Essentials.Room.Config
/// Gets or sets the Master
///
public EssentialsVolumeLevelConfig Master { get; set; }
+
+ ///
+ /// Gets or sets the Program
+ ///
public EssentialsVolumeLevelConfig Program { get; set; }
+
+ ///
+ /// Gets or sets the AudioCallRx
+ ///
public EssentialsVolumeLevelConfig AudioCallRx { get; set; }
+
+ ///
+ /// Gets or sets the AudioCallTx
+ ///
public EssentialsVolumeLevelConfig AudioCallTx { get; set; }
}
diff --git a/src/PepperDash.Essentials.Core/Room/Config/SimplRoomPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Room/Config/SimplRoomPropertiesConfig.cs
index b37335b9..59628aed 100644
--- a/src/PepperDash.Essentials.Core/Room/Config/SimplRoomPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Room/Config/SimplRoomPropertiesConfig.cs
@@ -8,42 +8,46 @@ namespace PepperDash.Essentials.Room.Config
///
public class SimplRoomPropertiesConfig : EssentialsHuddleVtc1PropertiesConfig
{
+ ///
+ /// Gets or sets the RoomPhoneNumber
+ ///
[JsonProperty("roomPhoneNumber")]
- ///
- /// Gets or sets the RoomPhoneNumber
- ///
public string RoomPhoneNumber { get; set; }
+
+ ///
+ /// Gets or sets the RoomURI
+ ///
[JsonProperty("roomURI")]
- ///
- /// Gets or sets the RoomURI
- ///
public string RoomURI { get; set; }
+
+ ///
+ /// Gets or sets the SpeedDials
+ ///
[JsonProperty("speedDials")]
- ///
- /// Gets or sets the SpeedDials
- ///
public List SpeedDials { get; set; }
+
+ ///
+ /// Gets or sets the VolumeSliderNames
+ ///
[JsonProperty("volumeSliderNames")]
- ///
- /// Gets or sets the VolumeSliderNames
- ///
public List VolumeSliderNames { get; set; }
}
- ///
- /// Represents a SimplSpeedDial
- ///
+ ///
+ /// Represents a SimplSpeedDial
+ ///
public class SimplSpeedDial
{
+ ///
+ /// Gets or sets the Name
+ ///
[JsonProperty("name")]
- ///
- /// Gets or sets the Name
- ///
public string Name { get; set; }
+
+ ///
+ /// Gets or sets the Number
+ ///
[JsonProperty("number")]
- ///
- /// Gets or sets the Number
- ///
public string Number { get; set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Room/EsentialsRoomEmergencyContactClosure.cs b/src/PepperDash.Essentials.Core/Room/EsentialsRoomEmergencyContactClosure.cs
index 3a354813..6582bac3 100644
--- a/src/PepperDash.Essentials.Core/Room/EsentialsRoomEmergencyContactClosure.cs
+++ b/src/PepperDash.Essentials.Core/Room/EsentialsRoomEmergencyContactClosure.cs
@@ -9,6 +9,9 @@ namespace PepperDash.Essentials.Core
///
public class EssentialsRoomEmergencyContactClosure : EssentialsRoomEmergencyBase, IEssentialsRoomEmergency
{
+ ///
+ /// Event fired when emergency state changes
+ ///
public event EventHandler EmergencyStateChange;
IEssentialsRoom Room;
@@ -20,6 +23,12 @@ namespace PepperDash.Essentials.Core
///
public bool InEmergency { get; private set; }
+ ///
+ /// Constructor for EssentialsRoomEmergencyContactClosure
+ ///
+ /// device key
+ /// emergency device config
+ /// the room associated with this emergency contact closure
public EssentialsRoomEmergencyContactClosure(string key, EssentialsRoomEmergencyConfig config, IEssentialsRoom room) :
base(key)
{
@@ -95,8 +104,14 @@ namespace PepperDash.Essentials.Core
///
public interface IEssentialsRoomEmergency
{
+ ///
+ /// Event fired when emergency state changes
+ ///
event EventHandler EmergencyStateChange;
+ ///
+ /// Gets or sets the InEmergency
+ ///
bool InEmergency { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Room/EssentialsRoomBase.cs b/src/PepperDash.Essentials.Core/Room/EssentialsRoomBase.cs
index 38e4456e..13ba9d66 100644
--- a/src/PepperDash.Essentials.Core/Room/EssentialsRoomBase.cs
+++ b/src/PepperDash.Essentials.Core/Room/EssentialsRoomBase.cs
@@ -29,7 +29,14 @@ namespace PepperDash.Essentials.Core
///
public event EventHandler RoomOccupancyIsSet;
+ ///
+ /// Gets or sets the IsWarmingUpFeedback
+ ///
public BoolFeedback IsWarmingUpFeedback { get; private set; }
+
+ ///
+ /// Gets or sets the IsCoolingDownFeedback
+ ///
public BoolFeedback IsCoolingDownFeedback { get; private set; }
///
@@ -37,10 +44,19 @@ namespace PepperDash.Essentials.Core
///
public IOccupancyStatusProvider RoomOccupancy { get; protected set; }
+ ///
+ /// Gets or sets the OccupancyStatusProviderIsRemote
+ ///
public bool OccupancyStatusProviderIsRemote { get; private set; }
+ ///
+ /// Gets or sets the EnvironmentalControlDevices
+ ///
public List EnvironmentalControlDevices { get; protected set; }
+ ///
+ /// Indicates if the room has any environmental control devices
+ ///
public bool HasEnvironmentalControlDevices
{
get
@@ -49,7 +65,14 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// Gets or sets the IsWarmingFeedbackFunc
+ ///
protected abstract Func IsWarmingFeedbackFunc { get; }
+
+ ///
+ /// Gets or sets the IsCoolingFeedbackFunc
+ ///
protected abstract Func IsCoolingFeedbackFunc { get; }
///
@@ -62,6 +85,9 @@ namespace PepperDash.Essentials.Core
///
public IMobileControlRoomMessenger MobileControlRoomBridge { get; private set; }
+ ///
+ /// The config name of the default source list
+ ///
protected const string _defaultListKey = "default";
///
@@ -69,6 +95,10 @@ namespace PepperDash.Essentials.Core
///
///
private string _sourceListKey;
+
+ ///
+ /// Gets or sets the SourceListKey
+ ///
public string SourceListKey {
get
{
@@ -91,6 +121,10 @@ namespace PepperDash.Essentials.Core
}
private string _destinationListKey;
+
+ ///
+ /// Gets or sets the DestinationListKey
+ ///
public string DestinationListKey
{
get
@@ -114,6 +148,10 @@ namespace PepperDash.Essentials.Core
}
private string _audioControlPointListKey;
+
+ ///
+ /// Gets or sets the AudioControlPointListKey
+ ///
public string AudioControlPointListKey
{
get
@@ -137,6 +175,10 @@ namespace PepperDash.Essentials.Core
}
private string _cameraListKey;
+
+ ///
+ /// Gets or sets the CameraListKey
+ ///
public string CameraListKey
{
get
@@ -165,16 +207,33 @@ namespace PepperDash.Essentials.Core
public SecondsCountdownTimer ShutdownPromptTimer { get; private set; }
///
- ///
+ /// Gets or sets the ShutdownPromptSeconds
///
public int ShutdownPromptSeconds { get; set; }
+
+ ///
+ /// Gets or sets the ShutdownVacancySeconds
+ ///
public int ShutdownVacancySeconds { get; set; }
+
+ ///
+ /// Gets or sets the ShutdownType
+ ///
public eShutdownType ShutdownType { get; private set; }
+ ///
+ /// Gets or sets the Emergency
+ ///
public EssentialsRoomEmergencyBase Emergency { get; set; }
+ ///
+ /// Gets or sets the MicrophonePrivacy
+ ///
public Core.Privacy.MicrophonePrivacyController MicrophonePrivacy { get; set; }
+ ///
+ /// Gets or sets the LogoUrlLightBkgnd
+ ///
public string LogoUrlLightBkgnd { get; set; }
///
@@ -182,6 +241,9 @@ namespace PepperDash.Essentials.Core
///
public string LogoUrlDarkBkgnd { get; set; }
+ ///
+ /// Gets or sets the RoomVacancyShutdownTimer
+ ///
protected SecondsCountdownTimer RoomVacancyShutdownTimer { get; private set; }
///
@@ -204,6 +266,9 @@ namespace PepperDash.Essentials.Core
///
protected abstract Func OnFeedbackFunc { get; }
+ ///
+ /// Gets or sets the SavedVolumeLevels
+ ///
protected Dictionary SavedVolumeLevels = new Dictionary();
///
@@ -211,7 +276,10 @@ namespace PepperDash.Essentials.Core
///
public bool ZeroVolumeWhenSwtichingVolumeDevices { get; private set; }
-
+ ///
+ /// Constructor for EssentialsRoomBase
+ ///
+ /// config of the device
public EssentialsRoomBase(DeviceConfig config)
: base(config)
{
@@ -283,6 +351,10 @@ namespace PepperDash.Essentials.Core
}
}
+ ///
+ /// Sets the DestinationListKey property to the passed in value or the default if no value passed in
+ ///
+ /// key of the destination list object
protected void SetDestinationListKey(string destinationListKey)
{
if (!string.IsNullOrEmpty(destinationListKey))
@@ -396,6 +468,7 @@ namespace PepperDash.Essentials.Core
/// Sets the object to be used as the IOccupancyStatusProvider for the room. Can be an Occupancy Aggregator or a specific device
///
///
+ ///
public void SetRoomOccupancy(IOccupancyStatusProvider statusProvider, int timeoutMinutes)
{
if (statusProvider == null)
@@ -479,16 +552,45 @@ namespace PepperDash.Essentials.Core
///
public enum eShutdownType
{
+ ///
+ /// No shutdown in progress
+ ///
None = 0,
+
+ ///
+ /// Manual shutdown initiated
+ ///
External,
+
+ ///
+ /// Vacancy based shutdown
+ ///
Manual,
+
+ ///
+ /// Shutdown due to room vacancy
+ ///
Vacancy
}
+ ///
+ /// Enumeration of eVacancyMode values
+ ///
public enum eVacancyMode
{
+ ///
+ /// No vacancy detected
+ ///
None = 0,
+
+ ///
+ /// InInitialVacancy - countdown to warning
+ ///
InInitialVacancy,
+
+ ///
+ /// InShutdownWarning - countdown to shutdown
+ ///
InShutdownWarning
}
@@ -497,15 +599,36 @@ namespace PepperDash.Essentials.Core
///
public enum eWarmingCoolingMode
{
+ ///
+ /// None
+ ///
None,
+
+ ///
+ /// Warming
+ ///
Warming,
+
+ ///
+ /// Cooling
+ ///
Cooling
}
+ ///
+ /// Base class for room emergency implementations
+ ///
public abstract class EssentialsRoomEmergencyBase : IKeyed
{
+ ///
+ /// Key of the room
+ ///
public string Key { get; private set; }
+ ///
+ /// Constructor for EssentialsRoomEmergencyBase
+ ///
+ /// key of the room
public EssentialsRoomEmergencyBase(string key)
{
Key = key;
diff --git a/src/PepperDash.Essentials.Core/Room/IEssentialsRoom.cs b/src/PepperDash.Essentials.Core/Room/IEssentialsRoom.cs
index d452c0b9..3ebe28c4 100644
--- a/src/PepperDash.Essentials.Core/Room/IEssentialsRoom.cs
+++ b/src/PepperDash.Essentials.Core/Room/IEssentialsRoom.cs
@@ -17,34 +17,95 @@ namespace PepperDash.Essentials.Core
///
public interface IEssentialsRoom : IKeyName, IReconfigurableDevice, IRunDefaultPresentRoute, IEnvironmentalControls
{
+ ///
+ /// Gets the PowerFeedback
+ ///
BoolFeedback OnFeedback { get; }
+ ///
+ /// Gets the IsOccupiedFeedback
+ ///
BoolFeedback IsWarmingUpFeedback { get; }
+
+ ///
+ /// Gets the IsCoolingDownFeedback
+ ///
BoolFeedback IsCoolingDownFeedback { get; }
+ ///
+ /// Gets a value indicating whether mobile control is enabled for this room
+ ///
bool IsMobileControlEnabled { get; }
+
+ ///
+ /// Gets the MobileControlRoomBridge
+ ///
IMobileControlRoomMessenger MobileControlRoomBridge { get; }
+ ///
+ /// Gets the SourceListKey
+ ///
string SourceListKey { get; }
+ ///
+ /// Gets the DestinationListKey
+ ///
string DestinationListKey { get; }
+ ///
+ /// Gets the AudioControlPointListKey
+ ///
string AudioControlPointListKey { get; }
+ ///
+ /// Gets the CameraListKey
+ ///
string CameraListKey { get; }
+ ///
+ /// Gets the ShutdownPromptTimer
+ ///
SecondsCountdownTimer ShutdownPromptTimer { get; }
+
+ ///
+ /// Gets the ShutdownVacancyTimer
+ ///
int ShutdownPromptSeconds { get; }
+
+ ///
+ /// Gets the ShutdownVacancySeconds
+ ///
int ShutdownVacancySeconds { get; }
+
+ ///
+ /// Gets the ShutdownType
+ ///
eShutdownType ShutdownType { get; }
+ ///
+ /// Gets the LogoUrlLightBkgnd
+ ///
string LogoUrlLightBkgnd { get; }
+
+ ///
+ /// Gets the LogoUrlDarkBkgnd
+ ///
string LogoUrlDarkBkgnd { get; }
+ ///
+ /// Starts the shutdown process
+ ///
+ /// type of shutdown event
void StartShutdown(eShutdownType type);
+ ///
+ /// Shuts down the room
+ ///
void Shutdown();
+ ///
+ /// Powers on the room to either the default source or the last source used
+ ///
void PowerOnToDefaultOrLastSource();
}
diff --git a/src/PepperDash.Essentials.Core/Room/IRoomEventSchedule.cs b/src/PepperDash.Essentials.Core/Room/IRoomEventSchedule.cs
index 0ddb61fc..a42ea505 100644
--- a/src/PepperDash.Essentials.Core/Room/IRoomEventSchedule.cs
+++ b/src/PepperDash.Essentials.Core/Room/IRoomEventSchedule.cs
@@ -9,10 +9,21 @@ namespace PepperDash.Essentials.Core
///
public interface IRoomEventSchedule
{
+ ///
+ /// Adds or updates a scheduled event
+ ///
+ ///
void AddOrUpdateScheduledEvent(ScheduledEventConfig eventConfig);
+ ///
+ /// Removes a scheduled event by its key
+ ///
+ ///
List GetScheduledEvents();
+ ///
+ /// Removes a scheduled event by its key
+ ///
event EventHandler ScheduledEventsChanged;
}
diff --git a/src/PepperDash.Essentials.Core/Room/Interfaces.cs b/src/PepperDash.Essentials.Core/Room/Interfaces.cs
index bffb80a3..0d2f0850 100644
--- a/src/PepperDash.Essentials.Core/Room/Interfaces.cs
+++ b/src/PepperDash.Essentials.Core/Room/Interfaces.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasInCallFeedback
{
+ ///
+ /// Gets the InCallFeedback
+ ///
BoolFeedback InCallFeedback { get; }
}
@@ -19,6 +22,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasDefaultDisplay
{
+ ///
+ /// Gets the DefaultDisplay
+ ///
IRoutingSink DefaultDisplay { get; }
}
@@ -28,6 +34,9 @@ namespace PepperDash.Essentials.Core
[Obsolete("Will be removed in a future version")]
public interface IHasMultipleDisplays
{
+ ///
+ /// Gets the Displays dictionary
+ ///
Dictionary Displays { get; }
}
@@ -36,8 +45,19 @@ namespace PepperDash.Essentials.Core
///
public interface IRunRouteAction
{
+ ///
+ /// Runs a route action
+ ///
+ ///
+ ///
void RunRouteAction(string routeKey, string sourceListKey);
+ ///
+ /// Runs a route action with a success callback
+ ///
+ ///
+ ///
+ ///
void RunRouteAction(string routeKey, string sourceListKey, Action successCallback);
}
@@ -46,6 +66,12 @@ namespace PepperDash.Essentials.Core
///
public interface IRunDirectRouteAction
{
+ ///
+ /// Runs a direct route
+ ///
+ ///
+ ///
+ ///
void RunDirectRoute(string sourceKey, string destinationKey, eRoutingSignalType type = eRoutingSignalType.AudioVideo);
}
@@ -54,8 +80,14 @@ namespace PepperDash.Essentials.Core
///
public interface IHasMatrixRouting
{
+ ///
+ /// Gets the MatrixRoutingDeviceKey
+ ///
string MatrixRoutingDeviceKey { get; }
+ ///
+ /// Gets the EndpointKeys
+ ///
List EndpointKeys { get; }
}
@@ -64,6 +96,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasRoutingEndpoints
{
+ ///
+ /// Gets the EndpointKeys
+ ///
List EndpointKeys { get; }
}
@@ -72,10 +107,21 @@ namespace PepperDash.Essentials.Core
///
public interface IShutdownPromptTimer
{
+ ///
+ /// Gets the ShutdownPromptTimer
+ ///
SecondsCountdownTimer ShutdownPromptTimer { get; }
+ ///
+ /// Gets the ShutdownPromptSeconds
+ ///
+ /// number of seconds to set
void SetShutdownPromptSeconds(int seconds);
+ ///
+ /// Starts the shutdown process
+ ///
+ /// type of shutdown event
void StartShutdown(eShutdownType type);
}
@@ -84,14 +130,32 @@ namespace PepperDash.Essentials.Core
///
public interface ITechPassword
{
+ ///
+ /// Event fired when tech password validation result is available
+ ///
event EventHandler TechPasswordValidateResult;
+ ///
+ /// Event fired when tech password is changed
+ ///
event EventHandler TechPasswordChanged;
+ ///
+ /// Gets the TechPasswordLength
+ ///
int TechPasswordLength { get; }
+ ///
+ /// Validates the tech password
+ ///
+ /// The tech password to validate
void ValidateTechPassword(string password);
+ ///
+ /// Sets the tech password
+ ///
+ /// The current tech password
+ /// The new tech password to set
void SetTechPassword(string oldPassword, string newPassword);
}
@@ -105,6 +169,10 @@ namespace PepperDash.Essentials.Core
///
public bool IsValid { get; private set; }
+ ///
+ /// Constructor for TechPasswordEventArgs
+ ///
+ ///
public TechPasswordEventArgs(bool isValid)
{
IsValid = isValid;
@@ -116,6 +184,10 @@ namespace PepperDash.Essentials.Core
///
public interface IRunDefaultPresentRoute
{
+ ///
+ /// Runs the default present route
+ ///
+ ///
bool RunDefaultPresentRoute();
}
@@ -124,6 +196,10 @@ namespace PepperDash.Essentials.Core
///
public interface IRunDefaultCallRoute : IRunDefaultPresentRoute
{
+ ///
+ /// Runs the default call route
+ ///
+ ///
bool RunDefaultCallRoute();
}
@@ -132,24 +208,59 @@ namespace PepperDash.Essentials.Core
///
public interface IEnvironmentalControls
{
+ ///
+ /// Gets the EnvironmentalControlDevices
+ ///
List EnvironmentalControlDevices { get; }
+ ///
+ /// Gets a value indicating whether the room has environmental control devices
+ ///
bool HasEnvironmentalControlDevices { get; }
}
+ ///
+ /// Defines the contract for IRoomOccupancy
+ ///
public interface IRoomOccupancy : IKeyed
{
+ ///
+ /// Gets the RoomOccupancy
+ ///
IOccupancyStatusProvider RoomOccupancy { get; }
+
+ ///
+ /// Gets a value indicating whether the OccupancyStatusProviderIsRemote
+ ///
bool OccupancyStatusProviderIsRemote { get; }
+ ///
+ /// Sets the room occupancy
+ ///
+ ///
+ ///
void SetRoomOccupancy(IOccupancyStatusProvider statusProvider, int timeoutMinutes);
+ ///
+ /// Called when the room has been vacated for the timeout period
+ ///
+ ///
void RoomVacatedForTimeoutPeriod(object o);
+ ///
+ /// Starts the room vacancy timer
+ ///
+ /// vacancy mode
void StartRoomVacancyTimer(eVacancyMode mode);
+ ///
+ /// Gets the VacancyMode
+ ///
eVacancyMode VacancyMode { get; }
+ ///
+ /// Event fired when room occupancy is set
+ ///
event EventHandler RoomOccupancyIsSet;
}
@@ -158,6 +269,9 @@ namespace PepperDash.Essentials.Core
///
public interface IEmergency
{
+ ///
+ /// Gets the Emergency
+ ///
EssentialsRoomEmergencyBase Emergency { get; }
}
@@ -166,6 +280,9 @@ namespace PepperDash.Essentials.Core
///
public interface IMicrophonePrivacy
{
+ ///
+ /// Gets the MicrophonePrivacy
+ ///
Core.Privacy.MicrophonePrivacyController MicrophonePrivacy { get; }
}
@@ -174,6 +291,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasAccessoryDevices : IKeyName
{
+ ///
+ /// Gets the AccessoryDeviceKeys
+ ///
List AccessoryDeviceKeys { get; }
}
@@ -182,6 +302,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasCiscoNavigatorTouchpanel
{
+ ///
+ /// Gets the CiscoNavigatorTouchpanelKey
+ ///
string CiscoNavigatorTouchpanelKey { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Room/Room.cs b/src/PepperDash.Essentials.Core/Room/Room.cs
index 5ff03d26..d9c51c9d 100644
--- a/src/PepperDash.Essentials.Core/Room/Room.cs
+++ b/src/PepperDash.Essentials.Core/Room/Room.cs
@@ -12,33 +12,54 @@ namespace PepperDash.Essentials.Core
{
//***************************************************************************************************
+ ///
+ /// Abstract base class for Room
+ ///
public abstract class Room : Device, IHasFeedback
{
+ ///
+ /// Gets or sets the RoomIsOnFeedback
+ ///
public abstract BoolFeedback RoomIsOnFeedback { get; protected set; }
+
+ ///
+ /// Gets or sets the IsCoolingDownFeedback
+ ///
public abstract BoolFeedback IsCoolingDownFeedback { get; protected set; }
+
+ ///
+ /// Gets or sets the IsWarmingUpFeedback
+ ///
public abstract BoolFeedback IsWarmingUpFeedback { get; protected set; }
// In concrete classes, these should be computed from the relevant devices
- ///
- /// Gets or sets the CooldownTime
- ///
- ///
+ ///
+ /// Gets or sets the CooldownTime
+ ///
+ ///
public virtual uint CooldownTime { get { return 10000; } }
- ///
- /// Gets or sets the WarmupTime
- ///
- ///
+
+ ///
+ /// Gets or sets the WarmupTime
+ ///
+ ///
public virtual uint WarmupTime { get { return 5000; } }
- ///
- /// Gets or sets the Description
- ///
+ ///
+ /// Gets or sets the Description
+ ///
public string Description { get; set; }
- ///
- /// Gets or sets the HelpMessage
- ///
+
+ ///
+ /// Gets or sets the HelpMessage
+ ///
public string HelpMessage { get; set; }
+ ///
+ /// Room Constructor
+ ///
+ /// room key
+ /// room name
public Room(string key, string name)
: base(key, name)
{
@@ -59,6 +80,9 @@ namespace PepperDash.Essentials.Core
#region IDeviceWithOutputs Members
+ ///
+ /// Gets the Feedbacks
+ ///
public virtual FeedbackCollection Feedbacks
{
get
diff --git a/src/PepperDash.Essentials.Core/Room/iOccupancyStatusProvider.cs b/src/PepperDash.Essentials.Core/Room/iOccupancyStatusProvider.cs
index 3ac3c606..8ea858ee 100644
--- a/src/PepperDash.Essentials.Core/Room/iOccupancyStatusProvider.cs
+++ b/src/PepperDash.Essentials.Core/Room/iOccupancyStatusProvider.cs
@@ -13,6 +13,9 @@ namespace PepperDash.Essentials.Core
///
public interface IOccupancyStatusProvider
{
+ ///
+ /// Gets the RoomIsOccupiedFeedback
+ ///
BoolFeedback RoomIsOccupiedFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Routing/Extensions.cs b/src/PepperDash.Essentials.Core/Routing/Extensions.cs
index 5d09176f..3797f5e2 100644
--- a/src/PepperDash.Essentials.Core/Routing/Extensions.cs
+++ b/src/PepperDash.Essentials.Core/Routing/Extensions.cs
@@ -326,6 +326,8 @@ namespace PepperDash.Essentials.Core
/// This recursive function should not be called with AudioVideo
/// Just an informational counter
/// The RouteDescriptor being populated as the route is discovered
+ /// The RoutingOutputPort to use for the route
+ /// The specific source output port to use (optional)
/// true if source is hit
private static bool GetRouteToSource(this IRoutingInputs destination, IRoutingOutputs source,
RoutingOutputPort outputPortToUse, List alreadyCheckedDevices,
diff --git a/src/PepperDash.Essentials.Core/Routing/IInputSync.cs b/src/PepperDash.Essentials.Core/Routing/IInputSync.cs
index a4bc25ba..50f2b5fb 100644
--- a/src/PepperDash.Essentials.Core/Routing/IInputSync.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IInputSync.cs
@@ -12,8 +12,14 @@ namespace PepperDash.Essentials.Core.Routing
///
public interface IVideoSync : IKeyed
{
+ ///
+ /// Gets whether or not video sync is detected
+ ///
bool VideoSyncDetected { get; }
+ ///
+ /// Event raised when video sync changes
+ ///
event EventHandler VideoSyncChanged;
}
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IMatrixRouting.cs b/src/PepperDash.Essentials.Core/Routing/IMatrixRouting.cs
index a262e3df..d12e704e 100644
--- a/src/PepperDash.Essentials.Core/Routing/IMatrixRouting.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IMatrixRouting.cs
@@ -7,9 +7,22 @@ namespace PepperDash.Essentials.Core.Routing
///
public interface IMatrixRouting
{
+ ///
+ /// Gets the input slots
+ ///
Dictionary InputSlots { get; }
+
+ ///
+ /// Gets the output slots
+ ///
Dictionary OutputSlots { get; }
+ ///
+ /// Routes the specified input slot to the specified output slot for the specified signal type
+ ///
+ /// key of the input slot
+ /// key of the output slot
+ /// signal type
void Route(string inputSlotKey, string outputSlotKey, eRoutingSignalType type);
}
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRmcRouting.cs b/src/PepperDash.Essentials.Core/Routing/IRmcRouting.cs
index ec5fe2c4..f2837350 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRmcRouting.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRmcRouting.cs
@@ -5,6 +5,9 @@
///
public interface IRmcRouting : IRoutingNumeric
{
+ ///
+ /// Feedback for the current Audio/Video source as a number
+ ///
IntFeedback AudioVideoSourceNumericFeedback { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Routing/IRouting.cs b/src/PepperDash.Essentials.Core/Routing/IRouting.cs
index e3231858..64bcd7a5 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRouting.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRouting.cs
@@ -11,6 +11,12 @@ namespace PepperDash.Essentials.Core
///
public interface IRouting : IRoutingInputsOutputs
{
+ ///
+ /// Executes a switch on the device
+ ///
+ /// input selector
+ /// output selector
+ /// type of signal
void ExecuteSwitch(object inputSelector, object outputSelector, eRoutingSignalType signalType);
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingFeedback.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingFeedback.cs
index a76f571b..253ab8ee 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingFeedback.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingFeedback.cs
@@ -10,6 +10,9 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingFeedback : IKeyName
{
+ ///
+ /// Event raised when a numeric switch changes
+ ///
event EventHandler NumericSwitchChange;
//void OnSwitchChange(RoutingNumericEventArgs e);
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingHasVideoInputSyncFeedbacks.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingHasVideoInputSyncFeedbacks.cs
index 9d344ce9..a2b4c54e 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingHasVideoInputSyncFeedbacks.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingHasVideoInputSyncFeedbacks.cs
@@ -17,6 +17,9 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingHasVideoInputSyncFeedbacks
{
+ ///
+ /// Video Input Sync Feedbacks
+ ///
FeedbackCollection VideoInputSyncFeedbacks { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingInputSlot.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingInputSlot.cs
index 94eddd26..f620f8bf 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingInputSlot.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingInputSlot.cs
@@ -5,6 +5,9 @@
///
public interface IRoutingInputSlot: IRoutingSlot, IOnline, IVideoSync
{
+ ///
+ /// Gets the Tx device key
+ ///
string TxDeviceKey { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingInputs.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingInputs.cs
index 102cf5f9..9543bb54 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingInputs.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingInputs.cs
@@ -8,6 +8,9 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingInputs : IKeyed
{
+ ///
+ /// Collection of Input Ports
+ ///
RoutingPortCollection InputPorts { get; }
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingNumeric.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingNumeric.cs
index ff7e6cd7..cd91daa0 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingNumeric.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingNumeric.cs
@@ -5,6 +5,12 @@
///
public interface IRoutingNumeric : IRouting
{
+ ///
+ /// Executes a numeric switch on the device
+ ///
+ /// input selector
+ /// output selector
+ /// type of signal
void ExecuteNumericSwitch(ushort input, ushort output, eRoutingSignalType type);
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingOutputSlot.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingOutputSlot.cs
index 0d590684..266e0724 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingOutputSlot.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingOutputSlot.cs
@@ -8,10 +8,19 @@ namespace PepperDash.Essentials.Core.Routing
///
public interface IRoutingOutputSlot : IRoutingSlot
{
+ ///
+ /// Event raised when output slot changes
+ ///
event EventHandler OutputSlotChanged;
+ ///
+ /// Gets the Rx device key
+ ///
string RxDeviceKey { get; }
+ ///
+ /// Gets the current routes
+ ///
Dictionary CurrentRoutes { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingOutputs.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingOutputs.cs
index dbfc2916..c26e7b70 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingOutputs.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingOutputs.cs
@@ -9,6 +9,9 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingOutputs : IKeyed
{
+ ///
+ /// Collection of Output Ports
+ ///
RoutingPortCollection OutputPorts { get; }
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingSinkWithSwitching.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingSinkWithSwitching.cs
index 773e036e..5c202914 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingSinkWithSwitching.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingSinkWithSwitching.cs
@@ -12,6 +12,10 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingSinkWithSwitching : IRoutingSink
{
+ ///
+ /// Executes a switch on the device
+ ///
+ /// input selector
void ExecuteSwitch(object inputSelector);
}
@@ -20,6 +24,9 @@ namespace PepperDash.Essentials.Core
///
public interface IRoutingSinkWithSwitchingWithInputPort:IRoutingSinkWithSwitching, IRoutingSinkWithInputPort
{
+ ///
+ /// Event raised when the input changes
+ ///
event InputChangedEventHandler InputChanged;
}
diff --git a/src/PepperDash.Essentials.Core/Routing/IRoutingSlot.cs b/src/PepperDash.Essentials.Core/Routing/IRoutingSlot.cs
index b6922862..2e8c544f 100644
--- a/src/PepperDash.Essentials.Core/Routing/IRoutingSlot.cs
+++ b/src/PepperDash.Essentials.Core/Routing/IRoutingSlot.cs
@@ -12,8 +12,14 @@ namespace PepperDash.Essentials.Core.Routing
///
public interface IRoutingSlot:IKeyName
{
+ ///
+ /// Gets the slot number
+ ///
int SlotNumber { get; }
+ ///
+ /// Gets the supported signal types
+ ///
eRoutingSignalType SupportedSignalTypes { get; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Routing/RouteDescriptorCollection.cs b/src/PepperDash.Essentials.Core/Routing/RouteDescriptorCollection.cs
index f389f719..483ea22a 100644
--- a/src/PepperDash.Essentials.Core/Routing/RouteDescriptorCollection.cs
+++ b/src/PepperDash.Essentials.Core/Routing/RouteDescriptorCollection.cs
@@ -11,6 +11,9 @@ namespace PepperDash.Essentials.Core
///
public class RouteDescriptorCollection
{
+ ///
+ /// DefaultCollection static property
+ ///
public static RouteDescriptorCollection DefaultCollection
{
get
@@ -57,6 +60,12 @@ namespace PepperDash.Essentials.Core
return RouteDescriptors.FirstOrDefault(rd => rd.Destination == destination);
}
+ ///
+ /// Gets the RouteDescriptor for a destination and input port key. Returns null if no matching RouteDescriptor exists.
+ ///
+ ///
+ ///
+ ///
public RouteDescriptor GetRouteDescriptorForDestinationAndInputPort(IRoutingInputs destination, string inputPortKey)
{
Debug.LogMessage(LogEventLevel.Information, "Getting route descriptor for '{destination}':'{inputPortKey}'", destination?.Key ?? null, string.IsNullOrEmpty(inputPortKey) ? "auto" : inputPortKey);
diff --git a/src/PepperDash.Essentials.Core/Routing/RoutingInputPort.cs b/src/PepperDash.Essentials.Core/Routing/RoutingInputPort.cs
index 08876121..4e50f689 100644
--- a/src/PepperDash.Essentials.Core/Routing/RoutingInputPort.cs
+++ b/src/PepperDash.Essentials.Core/Routing/RoutingInputPort.cs
@@ -21,6 +21,9 @@ namespace PepperDash.Essentials.Core
/// An object used to refer to this port in the IRouting device's ExecuteSwitch method.
/// May be string, number, whatever
/// The IRoutingInputs object this lives on
+ /// key of the port
+ /// type of the routing signal
+ /// connection type of the port
public RoutingInputPort(string key, eRoutingSignalType type, eRoutingPortConnectionType connType,
object selector, IRoutingInputs parent)
: this (key, type, connType, selector, parent, false)
@@ -32,6 +35,12 @@ namespace PepperDash.Essentials.Core
/// the ports that link a DM card to a DM matrix bus
///
/// true for internal ports
+ /// key of the port
+ /// type of the routing signal
+ /// connection type of the port
+ /// An object used to refer to this port in the IRouting device's ExecuteSwitch method.
+ /// May be string, number, whatever
+ /// The IRoutingInputs object this lives on
public RoutingInputPort(string key, eRoutingSignalType type, eRoutingPortConnectionType connType,
object selector, IRoutingInputs parent, bool isInternal)
: base(key, type, connType, selector, isInternal)
diff --git a/src/PepperDash.Essentials.Core/Routing/eRoutingPortConnectionType.cs b/src/PepperDash.Essentials.Core/Routing/eRoutingPortConnectionType.cs
index 41e8c81b..9245dd48 100644
--- a/src/PepperDash.Essentials.Core/Routing/eRoutingPortConnectionType.cs
+++ b/src/PepperDash.Essentials.Core/Routing/eRoutingPortConnectionType.cs
@@ -5,7 +5,99 @@
///
public enum eRoutingPortConnectionType
{
- None, BackplaneOnly, DisplayPort, Dvi, Hdmi, Rgb, Vga, LineAudio, DigitalAudio, Sdi,
- Composite, Component, DmCat, DmMmFiber, DmSmFiber, Speaker, Streaming, UsbC, HdBaseT
+ ///
+ /// No connection type
+ ///
+ None,
+
+ ///
+ /// Backplane only connection
+ ///
+ BackplaneOnly,
+
+ ///
+ /// Connection via cable
+ ///
+ DisplayPort,
+
+ ///
+ /// DVI connection
+ ///
+ Dvi,
+
+ ///
+ /// HDMI connection
+ ///
+ Hdmi,
+
+ ///
+ /// RGB connection
+ ///
+ Rgb,
+
+ ///
+ /// VGA connection
+ ///
+ Vga,
+
+ ///
+ /// Line audio connection
+ ///
+ LineAudio,
+
+ ///
+ /// Digital audio connection
+ ///
+ DigitalAudio,
+
+ ///
+ /// SDI connection
+ ///
+ Sdi,
+
+ ///
+ /// Composite connection
+ ///
+ Composite,
+
+ ///
+ /// Component connection
+ ///
+ Component,
+
+ ///
+ /// DM CAT connection
+ ///
+ DmCat,
+
+ ///
+ /// DM MM Fiber connection
+ ///
+ DmMmFiber,
+
+ ///
+ /// DM SM Fiber connection
+ ///
+ DmSmFiber,
+
+ ///
+ /// Speaker connection
+ ///
+ Speaker,
+
+ ///
+ /// Microphone connection
+ ///
+ Streaming,
+
+ ///
+ /// USB-C connection
+ ///
+ UsbC,
+
+ ///
+ /// HDBaseT connection
+ ///
+ HdBaseT
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Routing/eRoutingSignalType.cs b/src/PepperDash.Essentials.Core/Routing/eRoutingSignalType.cs
index bab815fc..9fce9c5b 100644
--- a/src/PepperDash.Essentials.Core/Routing/eRoutingSignalType.cs
+++ b/src/PepperDash.Essentials.Core/Routing/eRoutingSignalType.cs
@@ -3,17 +3,40 @@
namespace PepperDash.Essentials.Core
{
- [Flags]
///
/// Enumeration of eRoutingSignalType values
///
+ [Flags]
public enum eRoutingSignalType
{
+ ///
+ /// Audio signal type
+ ///
Audio = 1,
+
+ ///
+ /// Video signal type
+ ///
Video = 2,
+
+ ///
+ /// AudioVideo signal type
+ ///
AudioVideo = Audio | Video,
+
+ ///
+ /// Control signal type
+ ///
UsbOutput = 8,
+
+ ///
+ /// Control signal type
+ ///
UsbInput = 16,
+
+ ///
+ /// Secondary audio signal type
+ ///
SecondaryAudio = 32
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Secrets/CrestronGlobalSecretsProvider.cs b/src/PepperDash.Essentials.Core/Secrets/CrestronGlobalSecretsProvider.cs
index 83d0a0a8..45983b0c 100644
--- a/src/PepperDash.Essentials.Core/Secrets/CrestronGlobalSecretsProvider.cs
+++ b/src/PepperDash.Essentials.Core/Secrets/CrestronGlobalSecretsProvider.cs
@@ -22,6 +22,10 @@ namespace PepperDash.Essentials.Core
///
public string Description { get; private set; }
+ ///
+ /// Constructor for CrestronGlobalSecretsProvider
+ ///
+ /// The key for the secret provider
public CrestronGlobalSecretsProvider(string key)
{
Key = key;
diff --git a/src/PepperDash.Essentials.Core/Secrets/CrestronLocalSecretsProvider.cs b/src/PepperDash.Essentials.Core/Secrets/CrestronLocalSecretsProvider.cs
index a20d832e..31a1faa3 100644
--- a/src/PepperDash.Essentials.Core/Secrets/CrestronLocalSecretsProvider.cs
+++ b/src/PepperDash.Essentials.Core/Secrets/CrestronLocalSecretsProvider.cs
@@ -23,7 +23,10 @@ namespace PepperDash.Essentials.Core
///
public string Description { get; private set; }
-
+ ///
+ /// Constructor for CrestronLocalSecretsProvider
+ ///
+ /// The key for the secret provider
public CrestronLocalSecretsProvider(string key)
{
Key = key;
diff --git a/src/PepperDash.Essentials.Core/Secrets/CrestronSecret.cs b/src/PepperDash.Essentials.Core/Secrets/CrestronSecret.cs
index 27fbcdad..5a606453 100644
--- a/src/PepperDash.Essentials.Core/Secrets/CrestronSecret.cs
+++ b/src/PepperDash.Essentials.Core/Secrets/CrestronSecret.cs
@@ -11,11 +11,27 @@ namespace PepperDash.Essentials.Core
///
public class CrestronSecret : ISecret
{
+ ///
+ /// Gets the Provider
+ ///
public ISecretProvider Provider { get; private set; }
+
+ ///
+ /// Gets the Key
+ ///
public string Key { get; private set; }
+ ///
+ /// Gets the Value
+ ///
public object Value { get; private set; }
+ ///
+ /// Constructor for CrestronSecret
+ ///
+ /// key for the secret
+ /// value of the secret
+ /// provider of the secret
public CrestronSecret(string key, string value, ISecretProvider provider)
{
Key = key;
diff --git a/src/PepperDash.Essentials.Core/Secrets/SecretsManager.cs b/src/PepperDash.Essentials.Core/Secrets/SecretsManager.cs
index 6a08f0e2..382f5d55 100644
--- a/src/PepperDash.Essentials.Core/Secrets/SecretsManager.cs
+++ b/src/PepperDash.Essentials.Core/Secrets/SecretsManager.cs
@@ -7,8 +7,14 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// SecretsManager static class
+ ///
public static class SecretsManager
{
+ ///
+ /// Gets the Secrets dictionary
+ ///
public static Dictionary Secrets { get; private set; }
///
diff --git a/src/PepperDash.Essentials.Core/Secrets/SecretsPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Secrets/SecretsPropertiesConfig.cs
index f092d5d3..a5a76074 100644
--- a/src/PepperDash.Essentials.Core/Secrets/SecretsPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Secrets/SecretsPropertiesConfig.cs
@@ -14,8 +14,15 @@ namespace PepperDash.Essentials.Core
///
public class SecretsPropertiesConfig
{
+ ///
+ /// Gets or sets the Provider
+ ///
[JsonProperty("provider")]
public string Provider { get; set; }
+
+ ///
+ /// Gets or sets the Key
+ ///
[JsonProperty("key")]
public string Key { get; set; }
}
diff --git a/src/PepperDash.Essentials.Core/Shades/Shade Interfaces.cs b/src/PepperDash.Essentials.Core/Shades/Shade Interfaces.cs
index 728a5187..2fb5ffd7 100644
--- a/src/PepperDash.Essentials.Core/Shades/Shade Interfaces.cs
+++ b/src/PepperDash.Essentials.Core/Shades/Shade Interfaces.cs
@@ -8,6 +8,9 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShades
{
+ ///
+ /// List of shades controlled by this device
+ ///
List Shades { get; }
}
@@ -16,17 +19,47 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesOpenCloseStop
{
+ ///
+ /// Opens the shade
+ ///
void Open();
+
+ ///
+ /// Closes the shade
+ ///
void Close();
+
+ ///
+ /// Stops the shade
+ ///
void Stop();
}
+ ///
+ /// Requirements for a device that implements Open/Close/Stop shade control with presets
+ ///
public interface IShadesOpenClosePreset : IShadesOpenCloseStop
{
+ ///
+ /// Recalls the preset
+ ///
+ /// preset number to recall
void RecallPreset(uint presetNumber);
+
+ ///
+ /// Saves the preset
+ ///
+ /// preset number to save
void SavePreset(uint presetNumber);
+
+ ///
+ /// Label for the preset button
+ ///
string StopOrPresetButtonLabel { get; }
+ ///
+ /// Event raised when a preset is recalled
+ ///
event EventHandler PresetSaved;
}
@@ -36,7 +69,14 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesRaiseLowerFeedback
{
+ ///
+ /// Feedback to indicate if the shade is lowering
+ ///
BoolFeedback ShadeIsLoweringFeedback { get; }
+
+ ///
+ /// Feedback to indicate if the shade is raising
+ ///
BoolFeedback ShadeIsRaisingFeedback { get; }
}
@@ -45,7 +85,14 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesOpenClosedFeedback: IShadesOpenCloseStop
{
+ ///
+ /// Feedback to indicate if the shade is open
+ ///
BoolFeedback ShadeIsOpenFeedback { get; }
+
+ ///
+ /// Feedback to indicate if the shade is closed
+ ///
BoolFeedback ShadeIsClosedFeedback { get; }
}
@@ -54,8 +101,19 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesStopOrMove
{
+ ///
+ /// Raises the shade or stops it if it's already moving
+ ///
void OpenOrStop();
+
+ ///
+ /// Lowers the shade or stops it if it's already moving
+ ///
void CloseOrStop();
+
+ ///
+ /// Opens, closes, or stops the shade depending on current state
+ ///
void OpenCloseOrStop();
}
@@ -64,6 +122,9 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesStopFeedback : IShadesOpenCloseStop
{
+ ///
+ /// Feedback to indicate if the shade is stopped
+ ///
BoolFeedback IsStoppedFeedback { get; }
}
@@ -72,6 +133,10 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesPosition
{
+ ///
+ /// Gets the current position of the shade
+ ///
+ /// value of the position to set
void SetPosition(ushort value);
}
@@ -80,18 +145,31 @@ namespace PepperDash.Essentials.Core.Shades
///
public interface IShadesFeedback: IShadesPosition, IShadesStopFeedback
{
+ ///
+ /// Feedback to indicate the current position of the shade
+ ///
IntFeedback PositionFeedback { get; }
}
///
- ///
+ /// Feedback for scenes
///
public interface ISceneFeedback
{
+ ///
+ /// Runs the scene
+ ///
void Run();
+
+ ///
+ /// Feedback to indicate if all shades are at the scene position
+ ///
BoolFeedback AllAreAtSceneFeedback { get; }
}
+ ///
+ /// Combines basic shade interfaces for Crestron Basic shades
+ ///
public interface ICrestronBasicShade : IShadesOpenClosedFeedback,
IShadesStopOrMove, IShadesFeedback, IShadesRaiseLowerFeedback
{
diff --git a/src/PepperDash.Essentials.Core/Shades/ShadeBase.cs b/src/PepperDash.Essentials.Core/Shades/ShadeBase.cs
index c44abac6..ce5de98d 100644
--- a/src/PepperDash.Essentials.Core/Shades/ShadeBase.cs
+++ b/src/PepperDash.Essentials.Core/Shades/ShadeBase.cs
@@ -9,10 +9,17 @@ using PepperDash.Essentials.Core.CrestronIO;
namespace PepperDash.Essentials.Core.Shades
{
-
+ ///
+ /// Base class for shades
+ ///
[Obsolete("Please use PepperDash.Essentials.Devices.Common, this will be removed in 2.1")]
public abstract class ShadeBase : EssentialsDevice, IShadesOpenCloseStop
{
+ ///
+ /// Constructor
+ ///
+ /// key of the shade device
+ /// name of the shade device
public ShadeBase(string key, string name)
: base(key, name)
{
@@ -21,8 +28,19 @@ namespace PepperDash.Essentials.Core.Shades
#region iShadesOpenClose Members
+ ///
+ /// Opens the shade
+ ///
public abstract void Open();
+
+ ///
+ /// Stops the shade
+ ///
public abstract void Stop();
+
+ ///
+ /// Closes the shade
+ ///
public abstract void Close();
#endregion
diff --git a/src/PepperDash.Essentials.Core/SigHelper.cs b/src/PepperDash.Essentials.Core/SigHelper.cs
index fb14df78..df1ad605 100644
--- a/src/PepperDash.Essentials.Core/SigHelper.cs
+++ b/src/PepperDash.Essentials.Core/SigHelper.cs
@@ -17,7 +17,8 @@ namespace PepperDash.Essentials.Core
///
/// Runs action when Sig is pressed
///
- ///
+ /// signal pressed
+ /// action to run
public static void Pressed(Sig sig, Action act) { if (sig.BoolValue) act(); }
///
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDPad.cs b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDPad.cs
index 436f00b4..605b2344 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDPad.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDPad.cs
@@ -13,27 +13,36 @@ namespace PepperDash.Essentials.Core.SmartObjects
///
public class SmartObjectDPad : SmartObjectHelperBase
{
- ///
- /// Gets or sets the SigUp
- ///
+ ///
+ /// Gets or sets the SigUp
+ ///
public BoolOutputSig SigUp { get { return GetBoolOutputNamed("Up"); } }
- ///
- /// Gets or sets the SigDown
- ///
+
+ ///
+ /// Gets or sets the SigDown
+ ///
public BoolOutputSig SigDown { get { return GetBoolOutputNamed("Down"); } }
- ///
- /// Gets or sets the SigLeft
- ///
+
+ ///
+ /// Gets or sets the SigLeft
+ ///
public BoolOutputSig SigLeft { get { return GetBoolOutputNamed("Left"); } }
- ///
- /// Gets or sets the SigRight
- ///
+
+ ///
+ /// Gets or sets the SigRight
+ ///
public BoolOutputSig SigRight { get { return GetBoolOutputNamed("Right"); } }
- ///
- /// Gets or sets the SigCenter
- ///
+
+ ///
+ /// Gets or sets the SigCenter
+ ///
public BoolOutputSig SigCenter { get { return GetBoolOutputNamed("Center"); } }
+ ///
+ /// Constructor
+ ///
+ /// smart object
+ /// use user object handler if true
public SmartObjectDPad(SmartObject so, bool useUserObjectHandler)
: base(so, useUserObjectHandler)
{
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDynamicList.cs b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDynamicList.cs
index 2080a07e..fdf7dc04 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDynamicList.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectDynamicList.cs
@@ -17,14 +17,24 @@ namespace PepperDash.Essentials.Core.SmartObjects
///
public class SmartObjectDynamicList : SmartObjectHelperBase
{
+ ///
+ /// Sig name for Scroll To Item
+ ///
public const string SigNameScrollToItem = "Scroll To Item";
+
+ ///
+ /// Sig name for Set Number of Items
+ ///
public const string SigNameSetNumberOfItems = "Set Number of Items";
- ///
- /// Gets or sets the NameSigOffset
- ///
+ ///
+ /// Gets or sets the NameSigOffset
+ ///
public uint NameSigOffset { get; private set; }
+ ///
+ /// Gets or sets the Count
+ ///
public ushort Count
{
get
@@ -34,9 +44,9 @@ namespace PepperDash.Essentials.Core.SmartObjects
set { SmartObject.UShortInput[SigNameSetNumberOfItems].UShortValue = value; }
}
- ///
- /// Gets or sets the MaxCount
- ///
+ ///
+ /// Gets or sets the MaxCount
+ ///
public int MaxCount { get; private set; }
///
@@ -62,9 +72,9 @@ namespace PepperDash.Essentials.Core.SmartObjects
}
}
- ///
- /// SetItem method
- ///
+ ///
+ /// SetItem method
+ ///
public void SetItem(uint index, string mainText, string iconName, Action action)
{
SetItemMainText(index, mainText);
@@ -83,9 +93,9 @@ namespace PepperDash.Essentials.Core.SmartObjects
//}
}
- ///
- /// SetItemMainText method
- ///
+ ///
+ /// SetItemMainText method
+ ///
public void SetItemMainText(uint index, string text)
{
if (index > MaxCount) return;
@@ -93,27 +103,27 @@ namespace PepperDash.Essentials.Core.SmartObjects
(SmartObject.Device as BasicTriList).StringInput[NameSigOffset + index].StringValue = text;
}
- ///
- /// SetItemIcon method
- ///
+ ///
+ /// SetItemIcon method
+ ///
public void SetItemIcon(uint index, string iconName)
{
if (index > MaxCount) return;
SmartObject.StringInput[string.Format("Set Item {0} Icon Serial", index)].StringValue = iconName;
}
- ///
- /// SetItemButtonAction method
- ///
+ ///
+ /// SetItemButtonAction method
+ ///
public void SetItemButtonAction(uint index, Action action)
{
if (index > MaxCount) return;
SmartObject.BooleanOutput[string.Format("Item {0} Pressed", index)].UserObject = action;
}
- ///
- /// SetFeedback method
- ///
+ ///
+ /// SetFeedback method
+ ///
public void SetFeedback(uint index, bool interlocked)
{
if (interlocked)
@@ -121,9 +131,9 @@ namespace PepperDash.Essentials.Core.SmartObjects
SmartObject.BooleanInput[string.Format("Item {0} Selected", index)].BoolValue = true;
}
- ///
- /// ClearFeedbacks method
- ///
+ ///
+ /// ClearFeedbacks method
+ ///
public void ClearFeedbacks()
{
for(int i = 1; i<= Count; i++)
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectHelperBase.cs b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectHelperBase.cs
index 031259b0..a86687aa 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectHelperBase.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectHelperBase.cs
@@ -11,21 +11,26 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.SmartObjects
{
- ///
- /// Represents a SmartObjectHelperBase
- ///
+ ///
+ /// Represents a SmartObjectHelperBase
+ ///
public class SmartObjectHelperBase
{
- ///
- /// Gets or sets the SmartObject
- ///
+ ///
+ /// Gets or sets the SmartObject
+ ///
public SmartObject SmartObject { get; private set; }
- ///
- /// Gets or sets the Validated
- ///
+ ///
+ /// Gets or sets the Validated
+ ///
public bool Validated { get; protected set; }
+ ///
+ /// Constructor
+ ///
+ /// smart object
+ /// use the user object hadnler if true
public SmartObjectHelperBase(SmartObject so, bool useUserObjectHandler)
{
SmartObject = so;
@@ -37,6 +42,9 @@ namespace PepperDash.Essentials.Core.SmartObjects
}
}
+ ///
+ /// Destructor
+ ///
~SmartObjectHelperBase()
{
SmartObject.SigChange -= this.SmartObject_SigChange;
@@ -47,9 +55,6 @@ namespace PepperDash.Essentials.Core.SmartObjects
///
///
///
- ///
- /// GetBoolOutputNamed method
- ///
public BoolOutputSig GetBoolOutputNamed(string name)
{
if (SmartObject.BooleanOutput.Contains(name))
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectNumeric.cs b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectNumeric.cs
index 493fd213..2b6e06b8 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectNumeric.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SmartObjectNumeric.cs
@@ -8,52 +8,90 @@ using Crestron.SimplSharpPro.DeviceSupport;
namespace PepperDash.Essentials.Core.SmartObjects
{
- ///
- /// Represents a SmartObjectNumeric
- ///
+ ///
+ /// Represents a SmartObjectNumeric
+ ///
public class SmartObjectNumeric : SmartObjectHelperBase
- {
- ///
- /// Gets or sets the Misc1SigName
- ///
- public string Misc1SigName { get; set; }
- ///
- /// Gets or sets the Misc2SigName
- ///
- public string Misc2SigName { get; set; }
+ {
+ ///
+ /// Gets or sets the Misc1SigName
+ ///
+ public string Misc1SigName { get; set; }
- public BoolOutputSig Digit1 { get { return GetBoolOutputNamed("1"); } }
- public BoolOutputSig Digit2 { get { return GetBoolOutputNamed("2"); } }
- public BoolOutputSig Digit3 { get { return GetBoolOutputNamed("3"); } }
- public BoolOutputSig Digit4 { get { return GetBoolOutputNamed("4"); } }
- ///
- /// Gets or sets the Digit5
- ///
- public BoolOutputSig Digit5 { get { return GetBoolOutputNamed("5"); } }
- public BoolOutputSig Digit6 { get { return GetBoolOutputNamed("6"); } }
- public BoolOutputSig Digit7 { get { return GetBoolOutputNamed("7"); } }
- public BoolOutputSig Digit8 { get { return GetBoolOutputNamed("8"); } }
- ///
- /// Gets or sets the Digit9
- ///
- public BoolOutputSig Digit9 { get { return GetBoolOutputNamed("9"); } }
- ///
- /// Gets or sets the Digit0
- ///
- public BoolOutputSig Digit0 { get { return GetBoolOutputNamed("0"); } }
- ///
- /// Gets or sets the Misc1
- ///
- public BoolOutputSig Misc1 { get { return GetBoolOutputNamed(Misc1SigName); } }
- ///
- /// Gets or sets the Misc2
- ///
- public BoolOutputSig Misc2 { get { return GetBoolOutputNamed(Misc2SigName); } }
+ ///
+ /// Gets or sets the Misc2SigName
+ ///
+ public string Misc2SigName { get; set; }
- public SmartObjectNumeric(SmartObject so, bool useUserObjectHandler) : base(so, useUserObjectHandler)
- {
- Misc1SigName = "Misc_1";
- Misc2SigName = "Misc_2";
- }
- }
+ ///
+ /// Gets or sets the Digit1
+ ///
+ public BoolOutputSig Digit1 { get { return GetBoolOutputNamed("1"); } }
+
+ ///
+ /// Gets or sets the Digit2
+ ///
+ public BoolOutputSig Digit2 { get { return GetBoolOutputNamed("2"); } }
+
+ ///
+ /// Gets or sets the Digit3
+ ///
+ public BoolOutputSig Digit3 { get { return GetBoolOutputNamed("3"); } }
+
+ ///
+ /// Gets or sets the Digit4
+ ///
+ public BoolOutputSig Digit4 { get { return GetBoolOutputNamed("4"); } }
+
+ ///
+ /// Gets or sets the Digit5
+ ///
+ public BoolOutputSig Digit5 { get { return GetBoolOutputNamed("5"); } }
+
+ ///
+ /// Gets or sets the Digit6
+ ///
+ public BoolOutputSig Digit6 { get { return GetBoolOutputNamed("6"); } }
+
+ ///
+ /// Gets or sets the Digit7
+ ///
+ public BoolOutputSig Digit7 { get { return GetBoolOutputNamed("7"); } }
+
+ ///
+ /// Gets or sets the Digit8
+ ///
+ public BoolOutputSig Digit8 { get { return GetBoolOutputNamed("8"); } }
+
+ ///
+ /// Gets or sets the Digit9
+ ///
+ public BoolOutputSig Digit9 { get { return GetBoolOutputNamed("9"); } }
+
+ ///
+ /// Gets or sets the Digit0
+ ///
+ public BoolOutputSig Digit0 { get { return GetBoolOutputNamed("0"); } }
+
+ ///
+ /// Gets or sets the Misc1
+ ///
+ public BoolOutputSig Misc1 { get { return GetBoolOutputNamed(Misc1SigName); } }
+
+ ///
+ /// Gets or sets the Misc2
+ ///
+ public BoolOutputSig Misc2 { get { return GetBoolOutputNamed(Misc2SigName); } }
+
+ ///
+ /// Constructor
+ ///
+ /// smart object
+ /// use user handler if true
+ public SmartObjectNumeric(SmartObject so, bool useUserObjectHandler) : base(so, useUserObjectHandler)
+ {
+ Misc1SigName = "Misc_1";
+ Misc2SigName = "Misc_2";
+ }
+ }
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceList.cs b/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceList.cs
index e82c3a63..4ed42d49 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceList.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceList.cs
@@ -30,35 +30,60 @@ namespace PepperDash.Essentials.Core
///
public class SubpageReferenceList
{
-
+ ///
+ /// Gets or sets the Count
+ ///
public ushort Count
{
get { return SetNumberOfItemsSig.UShortValue; }
set { SetNumberOfItemsSig.UShortValue = value; }
}
+
+ ///
+ /// Gets or sets the MaxDefinedItems
+ ///
public ushort MaxDefinedItems { get; private set; }
///
/// Gets or sets the ScrollToItemSig
///
public UShortInputSig ScrollToItemSig { get; private set; }
+
UShortInputSig SetNumberOfItemsSig;
+
///
/// Gets or sets the BoolIncrement
///
public uint BoolIncrement { get; protected set; }
+
///
/// Gets or sets the UShortIncrement
///
public uint UShortIncrement { get; protected set; }
+
///
/// Gets or sets the StringIncrement
///
public uint StringIncrement { get; protected set; }
+ ///
+ /// Gets or sets the SRL
+ ///
protected readonly SmartObject SRL;
+
+ ///
+ /// Gets the list of items in the SRL
+ ///
protected readonly List Items = new List();
+ ///
+ /// Constructor
+ ///
+ /// trilist for the smart object
+ /// smart object ID
+ ///
+ ///
+ ///
public SubpageReferenceList(BasicTriListWithSmartObject triList, uint smartObjectId,
uint boolIncrement, uint ushortIncrement, uint stringIncrement)
{
diff --git a/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceListItem.cs b/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceListItem.cs
index 4e979a69..e29d0894 100644
--- a/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceListItem.cs
+++ b/src/PepperDash.Essentials.Core/SmartObjects/SubpageReferencList/SubpageReferenceListItem.cs
@@ -17,8 +17,17 @@ namespace PepperDash.Essentials.Core
/// The list that this lives in
///
protected SubpageReferenceList Owner;
+
+ ///
+ /// The index of this item
+ ///
protected uint Index;
+ ///
+ /// Constructor
+ ///
+ /// index of the item
+ /// owner of the item
public SubpageReferenceListItem(uint index, SubpageReferenceList owner)
{
Index = index;
diff --git a/src/PepperDash.Essentials.Core/Timers/CountdownTimer.cs b/src/PepperDash.Essentials.Core/Timers/CountdownTimer.cs
index c00eb014..24ff6a1a 100644
--- a/src/PepperDash.Essentials.Core/Timers/CountdownTimer.cs
+++ b/src/PepperDash.Essentials.Core/Timers/CountdownTimer.cs
@@ -14,8 +14,19 @@ namespace PepperDash.Essentials.Core
///
public class SecondsCountdownTimer: IKeyed
{
+ ///
+ /// Event fired when the timer starts
+ ///
public event EventHandler HasStarted;
+
+ ///
+ /// Event fired when the timer finishes
+ ///
public event EventHandler HasFinished;
+
+ ///
+ /// Event fired when the timer is cancelled
+ ///
public event EventHandler WasCancelled;
///
@@ -33,6 +44,7 @@ namespace PepperDash.Essentials.Core
/// Gets or sets the PercentFeedback
///
public IntFeedback PercentFeedback { get; private set; }
+
///
/// Gets or sets the TimeRemainingFeedback
///
diff --git a/src/PepperDash.Essentials.Core/Timers/RetriggerableTimer.cs b/src/PepperDash.Essentials.Core/Timers/RetriggerableTimer.cs
index ee734489..f06ba3cd 100644
--- a/src/PepperDash.Essentials.Core/Timers/RetriggerableTimer.cs
+++ b/src/PepperDash.Essentials.Core/Timers/RetriggerableTimer.cs
@@ -27,6 +27,11 @@ namespace PepperDash.Essentials.Core.Timers
private CTimer _timer;
private long _timerIntervalMs;
+ ///
+ /// Constructor
+ ///
+ /// key of the timer
+ /// configuration for the timer
public RetriggerableTimer(string key, DeviceConfig config)
: base(key, config.Name)
{
@@ -98,7 +103,7 @@ namespace PepperDash.Essentials.Core.Timers
///
/// Executes the Elapsed action from confing when the timer elapses
///
- ///
+ /// action to be executed
private void TimerElapsedCallback(object action)
{
Debug.LogMessage(LogEventLevel.Debug, this, "Timer Elapsed. Executing Action");
@@ -144,15 +149,27 @@ namespace PepperDash.Essentials.Core.Timers
///
public class RetriggerableTimerPropertiesConfig
{
+ ///
+ /// Start the timer on device activation
+ ///
[JsonProperty("startTimerOnActivation")]
public bool StartTimerOnActivation { get; set; }
+ ///
+ /// Timer interval in milliseconds
+ ///
[JsonProperty("timerIntervalMs")]
public long TimerIntervalMs { get; set; }
+ ///
+ /// Events and their associated actions
+ ///
[JsonProperty("events")]
public Dictionary Events { get; set; }
+ ///
+ /// Constructor
+ ///
public RetriggerableTimerPropertiesConfig()
{
Events = new Dictionary();
@@ -164,7 +181,14 @@ namespace PepperDash.Essentials.Core.Timers
///
public enum eRetriggerableTimerEvents
{
+ ///
+ /// Elapsed event
+ ///
Elapsed,
+
+ ///
+ /// Stopped event
+ ///
Stopped,
}
@@ -173,11 +197,19 @@ namespace PepperDash.Essentials.Core.Timers
///
public class RetriggerableTimerFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor
+ ///
public RetriggerableTimerFactory()
{
TypeNames = new List() { "retriggerabletimer" };
}
+ ///
+ /// BuildDevice method
+ ///
+ /// device config
+ ///
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new RetriggerableTimer Device");
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/CrestronTouchpanelPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Touchpanels/CrestronTouchpanelPropertiesConfig.cs
index 1358b1b9..2cc9ab9a 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/CrestronTouchpanelPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/CrestronTouchpanelPropertiesConfig.cs
@@ -7,72 +7,93 @@ namespace PepperDash.Essentials.Core
///
public class CrestronTouchpanelPropertiesConfig
{
- [JsonProperty("control")]
///
/// Gets or sets the ControlProperties
///
+ [JsonProperty("control")]
public EssentialsControlPropertiesConfig ControlProperties { get; set; }
- [JsonProperty("ipId", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the IpId
///
+ [JsonProperty("ipId", NullValueHandling = NullValueHandling.Ignore)]
public string IpId { get; set; }
- [JsonProperty("defaultRoomKey", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the DefaultRoomKey
///
+ [JsonProperty("defaultRoomKey", NullValueHandling = NullValueHandling.Ignore)]
public string DefaultRoomKey { get; set; }
- [JsonProperty("roomListKey", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the RoomListKey
///
+ [JsonProperty("roomListKey", NullValueHandling = NullValueHandling.Ignore)]
public string RoomListKey { get; set; }
- [JsonProperty("sgdFile", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the SgdFile
///
+ [JsonProperty("sgdFile", NullValueHandling = NullValueHandling.Ignore)]
public string SgdFile { get; set; }
- [JsonProperty("projectName", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the ProjectName
///
+ [JsonProperty("projectName", NullValueHandling = NullValueHandling.Ignore)]
public string ProjectName { get; set; }
+ ///
+ /// Gets or sets the ShowVolumeGauge
+ ///
[JsonProperty("showVolumeGauge", NullValueHandling = NullValueHandling.Ignore)]
public bool? ShowVolumeGauge { get; set; }
+ ///
+ /// Gets or sets the UsesSplashPage
+ ///
[JsonProperty("usesSplashPage", NullValueHandling = NullValueHandling.Ignore)]
public bool? UsesSplashPage { get; set; }
+ ///
+ /// Gets or sets the ShowDate
+ ///
[JsonProperty("showDate", NullValueHandling = NullValueHandling.Ignore)]
public bool? ShowDate { get; set; }
+ ///
+ /// Gets or sets the ShowTime
+ ///
[JsonProperty("showTime", NullValueHandling = NullValueHandling.Ignore)]
public bool? ShowTime { get; set; }
- [JsonProperty("setup", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the Setup
///
+ [JsonProperty("setup", NullValueHandling = NullValueHandling.Ignore)]
public UiSetupPropertiesConfig Setup { get; set; }
- [JsonProperty("headerStyle", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the HeaderStyle
///
+ [JsonProperty("headerStyle", NullValueHandling = NullValueHandling.Ignore)]
public string HeaderStyle { get; set; }
+ ///
+ /// Gets or sets the IncludeInFusionRoomHealth
+ ///
[JsonProperty("includeInFusionRoomHealth", NullValueHandling = NullValueHandling.Ignore)]
public bool? IncludeInFusionRoomHealth { get; set; }
+ ///
+ /// Gets or sets the ScreenSaverTimeoutMin
+ ///
[JsonProperty("screenSaverTimeoutMin", NullValueHandling = NullValueHandling.Ignore)]
public uint? ScreenSaverTimeoutMin { get; set; }
+ ///
+ /// Gets or sets the ScreenSaverMovePositionIntervalMs
+ ///
[JsonProperty("screenSaverMovePositionIntervalMs", NullValueHandling = NullValueHandling.Ignore)]
public uint? ScreenSaverMovePositionIntervalMs { get; set; }
@@ -84,8 +105,15 @@ namespace PepperDash.Essentials.Core
[JsonProperty("sourcesOverflowCount", NullValueHandling = NullValueHandling.Ignore)]
public int? SourcesOverflowCount { get; set; }
+ ///
+ /// Constructor
+ ///
public CrestronTouchpanelPropertiesConfig() : this(false) { }
+ ///
+ /// Constructor
+ ///
+ /// set values to default if true
public CrestronTouchpanelPropertiesConfig(bool setDefaultValues = false)
{
if(!setDefaultValues) { return; }
@@ -112,6 +140,9 @@ namespace PepperDash.Essentials.Core
///
public class UiSetupPropertiesConfig
{
+ ///
+ /// Gets or sets the IsVisible
+ ///
[JsonProperty("isVisible", NullValueHandling = NullValueHandling.Ignore)]
public bool IsVisible { get; set; }
}
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/Interfaces.cs b/src/PepperDash.Essentials.Core/Touchpanels/Interfaces.cs
index 6f59aba1..0e74ed93 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/Interfaces.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/Interfaces.cs
@@ -12,6 +12,9 @@ namespace PepperDash.Essentials.Core
///
public interface IHasBasicTriListWithSmartObject
{
+ ///
+ /// Gets the Panel
+ ///
BasicTriListWithSmartObject Panel { get; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/Keyboards/HabaneroKeyboardController.cs b/src/PepperDash.Essentials.Core/Touchpanels/Keyboards/HabaneroKeyboardController.cs
index b45ea649..89346ae7 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/Keyboards/HabaneroKeyboardController.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/Keyboards/HabaneroKeyboardController.cs
@@ -27,8 +27,14 @@ namespace PepperDash.Essentials.Core.Touchpanels.Keyboards
///
public StringFeedback OutputFeedback { get; private set; }
+ ///
+ /// Gets or sets the IsVisible
+ ///
public bool IsVisible { get; private set; }
+ ///
+ /// Gets or sets the DotComButtonString
+ ///
public string DotComButtonString { get; set; }
///
@@ -441,21 +447,33 @@ namespace PepperDash.Essentials.Core.Touchpanels.Keyboards
}
///
- ///
+ /// Event args for keyboard key presses
///
public class KeyboardControllerPressEventArgs : EventArgs
{
+ ///
+ /// Gets or sets the Text
+ ///
public string Text { get; private set; }
+
///
/// Gets or sets the SpecialKey
///
public KeyboardSpecialKey SpecialKey { get; private set; }
+ ///
+ /// Constructor
+ ///
+ ///
public KeyboardControllerPressEventArgs(string text)
{
Text = text;
}
+ ///
+ /// Constructor
+ ///
+ /// special keyboard key
public KeyboardControllerPressEventArgs(KeyboardSpecialKey key)
{
SpecialKey = key;
@@ -467,6 +485,29 @@ namespace PepperDash.Essentials.Core.Touchpanels.Keyboards
///
public enum KeyboardSpecialKey
{
- None = 0, Backspace, Clear, GoButton, SecondaryButton
+ ///
+ /// None
+ ///
+ None = 0,
+
+ ///
+ /// Backspace
+ ///
+ Backspace,
+
+ ///
+ /// Clear
+ ///
+ Clear,
+
+ ///
+ /// GoButton
+ ///
+ GoButton,
+
+ ///
+ /// SecondaryButton
+ ///
+ SecondaryButton
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/ModalDialog.cs b/src/PepperDash.Essentials.Core/Touchpanels/ModalDialog.cs
index e094aebb..e3545cd0 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/ModalDialog.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/ModalDialog.cs
@@ -113,8 +113,13 @@ namespace PepperDash.Essentials.Core
/// Shows the dialog
///
/// Number of buttons to show. 0, 1, 2
- /// The amount of time to show the dialog. Use 0 for no timeout.
- /// If the progress bar gauge needs to count down instead of up
+ /// Title text
+ /// Icon name
+ /// Message text
+ /// Button 1 text
+ /// Button 2 text
+ /// True to show the gauge
+ /// True to show the cancel "X" button
/// The action to run when the dialog is dismissed. Parameter will be 1 or 2 if button pressed, or 0 if dialog times out
/// True when modal is created.
public bool PresentModalDialog(uint numberOfButtons, string title, string iconName,
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/Mpc3Touchpanel.cs b/src/PepperDash.Essentials.Core/Touchpanels/Mpc3Touchpanel.cs
index fa20ca84..92764f22 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/Mpc3Touchpanel.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/Mpc3Touchpanel.cs
@@ -19,6 +19,13 @@ namespace PepperDash.Essentials.Core.Touchpanels
readonly Dictionary _buttons;
+ ///
+ /// Constructor
+ ///
+ /// device key
+ /// device name
+ /// control system processor
+ /// dictionary of keypad buttons
public Mpc3TouchpanelController(string key, string name, CrestronControlSystem processor, Dictionary buttons)
: base(key, name)
{
@@ -348,12 +355,21 @@ namespace PepperDash.Essentials.Core.Touchpanels
///
public class KeypadButton
{
+ ///
+ /// Gets or sets the EventTypes
+ ///
[JsonProperty("eventTypes")]
public Dictionary EventTypes { get; set; }
+ ///
+ /// Gets or sets the Feedback
+ ///
[JsonProperty("feedback")]
public KeypadButtonFeedback Feedback { get; set; }
+ ///
+ /// Constructor
+ ///
public KeypadButton()
{
EventTypes = new Dictionary();
@@ -361,17 +377,20 @@ namespace PepperDash.Essentials.Core.Touchpanels
}
}
- ///
- /// Represents a KeypadButtonFeedback
- ///
+ ///
+ /// Represents a KeypadButtonFeedback
+ ///
public class KeypadButtonFeedback
{
+ ///
+ /// Gets or sets the DeviceKey
+ ///
[JsonProperty("deviceKey")]
- ///
- /// Gets or sets the DeviceKey
- ///
public string DeviceKey { get; set; }
+ ///
+ /// Gets or sets the FeedbackName
+ ///
[JsonProperty("feedbackName")]
public string FeedbackName { get; set; }
}
diff --git a/src/PepperDash.Essentials.Core/Touchpanels/TriListExtensions.cs b/src/PepperDash.Essentials.Core/Touchpanels/TriListExtensions.cs
index 232dff33..2d026dbb 100644
--- a/src/PepperDash.Essentials.Core/Touchpanels/TriListExtensions.cs
+++ b/src/PepperDash.Essentials.Core/Touchpanels/TriListExtensions.cs
@@ -44,6 +44,13 @@ namespace PepperDash.Essentials.Core
return tl.BooleanOutput[sigNum].SetBoolSigAction(a);
}
+ ///
+ /// Attaches a void Action to a TriList's output sig's UserObject, to be run on press
+ ///
+ /// trilist
+ /// number of the signal
+ /// action to run when the signal is true (pressed)
+ ///
public static BoolOutputSig SetSigTrueAction(this BasicTriList tl, uint sigNum, Action a)
{
return tl.BooleanOutput[sigNum].SetBoolSigAction(b => { if(b) a(); });
@@ -53,9 +60,6 @@ namespace PepperDash.Essentials.Core
/// Attaches a void Action to a TriList's output sig's UserObject, to be run on release
///
/// The sig
- ///
- /// SetSigFalseAction method
- ///
public static BoolOutputSig SetSigFalseAction(this BasicTriList tl, uint sigNum, Action a)
{
return tl.BooleanOutput[sigNum].SetBoolSigAction(b => { if (!b) a(); });
@@ -143,43 +147,35 @@ namespace PepperDash.Essentials.Core
}
///
- ///
- ///
+ /// SetUShortSigAction method
+ ///
///
///
/// The Sig
- ///
- /// SetUShortSigAction method
- ///
- public static UShortOutputSig SetUShortSigAction(this UShortOutputSig sig, Action a)
+ public static UShortOutputSig SetUShortSigAction(this UShortOutputSig sig, Action a)
{
sig.UserObject = a;
return sig;
}
+
///
- ///
+ /// SetUShortSigAction method
///
///
///
///
///
- ///
- /// SetUShortSigAction method
- ///
public static UShortOutputSig SetUShortSigAction(this BasicTriList tl, uint sigNum, Action a)
{
return tl.UShortOutput[sigNum].SetUShortSigAction(a);
}
///
- ///
+ /// SetStringSigAction method
///
///
///
///
- ///
- /// SetStringSigAction method
- ///
public static StringOutputSig SetStringSigAction(this StringOutputSig sig, Action a)
{
sig.UserObject = a;
@@ -187,50 +183,50 @@ namespace PepperDash.Essentials.Core
}
///
- ///
+ /// SetStringSigAction method
///
///
///
///
///
- ///
- /// SetStringSigAction method
- ///
public static StringOutputSig SetStringSigAction(this BasicTriList tl, uint sigNum, Action a)
{
return tl.StringOutput[sigNum].SetStringSigAction(a);
}
///
- ///
+ /// ClearSigAction method
///
///
///
- ///
- /// ClearSigAction method
- ///
public static Sig ClearSigAction(this Sig sig)
{
sig.UserObject = null;
return sig;
}
+ ///
+ /// ClearBoolSigAction method
+ ///
+ /// trilist
+ /// signal number to clear
+ ///
public static BoolOutputSig ClearBoolSigAction(this BasicTriList tl, uint sigNum)
{
return ClearSigAction(tl.BooleanOutput[sigNum]) as BoolOutputSig;
}
- ///
- /// ClearUShortSigAction method
- ///
+ ///
+ /// ClearUShortSigAction method
+ ///
public static UShortOutputSig ClearUShortSigAction(this BasicTriList tl, uint sigNum)
{
return ClearSigAction(tl.UShortOutput[sigNum]) as UShortOutputSig;
}
- ///
- /// ClearStringSigAction method
- ///
+ ///
+ /// ClearStringSigAction method
+ ///
public static StringOutputSig ClearStringSigAction(this BasicTriList tl, uint sigNum)
{
return ClearSigAction(tl.StringOutput[sigNum]) as StringOutputSig;
@@ -270,9 +266,6 @@ namespace PepperDash.Essentials.Core
///
///
///
- ///
- /// PulseBool method
- ///
public static void PulseBool(this BasicTriList tl, uint sigNum)
{
tl.BooleanInput[sigNum].Pulse();
@@ -284,9 +277,6 @@ namespace PepperDash.Essentials.Core
///
///
///
- ///
- /// PulseBool method
- ///
public static void PulseBool(this BasicTriList tl, uint sigNum, int ms)
{
tl.BooleanInput[sigNum].Pulse(ms);
@@ -308,6 +298,13 @@ namespace PepperDash.Essentials.Core
tl.StringInput[sigNum].StringValue = value;
}
+ ///
+ /// Helper method to set the value of a string Sig on TriList with encoding
+ ///
+ /// trilist
+ /// signal number to set
+ /// string value to set
+ /// string encoding to use
public static void SetString(this BasicTriList tl, uint sigNum, string value, eStringEncoding encoding)
{
tl.StringInput[sigNum].StringEncoding = encoding;
@@ -320,9 +317,6 @@ namespace PepperDash.Essentials.Core
///
///
///
- ///
- /// GetBool method
- ///
public static bool GetBool(this BasicTriList tl, uint sigNum)
{
return tl.BooleanOutput[sigNum].BoolValue;
@@ -334,9 +328,6 @@ namespace PepperDash.Essentials.Core
///
///
///
- ///
- /// GetUshort method
- ///
public static ushort GetUshort(this BasicTriList tl, uint sigNum)
{
return tl.UShortOutput[sigNum].UShortValue;
@@ -348,9 +339,6 @@ namespace PepperDash.Essentials.Core
///
///
///
- ///
- /// GetString method
- ///
public static string GetString(this BasicTriList tl, uint sigNum)
{
return tl.StringOutput[sigNum].StringValue;
diff --git a/src/PepperDash.Essentials.Core/TriListBridges/HandlerBridge.cs b/src/PepperDash.Essentials.Core/TriListBridges/HandlerBridge.cs
index 7e887f5b..13676e2d 100644
--- a/src/PepperDash.Essentials.Core/TriListBridges/HandlerBridge.cs
+++ b/src/PepperDash.Essentials.Core/TriListBridges/HandlerBridge.cs
@@ -9,6 +9,9 @@ using Crestron.SimplSharpPro.DeviceSupport;
namespace PepperDash.Essentials.Core
{
+ ///
+ /// Abstract base class for TriList handler bridges
+ ///
public abstract class HandlerBridge
{
///
diff --git a/src/PepperDash.Essentials.Core/UI PageManagers/BlurayPageManager.cs b/src/PepperDash.Essentials.Core/UI PageManagers/BlurayPageManager.cs
index a18d8b6e..d14058bd 100644
--- a/src/PepperDash.Essentials.Core/UI PageManagers/BlurayPageManager.cs
+++ b/src/PepperDash.Essentials.Core/UI PageManagers/BlurayPageManager.cs
@@ -10,6 +10,11 @@ namespace PepperDash.Essentials.Core.PageManagers
{
IDiscPlayerControls Player;
+ ///
+ /// Constructor
+ ///
+ /// player controls object
+ /// trilist object
public DiscPlayerMediumPageManager(IDiscPlayerControls player, BasicTriListWithSmartObject trilist)
: base(player.DisplayUiType)
{
@@ -17,10 +22,10 @@ namespace PepperDash.Essentials.Core.PageManagers
TriList = trilist;
}
- ///
- /// Show method
- ///
- ///
+ ///
+ /// Show method
+ ///
+ ///
public override void Show()
{
uint offset = GetOffsetJoin();
@@ -40,10 +45,10 @@ namespace PepperDash.Essentials.Core.PageManagers
}
}
- ///
- /// Hide method
- ///
- ///
+ ///
+ /// Hide method
+ ///
+ ///
public override void Hide()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = false;
diff --git a/src/PepperDash.Essentials.Core/UI PageManagers/PageManager.cs b/src/PepperDash.Essentials.Core/UI PageManagers/PageManager.cs
index a6f8761f..ed5f0fff 100644
--- a/src/PepperDash.Essentials.Core/UI PageManagers/PageManager.cs
+++ b/src/PepperDash.Essentials.Core/UI PageManagers/PageManager.cs
@@ -10,10 +10,19 @@ namespace PepperDash.Essentials.Core.PageManagers
///
public abstract class PageManager
{
+ ///
+ /// ActiveJoins list
+ ///
protected List ActiveJoins = new List();
+ ///
+ /// Show method
+ ///
public abstract void Show();
+ ///
+ /// Hide method
+ ///
public abstract void Hide();
///
@@ -21,9 +30,6 @@ namespace PepperDash.Essentials.Core.PageManagers
///
/// 1 through 49, as defined in some constants somewhere!
///
- ///
- /// GetOffsetJoin method
- ///
public uint GetOffsetJoin(uint deviceType)
{
return 10000 + (deviceType * 100);
@@ -38,30 +44,40 @@ namespace PepperDash.Essentials.Core.PageManagers
BasicTriList TriList;
uint BackingPageJoin;
+ ///
+ /// Constructor
+ ///
+ /// device
+ /// trilist object
public DefaultPageManager(IUiDisplayInfo device, BasicTriList trilist)
{
TriList = trilist;
BackingPageJoin = GetOffsetJoin(device.DisplayUiType) + 1;
}
+ ///
+ /// Constructor
+ ///
+ /// back page join
+ /// trilist object
public DefaultPageManager(uint join, BasicTriList trilist)
{
TriList = trilist;
BackingPageJoin = join;
}
- ///
- /// Show method
- ///
- ///
+ ///
+ /// Show method
+ ///
+ ///
public override void Show()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = true;
}
- ///
- /// Hide method
- ///
+ ///
+ /// Hide method
+ ///
public override void Hide()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = false;
@@ -73,17 +89,44 @@ namespace PepperDash.Essentials.Core.PageManagers
///
public abstract class MediumLeftSwitchablePageManager : PageManager
{
+ ///
+ /// TriList object
+ ///
protected BasicTriListWithSmartObject TriList;
+
+ ///
+ /// Left subpage join
+ ///
protected uint LeftSubpageJoin;
+
+ ///
+ /// Backing page join
+ ///
protected uint BackingPageJoin;
+
+ ///
+ /// All left subpages
+ ///
protected uint[] AllLeftSubpages;
+
+ ///
+ /// Display UI Type
+ ///
protected uint DisplayUiType;
+ ///
+ /// Constructor
+ ///
+ /// UI type
protected MediumLeftSwitchablePageManager(uint displayUiType)
{
DisplayUiType = displayUiType;
}
+ ///
+ /// Interlock left subpage
+ ///
+ ///
protected void InterlockLeftSubpage(uint join)
{
join = join + GetOffsetJoin();
@@ -92,12 +135,19 @@ namespace PepperDash.Essentials.Core.PageManagers
LeftSubpageJoin = join;
}
+ ///
+ /// Clear left interlock
+ ///
protected void ClearLeftInterlock()
{
foreach (var p in AllLeftSubpages)
TriList.BooleanInput[GetOffsetJoin() + p].BoolValue = false;
}
+ ///
+ /// Get offset join
+ ///
+ ///
protected uint GetOffsetJoin()
{
return GetOffsetJoin(DisplayUiType);
diff --git a/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxThreePanelPageManager.cs b/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxThreePanelPageManager.cs
index 7c78464e..338f47dc 100644
--- a/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxThreePanelPageManager.cs
+++ b/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxThreePanelPageManager.cs
@@ -9,16 +9,19 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.PageManagers
{
- ///
- /// Represents a ThreePanelPlusOnePageManager
- ///
+ ///
+ /// Represents a ThreePanelPlusOnePageManager
+ ///
public class ThreePanelPlusOnePageManager : PageManager
{
+ ///
+ /// The trilist
+ ///
protected BasicTriListWithSmartObject TriList;
- ///
- /// Gets or sets the Position5TabsId
- ///
+ ///
+ /// Gets or sets the Position5TabsId
+ ///
public uint Position5TabsId { get; set; }
///
@@ -32,12 +35,12 @@ namespace PepperDash.Essentials.Core.PageManagers
protected uint[] FixedVisibilityJoins;
///
- ///
+ /// Gets or sets the current visible item in position 5
///
protected uint CurrentVisiblePosition5Item;
///
- ///
+ /// Constructor
///
///
public ThreePanelPlusOnePageManager(BasicTriListWithSmartObject trilist)
@@ -85,10 +88,10 @@ namespace PepperDash.Essentials.Core.PageManagers
(uo as Action)(args.Sig.BoolValue);
}
- ///
- /// Hide method
- ///
- ///
+ ///
+ /// Hide method
+ ///
+ ///
public override void Hide()
{
var fixedSigs = FixedVisibilityJoins.Select(u => TriList.BooleanInput[u]).ToList();
@@ -119,25 +122,27 @@ namespace PepperDash.Essentials.Core.PageManagers
- ///
- /// Represents a SetTopBoxThreePanelPageManager
- ///
+ ///
+ /// Represents a SetTopBoxThreePanelPageManager
+ ///
public class SetTopBoxThreePanelPageManager : ThreePanelPlusOnePageManager
{
ISetTopBoxControls SetTopBox;
DevicePresetsView PresetsView;
- ///
- /// Gets or sets the DpadSmartObjectId
- ///
+ ///
+ /// Gets or sets the DpadSmartObjectId
+ ///
public uint DpadSmartObjectId { get; set; }
- ///
- /// Gets or sets the NumberPadSmartObjectId
- ///
+
+ ///
+ /// Gets or sets the NumberPadSmartObjectId
+ ///
public uint NumberPadSmartObjectId { get; set; }
- ///
- /// Gets or sets the PresetsSmartObjectId
- ///
+
+ ///
+ /// Gets or sets the PresetsSmartObjectId
+ ///
public uint PresetsSmartObjectId { get; set; }
///
@@ -198,10 +203,10 @@ namespace PepperDash.Essentials.Core.PageManagers
}
}
- ///
- /// Show method
- ///
- ///
+ ///
+ /// Show method
+ ///
+ ///
public override void Show()
{
if(PresetsView != null)
@@ -209,10 +214,10 @@ namespace PepperDash.Essentials.Core.PageManagers
base.Show();
}
- ///
- /// Hide method
- ///
- ///
+ ///
+ /// Hide method
+ ///
+ ///
public override void Hide()
{
if (PresetsView != null)
diff --git a/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxTwoPanelPageManager.cs b/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxTwoPanelPageManager.cs
index 73465e57..0e5b520a 100644
--- a/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxTwoPanelPageManager.cs
+++ b/src/PepperDash.Essentials.Core/UI PageManagers/SetTopBoxTwoPanelPageManager.cs
@@ -4,14 +4,19 @@ using PepperDash.Essentials.Core.Presets;
namespace PepperDash.Essentials.Core.PageManagers
{
- ///
- /// Represents a SetTopBoxMediumPageManager
- ///
+ ///
+ /// Represents a SetTopBoxMediumPageManager
+ ///
public class SetTopBoxMediumPageManager : MediumLeftSwitchablePageManager
{
ISetTopBoxControls SetTopBox;
DevicePresetsView PresetsView;
+ ///
+ /// Constructor
+ ///
+ /// set top box controls device
+ /// trilist device
public SetTopBoxMediumPageManager(ISetTopBoxControls stb, BasicTriListWithSmartObject trilist)
: base(stb.DisplayUiType)
{
@@ -21,10 +26,10 @@ namespace PepperDash.Essentials.Core.PageManagers
PresetsView = new DevicePresetsView(trilist, stb.TvPresets);
}
- ///
- /// Show method
- ///
- ///
+ ///
+ /// Show method
+ ///
+ ///
public override void Show()
{
if(PresetsView != null)
@@ -54,10 +59,10 @@ namespace PepperDash.Essentials.Core.PageManagers
}
}
- ///
- /// Hide method
- ///
- ///
+ ///
+ /// Hide method
+ ///
+ ///
public override void Hide()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = false;
diff --git a/src/PepperDash.Essentials.Core/UI PageManagers/SinglePageManager.cs b/src/PepperDash.Essentials.Core/UI PageManagers/SinglePageManager.cs
index 4438e89d..3eb0cf80 100644
--- a/src/PepperDash.Essentials.Core/UI PageManagers/SinglePageManager.cs
+++ b/src/PepperDash.Essentials.Core/UI PageManagers/SinglePageManager.cs
@@ -4,32 +4,37 @@ using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.PageManagers
{
- ///
- /// Represents a SinglePageManager
- ///
+ ///
+ /// Represents a SinglePageManager
+ ///
public class SinglePageManager : PageManager
{
BasicTriList TriList;
uint BackingPageJoin;
+ ///
+ /// Constructor
+ ///
+ /// join for thepage
+ /// trilist
public SinglePageManager(uint pageJoin, BasicTriList trilist)
{
TriList = trilist;
BackingPageJoin = pageJoin;
}
- ///
- /// Show method
- ///
- ///
+ ///
+ /// Show method
+ ///
+ ///
public override void Show()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = true;
}
- ///
- /// Hide method
- ///
+ ///
+ /// Hide method
+ ///
public override void Hide()
{
TriList.BooleanInput[BackingPageJoin].BoolValue = false;
diff --git a/src/PepperDash.Essentials.Core/Utilities/ActionSequence.cs b/src/PepperDash.Essentials.Core/Utilities/ActionSequence.cs
index cc83f171..22c9297c 100644
--- a/src/PepperDash.Essentials.Core/Utilities/ActionSequence.cs
+++ b/src/PepperDash.Essentials.Core/Utilities/ActionSequence.cs
@@ -30,6 +30,11 @@ namespace PepperDash.Essentials.Core.Utilities
private bool _allowActionsToExecute;
+ ///
+ /// Constructor
+ ///
+ ///
+ ///
public ActionSequence(string key, DeviceConfig config)
: base(key, config.Name)
{
@@ -126,9 +131,15 @@ namespace PepperDash.Essentials.Core.Utilities
///
public class ActionSequencePropertiesConfig
{
+ ///
+ /// Gets or sets the ActionSequence
+ ///
[JsonProperty("actionSequence")]
public List ActionSequence { get; set; }
+ ///
+ /// Constructor
+ ///
public ActionSequencePropertiesConfig()
{
ActionSequence = new List();
@@ -140,10 +151,10 @@ namespace PepperDash.Essentials.Core.Utilities
///
public class SequencedDeviceActionWrapper : DeviceActionWrapper
{
- [JsonProperty("delayMs")]
///
/// Gets or sets the DelayMs
///
+ [JsonProperty("delayMs")]
public int DelayMs { get; set; }
}
@@ -152,11 +163,19 @@ namespace PepperDash.Essentials.Core.Utilities
///
public class ActionSequenceFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor
+ ///
public ActionSequenceFactory()
{
TypeNames = new List() { "actionsequence" };
}
+ ///
+ /// BuildDevice method
+ ///
+ /// device config
+ ///
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new ActionSequence Device");
diff --git a/src/PepperDash.Essentials.Core/VideoStatus/VideoStatusOutputs.cs b/src/PepperDash.Essentials.Core/VideoStatus/VideoStatusOutputs.cs
index 9a929234..b5151f79 100644
--- a/src/PepperDash.Essentials.Core/VideoStatus/VideoStatusOutputs.cs
+++ b/src/PepperDash.Essentials.Core/VideoStatus/VideoStatusOutputs.cs
@@ -14,12 +14,34 @@ namespace PepperDash.Essentials.Core
///
public class VideoStatusFuncsWrapper
{
+ ///
+ /// Gets or sets the HasVideoStatusFunc
+ ///
public Func HasVideoStatusFunc { get; set; }
+
+ ///
+ /// Gets or sets the HdcpActiveFeedbackFunc
+ ///
public Func HdcpActiveFeedbackFunc { get; set; }
+
+ ///
+ /// Gets or sets the HdcpStateFeedbackFunc
+ ///
public Func HdcpStateFeedbackFunc { get; set; }
+
+ ///
+ /// Gets or sets the VideoResolutionFeedbackFunc
+ ///
public Func VideoResolutionFeedbackFunc { get; set; }
+
+ ///
+ /// Gets or sets the VideoSyncFeedbackFunc
+ ///
public Func VideoSyncFeedbackFunc { get; set; }
+ ///
+ /// Constructor
+ ///
public VideoStatusFuncsWrapper()
{
HasVideoStatusFunc = () => true;
@@ -30,32 +52,50 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Represents a VideoStatusOutputs
- ///
+ ///
+ /// Represents a VideoStatusOutputs
+ ///
public class VideoStatusOutputs
{
- ///
- /// Gets or sets the HasVideoStatusFeedback
- ///
+ ///
+ /// Gets or sets the HasVideoStatusFeedback
+ ///
public BoolFeedback HasVideoStatusFeedback { get; private set; }
- ///
- /// Gets or sets the HdcpActiveFeedback
- ///
+
+ ///
+ /// Gets or sets the HdcpActiveFeedback
+ ///
public BoolFeedback HdcpActiveFeedback { get; private set; }
+
+ ///
+ /// Gets or sets the HdcpStateFeedback
+ ///
public StringFeedback HdcpStateFeedback { get; private set; }
+
+ ///
+ /// Gets or sets the VideoResolutionFeedback
+ ///
public StringFeedback VideoResolutionFeedback { get; private set; }
+
+ ///
+ /// Gets or sets the VideoSyncFeedback
+ ///
public BoolFeedback VideoSyncFeedback { get; private set; }
- ///
- /// Gets or sets the NoStatus
- ///
+ ///
+ /// Gets or sets the NoStatus
+ ///
public static VideoStatusOutputs NoStatus { get { return _Default; } }
+
static VideoStatusOutputs _Default = new VideoStatusOutputs(new VideoStatusFuncsWrapper
{
HasVideoStatusFunc = () => false
});
+ ///
+ /// Constructor
+ ///
+ ///
public VideoStatusOutputs(VideoStatusFuncsWrapper funcs)
{
HasVideoStatusFeedback = new BoolFeedback("HasVideoStatusFeedback", funcs.HasVideoStatusFunc);
@@ -66,9 +106,9 @@ namespace PepperDash.Essentials.Core
VideoSyncFeedback = new BoolFeedback("VideoSyncFeedback", funcs.VideoSyncFeedbackFunc);
}
- ///
- /// FireAll method
- ///
+ ///
+ /// FireAll method
+ ///
public void FireAll()
{
HasVideoStatusFeedback.FireUpdate();
@@ -78,9 +118,9 @@ namespace PepperDash.Essentials.Core
VideoSyncFeedback.FireUpdate();
}
- ///
- /// ToList method
- ///
+ ///
+ /// ToList method
+ ///
public List ToList()
{
return new List
@@ -94,9 +134,9 @@ namespace PepperDash.Essentials.Core
}
}
- ///
- /// Wraps up the common video statuses exposed on a video input port
- ///
+ // ///
+ // /// Wraps up the common video statuses exposed on a video input port
+ // ///
//public class BasicVideoStatus : IBasicVideoStatus
//{
// public event VideoStatusChangeHandler VideoStatusChange;
diff --git a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiFactory.cs b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiFactory.cs
index 49a7eb80..16abd349 100644
--- a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiFactory.cs
+++ b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiFactory.cs
@@ -10,15 +10,18 @@ namespace PepperDash.Essentials.Core.Web
///
public class EssentialsWebApiFactory : EssentialsDeviceFactory
{
+ ///
+ /// Constructor
+ ///
public EssentialsWebApiFactory()
{
TypeNames = new List { "EssentialsWebApi" };
}
- ///
- /// BuildDevice method
- ///
- ///
+ ///
+ /// BuildDevice method
+ ///
+ ///
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Essentials Web API Server");
diff --git a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiHelpers.cs b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiHelpers.cs
index b9411a35..75f90189 100644
--- a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiHelpers.cs
+++ b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiHelpers.cs
@@ -7,11 +7,14 @@ using PepperDash.Core;
namespace PepperDash.Essentials.Core.Web
{
+ ///
+ /// EssentialsWebApiHelpers class
+ ///
public static class EssentialsWebApiHelpers
{
- ///
- /// GetRequestBody method
- ///
+ ///
+ /// GetRequestBody method
+ ///
public static string GetRequestBody(this HttpCwsRequest request)
{
var bytes = new byte[request.ContentLength];
@@ -21,9 +24,9 @@ namespace PepperDash.Essentials.Core.Web
return Encoding.UTF8.GetString(bytes, 0, bytes.Length);
}
- ///
- /// MapToAssemblyObject method
- ///
+ ///
+ /// MapToAssemblyObject method
+ ///
public static object MapToAssemblyObject(LoadedAssembly assembly)
{
return new
@@ -33,9 +36,9 @@ namespace PepperDash.Essentials.Core.Web
};
}
- ///
- /// MapToDeviceListObject method
- ///
+ ///
+ /// MapToDeviceListObject method
+ ///
public static object MapToDeviceListObject(IKeyed device)
{
return new
@@ -47,9 +50,9 @@ namespace PepperDash.Essentials.Core.Web
};
}
- ///
- /// MapJoinToObject method
- ///
+ ///
+ /// MapJoinToObject method
+ ///
public static object MapJoinToObject(string key, JoinMapBaseAdvanced join)
{
var kp = new KeyValuePair(key, join);
@@ -57,9 +60,9 @@ namespace PepperDash.Essentials.Core.Web
return MapJoinToObject(kp);
}
- ///
- /// MapJoinToObject method
- ///
+ ///
+ /// MapJoinToObject method
+ ///
public static object MapJoinToObject(KeyValuePair join)
{
return new
@@ -69,9 +72,9 @@ namespace PepperDash.Essentials.Core.Web
};
}
- ///
- /// MapJoinDataCompleteToObject method
- ///
+ ///
+ /// MapJoinDataCompleteToObject method
+ ///
public static object MapJoinDataCompleteToObject(KeyValuePair joinData)
{
return new
@@ -85,9 +88,9 @@ namespace PepperDash.Essentials.Core.Web
};
}
- ///
- /// MapDeviceTypeToObject method
- ///
+ ///
+ /// MapDeviceTypeToObject method
+ ///
public static object MapDeviceTypeToObject(string key, DeviceFactoryWrapper device)
{
var kp = new KeyValuePair(key, device);
@@ -95,9 +98,9 @@ namespace PepperDash.Essentials.Core.Web
return MapDeviceTypeToObject(kp);
}
- ///
- /// MapDeviceTypeToObject method
- ///
+ ///
+ /// MapDeviceTypeToObject method
+ ///
public static object MapDeviceTypeToObject(KeyValuePair device)
{
return new
diff --git a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiPropertiesConfig.cs b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiPropertiesConfig.cs
index c20aa07a..9c00fd93 100644
--- a/src/PepperDash.Essentials.Core/Web/EssentialsWebApiPropertiesConfig.cs
+++ b/src/PepperDash.Essentials.Core/Web/EssentialsWebApiPropertiesConfig.cs
@@ -2,15 +2,15 @@
namespace PepperDash.Essentials.Core.Web
{
- ///
- /// Represents a EssentialsWebApiPropertiesConfig
- ///
+ ///
+ /// Represents a EssentialsWebApiPropertiesConfig
+ ///
public class EssentialsWebApiPropertiesConfig
{
+ ///
+ /// Gets or sets the BasePath
+ ///
[JsonProperty("basePath")]
- ///
- /// Gets or sets the BasePath
- ///
public string BasePath { get; set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/AppDebugRequestHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/AppDebugRequestHandler.cs
index ac95525e..3d3302cc 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/AppDebugRequestHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/AppDebugRequestHandler.cs
@@ -80,16 +80,16 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
}
}
- ///
- /// Represents a AppDebug
- ///
+ ///
+ /// Represents a AppDebug
+ ///
public class AppDebug
{
- [JsonProperty("minimumLevel", NullValueHandling = NullValueHandling.Ignore)]
- [JsonConverter(typeof(StringEnumConverter))]
///
/// Gets or sets the MinimumLevel
///
+ [JsonProperty("minimumLevel", NullValueHandling = NullValueHandling.Ignore)]
+ [JsonConverter(typeof(StringEnumConverter))]
public LogEventLevel MinimumLevel { get; set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/DebugSessionRequestHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/DebugSessionRequestHandler.cs
index e7d0c69c..01e38834 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/DebugSessionRequestHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/DebugSessionRequestHandler.cs
@@ -18,6 +18,9 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
///
public class DebugSessionRequestHandler : WebApiBaseRequestHandler
{
+ ///
+ /// Constructor
+ ///
public DebugSessionRequestHandler()
: base(true)
{
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/DoNotLoadConfigOnNextBootRequestHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/DoNotLoadConfigOnNextBootRequestHandler.cs
index 5c17e342..593ce4e7 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/DoNotLoadConfigOnNextBootRequestHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/DoNotLoadConfigOnNextBootRequestHandler.cs
@@ -5,9 +5,9 @@ using PepperDash.Core.Web.RequestHandlers;
namespace PepperDash.Essentials.Core.Web.RequestHandlers
{
- ///
- /// Represents a DoNotLoadConfigOnNextBootRequestHandler
- ///
+ ///
+ /// Represents a DoNotLoadConfigOnNextBootRequestHandler
+ ///
public class DoNotLoadConfigOnNextBootRequestHandler : WebApiBaseRequestHandler
{
///
@@ -79,15 +79,15 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
}
}
- ///
- /// Represents a Data
- ///
+ ///
+ /// Represents a Data
+ ///
public class Data
{
+ ///
+ /// Gets or sets the DoNotLoadConfigOnNextBoot
+ ///
[JsonProperty("doNotLoadConfigOnNextBoot", NullValueHandling = NullValueHandling.Ignore)]
- ///
- /// Gets or sets the DoNotLoadConfigOnNextBoot
- ///
public bool DoNotLoadConfigOnNextBoot { get; set; }
}
}
\ No newline at end of file
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutesHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutesHandler.cs
index cc450e11..bd264a7a 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutesHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutesHandler.cs
@@ -13,11 +13,20 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
private HttpCwsRouteCollection routeCollection;
private string basePath;
+ ///
+ /// Constructor
+ ///
+ ///
+ ///
public GetRoutesHandler(HttpCwsRouteCollection routeCollection, string basePath) {
this.routeCollection = routeCollection;
this.basePath = basePath;
}
+ ///
+ /// Handles GET method requests
+ ///
+ ///
protected override void HandleGet(HttpCwsContext context)
{
var currentIp = CrestronEthernetHelper.GetEthernetParameter(
@@ -49,16 +58,16 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
///
public class RoutesResponseObject
{
- [JsonProperty("url")]
///
/// Gets or sets the Url
///
+ [JsonProperty("url")]
public string Url { set; get; }
- [JsonProperty("routes")]
///
/// Gets or sets the Routes
///
+ [JsonProperty("routes")]
public HttpCwsRouteCollection Routes { get; set; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutingPortsHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutingPortsHandler.cs
index f11e6dd2..8cee7e9e 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutingPortsHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetRoutingPortsHandler.cs
@@ -12,8 +12,15 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
///
public class GetRoutingPortsHandler : WebApiBaseRequestHandler
{
+ ///
+ /// Constructor
+ ///
public GetRoutingPortsHandler() : base(true) { }
+ ///
+ /// Handles the GET request
+ ///
+ ///
protected override void HandleGet(HttpCwsContext context)
{
var routeData = context.Request.RouteData;
@@ -63,17 +70,18 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
}
}
- internal class ReturnValue {
- [JsonProperty("inputPorts", NullValueHandling = NullValueHandling.Ignore)]
+ internal class ReturnValue
+ {
///
/// Gets or sets the InputPorts
///
+ [JsonProperty("inputPorts", NullValueHandling = NullValueHandling.Ignore)]
public List InputPorts { get; set; }
- [JsonProperty("outputPorts", NullValueHandling = NullValueHandling.Ignore)]
///
/// Gets or sets the OutputPorts
///
+ [JsonProperty("outputPorts", NullValueHandling = NullValueHandling.Ignore)]
public List OutputPorts { get; set; }
}
}
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetTieLinesRequestHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetTieLinesRequestHandler.cs
index bc6fb623..f7088cb2 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetTieLinesRequestHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/GetTieLinesRequestHandler.cs
@@ -11,8 +11,15 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
///
public class GetTieLinesRequestHandler : WebApiBaseRequestHandler
{
+ ///
+ /// Constructor
+ ///
public GetTieLinesRequestHandler() : base(true) { }
+ ///
+ /// Handles the GET request
+ ///
+ ///
protected override void HandleGet(HttpCwsContext context)
{
var tieLineString = JsonConvert.SerializeObject(TieLineCollection.Default.Select((tl) => new
diff --git a/src/PepperDash.Essentials.Core/Web/RequestHandlers/SetDeviceStreamDebugRequestHandler.cs b/src/PepperDash.Essentials.Core/Web/RequestHandlers/SetDeviceStreamDebugRequestHandler.cs
index 7c6aea26..dd4f416f 100644
--- a/src/PepperDash.Essentials.Core/Web/RequestHandlers/SetDeviceStreamDebugRequestHandler.cs
+++ b/src/PepperDash.Essentials.Core/Web/RequestHandlers/SetDeviceStreamDebugRequestHandler.cs
@@ -195,26 +195,32 @@ namespace PepperDash.Essentials.Core.Web.RequestHandlers
}
+ ///
+ /// Configuration class for SetDeviceStreamDebugRequestHandler
+ ///
public class SetDeviceStreamDebugConfig
{
- [JsonProperty("deviceKey", NullValueHandling = NullValueHandling.Include)]
///
/// Gets or sets the DeviceKey
///
+ [JsonProperty("deviceKey", NullValueHandling = NullValueHandling.Include)]
public string DeviceKey { get; set; }
- [JsonProperty("setting", NullValueHandling = NullValueHandling.Include)]
///
/// Gets or sets the Setting
///
+ [JsonProperty("setting", NullValueHandling = NullValueHandling.Include)]
public string Setting { get; set; }
- [JsonProperty("timeout")]
///
/// Gets or sets the Timeout
///
+ [JsonProperty("timeout")]
public int Timeout { get; set; }
+ ///
+ /// Constructor
+ ///
public SetDeviceStreamDebugConfig()
{
DeviceKey = null;
diff --git a/src/PepperDash.Essentials/ControlSystem.cs b/src/PepperDash.Essentials/ControlSystem.cs
index 235e627b..ef19c955 100644
--- a/src/PepperDash.Essentials/ControlSystem.cs
+++ b/src/PepperDash.Essentials/ControlSystem.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.IO.Compression;
using System.Linq;
using System.Reflection;
@@ -549,10 +549,7 @@ namespace PepperDash.Essentials
var applicationDirectory = new DirectoryInfo(Global.ApplicationDirectoryPathPrefix);
Debug.LogMessage(LogEventLevel.Information, "Searching: {applicationDirectory:l} for embedded assets - {Destination}", applicationDirectory.FullName, Global.FilePathPrefix);
- var zipFiles = applicationDirectory.GetFiles("*")
- .Where(f => f.Name.StartsWith("assets", StringComparison.OrdinalIgnoreCase) &&
- f.Extension.Equals(".zip", StringComparison.OrdinalIgnoreCase))
- .ToArray();
+ var zipFiles = applicationDirectory.GetFiles("assets*.zip");
if (zipFiles.Length > 1)
{
@@ -600,10 +597,7 @@ namespace PepperDash.Essentials
File.Delete(file.FullName);
}
- var htmlZipFiles = applicationDirectory.GetFiles("*")
- .Where(f => f.Name.StartsWith("htmlassets", StringComparison.OrdinalIgnoreCase) &&
- f.Extension.Equals(".zip", StringComparison.OrdinalIgnoreCase))
- .ToArray();
+ var htmlZipFiles = applicationDirectory.GetFiles("htmlassets*.zip");
if (htmlZipFiles.Length > 1)
{
@@ -664,10 +658,7 @@ namespace PepperDash.Essentials
File.Delete(file.FullName);
}
- var jsonFiles = applicationDirectory.GetFiles("*")
- .Where(f => f.Name.IndexOf("configurationFile", StringComparison.OrdinalIgnoreCase) >= 0 &&
- f.Extension.Equals(".json", StringComparison.OrdinalIgnoreCase))
- .ToArray();
+ var jsonFiles = applicationDirectory.GetFiles("*configurationFile*.json");
if (jsonFiles.Length > 1)
{