Updates to JoinMapBase to support better definition of joins.

This commit is contained in:
Neil Dorin
2019-12-16 13:14:37 -07:00
parent c54351f8ee
commit 16d5795267
8 changed files with 112 additions and 24 deletions

View File

@@ -25,6 +25,19 @@ namespace PepperDash.Essentials.Bridges
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 });
// Digital
IsOnline = 9;
PowerOff = 8;
@@ -37,14 +50,23 @@ namespace PepperDash.Essentials.Bridges
ZoomOut = 6;
PresetRecallOffset = 10;
PresetSaveOffset = 30;
NumberOfPresets = 5;
// Analog
NumberOfPresets = 5;
}
public override void OffsetJoinNumbers(uint joinStart)
{
var joinOffset = joinStart - 1;
foreach (var join in Joins)
{
join.Value.JoinNumber = join.Value.JoinNumber + joinOffset;
}
IsOnline = IsOnline + joinOffset;
PowerOff = PowerOff + joinOffset;
PowerOn = PowerOn + joinOffset;