mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-01-31 21:34:58 +00:00
Adds new JoinMap for CameraControllerJoinMap
This commit is contained in:
@@ -23,20 +23,56 @@ namespace PepperDash.Essentials.Bridges
|
||||
public uint PresetSaveOffset { get; set; }
|
||||
public uint NumberOfPresets { get; set; }
|
||||
|
||||
public enum eCameraControllerJoinMapKey
|
||||
{
|
||||
IsOnline,
|
||||
PowerOn,
|
||||
PowerOff,
|
||||
TiltUp,
|
||||
TiltDown,
|
||||
PanLeft,
|
||||
PanRight,
|
||||
ZoomIn,
|
||||
ZoomOut,
|
||||
PresetRecallStart,
|
||||
PresetSaveStart,
|
||||
PresetLabelStart,
|
||||
NumberOfPresets
|
||||
}
|
||||
|
||||
public CameraControllerJoinMap()
|
||||
{
|
||||
Joins = new Dictionary<string, JoinMetadata>();
|
||||
|
||||
Joins.Add("isOnline", new JoinMetadata()
|
||||
{ JoinNumber = 9, Label = "IsOnline", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add("powerOn", new JoinMetadata()
|
||||
{ JoinNumber = 7, Label = "PowerOn", JoinCapabilities = eJoinCapabilities.Read | eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add("powerOff", new JoinMetadata()
|
||||
{ JoinNumber = 8, Label = "PowerOff", JoinCapabilities = eJoinCapabilities.Read | eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add("up", new JoinMetadata()
|
||||
{ JoinNumber = 1, Label = "TiltUp", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.IsOnline.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 9, Label = "Is Online", JoinCapabilities = eJoinCapabilities.Read, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.PowerOn.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 7, Label = "Power On", JoinCapabilities = eJoinCapabilities.Read | eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.PowerOff.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 8, Label = "Power Off", JoinCapabilities = eJoinCapabilities.Read | eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.TiltUp.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 1, Label = "Tilt Up", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.TiltDown.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 2, Label = "TiltDown", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.PanLeft.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 3, Label = "Pan Left", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.PanRight.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 4, Label = "Pan Right", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.ZoomIn.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 5, Label = "Zoom In", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.ZoomOut.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 6, Label = "Zoom Out", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||
|
||||
Joins.Add(eCameraControllerJoinMapKey.PresetRecallStart.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 11, Label = "Preset Recall Start", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 20, JoinType = eJoinType.Digital });
|
||||
Joins.Add(eCameraControllerJoinMapKey.PresetLabelStart.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 11, Label = "Preset Label Start", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 20, JoinType = eJoinType.Serial });
|
||||
|
||||
Joins.Add(eCameraControllerJoinMapKey.PresetSaveStart.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 31, Label = "Preset Save Start", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 20, JoinType = eJoinType.Digital });
|
||||
|
||||
Joins.Add(eCameraControllerJoinMapKey.NumberOfPresets.ToString(), new JoinMetadata()
|
||||
{ JoinNumber = 5, Label = "Number of Presets", JoinCapabilities = eJoinCapabilities.Write, JoinSpan = 1, JoinType = eJoinType.Analog });
|
||||
|
||||
// Digital
|
||||
IsOnline = 9;
|
||||
|
||||
@@ -6,6 +6,8 @@ using Crestron.SimplSharp;
|
||||
|
||||
using PepperDash.Essentials.Core.Config;
|
||||
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace PepperDash.Essentials.Core
|
||||
{
|
||||
public static class JoinMapHelper
|
||||
@@ -43,6 +45,10 @@ namespace PepperDash.Essentials.Core
|
||||
public Dictionary<string, JoinMetadata> Joins { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Read = Provides feedback to SIMPL
|
||||
/// Write = Responds to sig values from SIMPL
|
||||
/// </summary>
|
||||
public enum eJoinCapabilities
|
||||
{
|
||||
Read = 1,
|
||||
@@ -56,12 +62,35 @@ namespace PepperDash.Essentials.Core
|
||||
Serial = 4
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Data describing the join
|
||||
/// </summary>
|
||||
public class JoinMetadata
|
||||
{
|
||||
/// <summary>
|
||||
/// A label for the join to better describe it's usage
|
||||
/// </summary>
|
||||
[JsonProperty("label")]
|
||||
public string Label { get; set; }
|
||||
/// <summary>
|
||||
/// Signal type(s)
|
||||
/// </summary>
|
||||
[JsonProperty("joinType")]
|
||||
public eJoinType JoinType { get; set; }
|
||||
/// <summary>
|
||||
/// Join number (based on join offset value)
|
||||
/// </summary>
|
||||
[JsonProperty("joinNumber")]
|
||||
public uint JoinNumber { get; set; }
|
||||
/// <summary>
|
||||
/// Join range span. If join indicates the start of a range of joins, this indicated the maximum number of joins in the range
|
||||
/// </summary>
|
||||
[JsonProperty("joinSpan")]
|
||||
public uint JoinSpan { get; set; }
|
||||
/// <summary>
|
||||
/// Indicates whether the join is read and/or write
|
||||
/// </summary>
|
||||
[JsonProperty("joinCapabilities")]
|
||||
public eJoinCapabilities JoinCapabilities { get; set; }
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user