working on DmpsAudioOutputControllerBridge

This commit is contained in:
Neil Dorin
2019-08-28 17:07:18 -06:00
parent 172e2fb744
commit 77fbee78a8
5 changed files with 83 additions and 9 deletions

View File

@@ -206,8 +206,10 @@ namespace PepperDash.Essentials.Bridges
public class DmChassisControllerJoinMap : JoinMapBase
{
//Digital
// Digtal/Analog
public uint SystemId { get; set; }
//Digital
public uint IsOnline { get; set; }
public uint OutputUsb { get; set; }
public uint InputUsb { get; set; }
@@ -233,7 +235,9 @@ namespace PepperDash.Essentials.Bridges
public DmChassisControllerJoinMap()
{
SystemId = 10;
//Digital/Analog
SystemId = 10; // Analog sets/gets SystemId, digital input applies and provides feedback of ID change busy
//Digital
IsOnline = 11;
VideoSyncStatus = 100; //101-299
@@ -261,8 +265,6 @@ namespace PepperDash.Essentials.Bridges
OutputEndpointOnline = 700; //701-899
HdcpSupportState = 1000; //1001-1199
HdcpSupportCapability = 1200; //1201-1399
}
public override void OffsetJoinNumbers(uint joinStart)

View File

@@ -0,0 +1,59 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Crestron.SimplSharp;
using Crestron.SimplSharpPro.DeviceSupport;
using Crestron.SimplSharpPro.DM;
using PepperDash.Core;
using PepperDash.Essentials.Core;
using PepperDash.Essentials.DM;
namespace PepperDash.Essentials.Bridges
{
public static class DmpsAudioOutputControllerApiExtensions
{
public static void LinkToApi(this DmpsAudioOutputController dmAudioOutputController, BasicTriList trilis, uint joinStart, string joinMapKey)
{
var joinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as DmpsAudioOutputControllerJoinMap;
if (joinMap == null)
joinMap = new DmpsAudioOutputControllerJoinMap();
joinMap.OffsetJoinNumbers(joinStart);
Debug.Console(1, dmAudioOutputController, "Linking to Trilist '{0}'", trilis.ID.ToString("X"));
}
public class DmpsAudioOutputControllerJoinMap: JoinMapBase
{
// Digital
public uint MasterVolumeMute { get; set; }
public uint SourceVolumeMute { get; set; }
public uint Codec1VolumeMute { get; set; }
public uint Codec2VolumeMute { get; set; }
public DmpsAudioOutputControllerJoinMap()
{
MasterVolumeMute = 1; // 1-10
SourceVolumeMute = 11; // 11-20
Codec1VolumeMute = 21; // 21-30
Codec2VolumeMute = 31; // 31-40
}
public override void OffsetJoinNumbers(uint joinStart)
{
var joinOffset = joinStart -1;
MasterVolumeMute = MasterVolumeMute + joinOffset;
SourceVolumeMute = SourceVolumeMute + joinOffset;
Codec1VolumeMute = Codec1VolumeMute + joinOffset;
Codec2VolumeMute = Codec2VolumeMute + joinOffset;
}
}
}
}

View File

@@ -139,7 +139,7 @@ namespace PepperDash.Essentials.Bridges
public DmpsRoutingControllerJoinMap()
{;
{
OutputVideo = 100; //101-299
OutputAudio = 300; //301-499
VideoSyncStatus = 100; //101-299
@@ -148,8 +148,8 @@ namespace PepperDash.Essentials.Bridges
OutputCurrentVideoInputNames = 2000; //2001-2199
OutputCurrentAudioInputNames = 2200; //2201-2399
InputCurrentResolution = 2400; // 2401-2599
InputEndpointOnline = 500;
OutputEndpointOnline = 700;
InputEndpointOnline = 500; //501-699
OutputEndpointOnline = 700; //701-899
//HdcpSupport = 1000; //1001-1199
//HdcpSupportCapability = 1200; //1201-1399

View File

@@ -121,6 +121,7 @@
<Compile Include="Bridges\BridgeFactory.cs" />
<Compile Include="Bridges\CameraControllerBridge.cs" />
<Compile Include="Bridges\AirMediaControllerBridge.cs" />
<Compile Include="Bridges\DmpsAudioOutputControllerBridge.cs" />
<Compile Include="Bridges\DmpsRoutingControllerBridge.cs" />
<Compile Include="Bridges\DisplayControllerBridge.cs" />
<Compile Include="Bridges\DigitalLoggerBridge.cs" />