mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-17 05:35:03 +00:00
Code cleanup
This commit is contained in:
@@ -1,19 +1,10 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using Crestron.SimplSharp;
|
using Crestron.SimplSharp;
|
||||||
using Crestron.SimplSharpPro;
|
|
||||||
using Crestron.SimplSharpPro.DeviceSupport;
|
|
||||||
using Crestron.SimplSharpPro.DM;
|
using Crestron.SimplSharpPro.DM;
|
||||||
using Crestron.SimplSharpPro.DM.Cards;
|
using Crestron.SimplSharpPro.DM.Cards;
|
||||||
using Crestron.SimplSharpPro.DM.Endpoints;
|
|
||||||
using Crestron.SimplSharpPro.DM.Endpoints.Receivers;
|
|
||||||
|
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
//using PepperDash.Essentials.DM.Cards;
|
|
||||||
|
|
||||||
using PepperDash.Essentials.DM.Config;
|
using PepperDash.Essentials.DM.Config;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
@@ -45,12 +36,10 @@ namespace PepperDash.Essentials.DM
|
|||||||
public IntFeedback SystemIdFeebdack { get; private set; }
|
public IntFeedback SystemIdFeebdack { get; private set; }
|
||||||
public BoolFeedback SystemIdBusyFeedback { get; private set; }
|
public BoolFeedback SystemIdBusyFeedback { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
public Dictionary<uint, IntFeedback> InputCardHdcpCapabilityFeedbacks { get; private set; }
|
public Dictionary<uint, IntFeedback> InputCardHdcpCapabilityFeedbacks { get; private set; }
|
||||||
|
|
||||||
public Dictionary<uint, eHdcpCapabilityType> InputCardHdcpCapabilityTypes { get; private set; }
|
public Dictionary<uint, eHdcpCapabilityType> InputCardHdcpCapabilityTypes { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
// Need a couple Lists of generic Backplane ports
|
// Need a couple Lists of generic Backplane ports
|
||||||
public RoutingPortCollection<RoutingInputPort> InputPorts { get; private set; }
|
public RoutingPortCollection<RoutingInputPort> InputPorts { get; private set; }
|
||||||
public RoutingPortCollection<RoutingOutputPort> OutputPorts { get; private set; }
|
public RoutingPortCollection<RoutingOutputPort> OutputPorts { get; private set; }
|
||||||
@@ -85,34 +74,56 @@ namespace PepperDash.Essentials.DM
|
|||||||
uint ipid = properties.Control.IpIdInt;
|
uint ipid = properties.Control.IpIdInt;
|
||||||
|
|
||||||
DmMDMnxn chassis = null;
|
DmMDMnxn chassis = null;
|
||||||
if (type == "dmmd8x8") { chassis = new DmMd8x8(ipid, Global.ControlSystem); }
|
switch (type) {
|
||||||
else if (type == "dmmd8x8rps") { chassis = new DmMd8x8rps(ipid, Global.ControlSystem); }
|
case "dmmd8x8":
|
||||||
else if (type == "dmmd8x8cpu3") { chassis = new DmMd8x8Cpu3(ipid, Global.ControlSystem); }
|
chassis = new DmMd8x8(ipid, Global.ControlSystem);
|
||||||
else if (type == "dmmd8x8cpu3rps") { chassis = new DmMd8x8Cpu3rps(ipid, Global.ControlSystem); }
|
break;
|
||||||
|
case "dmmd8x8rps":
|
||||||
else if (type == "dmmd16x16") { chassis = new DmMd16x16(ipid, Global.ControlSystem); }
|
chassis = new DmMd8x8rps(ipid, Global.ControlSystem);
|
||||||
else if (type == "dmmd16x16rps") { chassis = new DmMd16x16rps(ipid, Global.ControlSystem); }
|
break;
|
||||||
else if (type == "dmmd16x16cpu3") { chassis = new DmMd16x16Cpu3(ipid, Global.ControlSystem); }
|
case "dmmd8x8cpu3":
|
||||||
else if (type == "dmmd16x16cpu3rps") { chassis = new DmMd16x16Cpu3rps(ipid, Global.ControlSystem); }
|
chassis = new DmMd8x8Cpu3(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
else if (type == "dmmd32x32") { chassis = new DmMd32x32(ipid, Global.ControlSystem); }
|
case "dmmd8x8cpu3rps":
|
||||||
else if (type == "dmmd32x32rps") { chassis = new DmMd32x32rps(ipid, Global.ControlSystem); }
|
chassis = new DmMd8x8Cpu3rps(ipid, Global.ControlSystem);
|
||||||
else if (type == "dmmd32x32cpu3") { chassis = new DmMd32x32Cpu3(ipid, Global.ControlSystem); }
|
break;
|
||||||
else if (type == "dmmd32x32cpu3rps") { chassis = new DmMd32x32Cpu3rps(ipid, Global.ControlSystem); }
|
case "dmmd16x16":
|
||||||
|
chassis = new DmMd16x16(ipid, Global.ControlSystem);
|
||||||
if (chassis == null)
|
break;
|
||||||
{
|
case "dmmd16x16rps":
|
||||||
return null;
|
chassis = new DmMd16x16rps(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd16x16cpu3":
|
||||||
|
chassis = new DmMd16x16Cpu3(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd16x16cpu3rps":
|
||||||
|
chassis = new DmMd16x16Cpu3rps(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd32x32":
|
||||||
|
chassis = new DmMd32x32(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd32x32rps":
|
||||||
|
chassis = new DmMd32x32rps(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd32x32cpu3":
|
||||||
|
chassis = new DmMd32x32Cpu3(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
|
case "dmmd32x32cpu3rps":
|
||||||
|
chassis = new DmMd32x32Cpu3rps(ipid, Global.ControlSystem);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (chassis == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
var controller = new DmChassisController(key, name, chassis);
|
var controller = new DmChassisController(key, name, chassis);
|
||||||
|
|
||||||
// add the cards and port names
|
// add the cards and port names
|
||||||
foreach (var kvp in properties.InputSlots)
|
foreach (var kvp in properties.InputSlots)
|
||||||
controller.AddInputCard(kvp.Value, kvp.Key);
|
controller.AddInputCard(kvp.Value, kvp.Key);
|
||||||
|
|
||||||
foreach (var kvp in properties.OutputSlots)
|
foreach (var kvp in properties.OutputSlots)
|
||||||
{
|
|
||||||
controller.AddOutputCard(kvp.Value, kvp.Key);
|
controller.AddOutputCard(kvp.Value, kvp.Key);
|
||||||
}
|
|
||||||
|
|
||||||
foreach (var kvp in properties.VolumeControls)
|
foreach (var kvp in properties.VolumeControls)
|
||||||
{
|
{
|
||||||
@@ -129,6 +140,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
audio = (card as Dmc4kHdo).Audio;
|
audio = (card as Dmc4kHdo).Audio;
|
||||||
if (audio == null)
|
if (audio == null)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// wire up the audio to something here...
|
// wire up the audio to something here...
|
||||||
controller.AddVolumeControl(outNum, audio);
|
controller.AddVolumeControl(outNum, audio);
|
||||||
}
|
}
|
||||||
@@ -142,19 +154,21 @@ namespace PepperDash.Essentials.DM
|
|||||||
Debug.Console(1, controller, "Setting No Route Text value to: {0}", controller.NoRouteText);
|
Debug.Console(1, controller, "Setting No Route Text value to: {0}", controller.NoRouteText);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
Debug.Console(1, controller, "NoRouteText not specified. Defaulting to blank string.", controller.NoRouteText);
|
Debug.Console(1, controller, "NoRouteText not specified. Defaulting to blank string.", controller.NoRouteText);
|
||||||
|
}
|
||||||
|
|
||||||
controller.PropertiesConfig = properties;
|
controller.PropertiesConfig = properties;
|
||||||
return controller;
|
return controller;
|
||||||
}
|
}
|
||||||
catch (System.Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Error creating DM chassis:\r{0}", e);
|
Debug.Console(0, "Error creating DM chassis:\r{0}", e);
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -192,67 +206,51 @@ namespace PepperDash.Essentials.DM
|
|||||||
InputCardHdcpCapabilityFeedbacks = new Dictionary<uint, IntFeedback>();
|
InputCardHdcpCapabilityFeedbacks = new Dictionary<uint, IntFeedback>();
|
||||||
InputCardHdcpCapabilityTypes = new Dictionary<uint, eHdcpCapabilityType>();
|
InputCardHdcpCapabilityTypes = new Dictionary<uint, eHdcpCapabilityType>();
|
||||||
|
|
||||||
|
|
||||||
for (uint x = 1; x <= Chassis.NumberOfOutputs; x++)
|
for (uint x = 1; x <= Chassis.NumberOfOutputs; x++)
|
||||||
{
|
{
|
||||||
var tempX = x;
|
var tempX = x;
|
||||||
|
|
||||||
if (Chassis.Outputs[tempX] != null)
|
if (Chassis.Outputs[tempX] != null)
|
||||||
{
|
{
|
||||||
VideoOutputFeedbacks[tempX] = new IntFeedback(() =>
|
VideoOutputFeedbacks[tempX] = new IntFeedback(() => {
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].VideoOutFeedback != null) { return (ushort)Chassis.Outputs[tempX].VideoOutFeedback.Number; }
|
|
||||||
else { return 0; };
|
|
||||||
});
|
|
||||||
AudioOutputFeedbacks[tempX] = new IntFeedback(() =>
|
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].AudioOutFeedback != null) { return (ushort)Chassis.Outputs[tempX].AudioOutFeedback.Number; }
|
|
||||||
else { return 0; };
|
|
||||||
});
|
|
||||||
UsbOutputRoutedToFeebacks[tempX] = new IntFeedback(() =>
|
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].USBRoutedToFeedback != null) { return (ushort)Chassis.Outputs[tempX].USBRoutedToFeedback.Number; }
|
|
||||||
else { return 0; };
|
|
||||||
});
|
|
||||||
|
|
||||||
OutputNameFeedbacks[tempX] = new StringFeedback(() =>
|
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].NameFeedback != null)
|
|
||||||
{
|
|
||||||
return Chassis.Outputs[tempX].NameFeedback.StringValue;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
});
|
|
||||||
OutputVideoRouteNameFeedbacks[tempX] = new StringFeedback(() =>
|
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].VideoOutFeedback != null)
|
if (Chassis.Outputs[tempX].VideoOutFeedback != null)
|
||||||
{
|
return (ushort)Chassis.Outputs[tempX].VideoOutFeedback.Number;
|
||||||
return Chassis.Outputs[tempX].VideoOutFeedback.NameFeedback.StringValue;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return NoRouteText;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
OutputAudioRouteNameFeedbacks[tempX] = new StringFeedback(() =>
|
|
||||||
{
|
|
||||||
if (Chassis.Outputs[tempX].AudioOutFeedback != null)
|
|
||||||
{
|
|
||||||
return Chassis.Outputs[tempX].AudioOutFeedback.NameFeedback.StringValue;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return NoRouteText;
|
|
||||||
|
|
||||||
}
|
return 0;
|
||||||
});
|
});
|
||||||
OutputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() =>
|
AudioOutputFeedbacks[tempX] = new IntFeedback(() => {
|
||||||
{
|
if (Chassis.Outputs[tempX].AudioOutFeedback != null)
|
||||||
return Chassis.Outputs[tempX].EndpointOnlineFeedback;
|
return (ushort)Chassis.Outputs[tempX].AudioOutFeedback.Number;
|
||||||
|
|
||||||
|
return 0;
|
||||||
});
|
});
|
||||||
|
UsbOutputRoutedToFeebacks[tempX] = new IntFeedback(() => {
|
||||||
|
if (Chassis.Outputs[tempX].USBRoutedToFeedback != null)
|
||||||
|
return (ushort)Chassis.Outputs[tempX].USBRoutedToFeedback.Number;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
OutputNameFeedbacks[tempX] = new StringFeedback(() => {
|
||||||
|
if (Chassis.Outputs[tempX].NameFeedback != null)
|
||||||
|
return Chassis.Outputs[tempX].NameFeedback.StringValue;
|
||||||
|
|
||||||
|
return "";
|
||||||
|
});
|
||||||
|
OutputVideoRouteNameFeedbacks[tempX] = new StringFeedback(() => {
|
||||||
|
if (Chassis.Outputs[tempX].VideoOutFeedback != null)
|
||||||
|
return Chassis.Outputs[tempX].VideoOutFeedback.NameFeedback.StringValue;
|
||||||
|
|
||||||
|
return NoRouteText;
|
||||||
|
});
|
||||||
|
OutputAudioRouteNameFeedbacks[tempX] = new StringFeedback(() => {
|
||||||
|
if (Chassis.Outputs[tempX].AudioOutFeedback != null)
|
||||||
|
return Chassis.Outputs[tempX].AudioOutFeedback.NameFeedback.StringValue;
|
||||||
|
|
||||||
|
return NoRouteText;
|
||||||
|
});
|
||||||
|
OutputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => Chassis.Outputs[tempX].EndpointOnlineFeedback);
|
||||||
|
|
||||||
OutputDisabledByHdcpFeedbacks[tempX] = new BoolFeedback(() => {
|
OutputDisabledByHdcpFeedbacks[tempX] = new BoolFeedback(() => {
|
||||||
var output = Chassis.Outputs[tempX];
|
var output = Chassis.Outputs[tempX];
|
||||||
|
|
||||||
@@ -283,7 +281,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
// var hdRx4kX10HdmiOutput = output as HdRx4kX10HdmiOutput;
|
// var hdRx4kX10HdmiOutput = output as HdRx4kX10HdmiOutput;
|
||||||
// if (hdRx4kX10HdmiOutput != null)
|
// if (hdRx4kX10HdmiOutput != null)
|
||||||
// return hdRx4kX10HdmiOutput.HdmiOutputPort.DisabledByHdcpFeedback.BoolValue;
|
// return hdRx4kX10HdmiOutput.HdmiOutputPort.DisabledByHdcpFeedback.BoolValue;
|
||||||
//
|
|
||||||
// var hdMdNxMHdmiOutput = output as HdMdNxMHdmiOutput;
|
// var hdMdNxMHdmiOutput = output as HdMdNxMHdmiOutput;
|
||||||
// if (hdMdNxMHdmiOutput != null)
|
// if (hdMdNxMHdmiOutput != null)
|
||||||
// return hdMdNxMHdmiOutput.HdmiOutputPort.DisabledByHdcpFeedback.BoolValue;
|
// return hdMdNxMHdmiOutput.HdmiOutputPort.DisabledByHdcpFeedback.BoolValue;
|
||||||
@@ -294,37 +292,28 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
if (Chassis.Inputs[tempX] != null)
|
if (Chassis.Inputs[tempX] != null)
|
||||||
{
|
{
|
||||||
UsbInputRoutedToFeebacks[tempX] = new IntFeedback(() =>
|
UsbInputRoutedToFeebacks[tempX] = new IntFeedback(() => {
|
||||||
{
|
if (Chassis.Inputs[tempX].USBRoutedToFeedback != null)
|
||||||
if (Chassis.Inputs[tempX].USBRoutedToFeedback != null) { return (ushort)Chassis.Inputs[tempX].USBRoutedToFeedback.Number; }
|
return (ushort)Chassis.Inputs[tempX].USBRoutedToFeedback.Number;
|
||||||
else { return 0; };
|
|
||||||
|
return 0;
|
||||||
});
|
});
|
||||||
VideoInputSyncFeedbacks[tempX] = new BoolFeedback(() =>
|
VideoInputSyncFeedbacks[tempX] = new BoolFeedback(() => {
|
||||||
{
|
|
||||||
if (Chassis.Inputs[tempX].VideoDetectedFeedback != null)
|
if (Chassis.Inputs[tempX].VideoDetectedFeedback != null)
|
||||||
return Chassis.Inputs[tempX].VideoDetectedFeedback.BoolValue;
|
return Chassis.Inputs[tempX].VideoDetectedFeedback.BoolValue;
|
||||||
else
|
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
InputNameFeedbacks[tempX] = new StringFeedback(() =>
|
InputNameFeedbacks[tempX] = new StringFeedback(() => {
|
||||||
{
|
|
||||||
if (Chassis.Inputs[tempX].NameFeedback != null)
|
if (Chassis.Inputs[tempX].NameFeedback != null)
|
||||||
{
|
|
||||||
return Chassis.Inputs[tempX].NameFeedback.StringValue;
|
return Chassis.Inputs[tempX].NameFeedback.StringValue;
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return "";
|
return "";
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
InputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() =>
|
InputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => { return Chassis.Inputs[tempX].EndpointOnlineFeedback; });
|
||||||
{
|
|
||||||
return Chassis.Inputs[tempX].EndpointOnlineFeedback;
|
|
||||||
});
|
|
||||||
|
|
||||||
InputCardHdcpCapabilityFeedbacks[tempX] = new IntFeedback(() =>
|
InputCardHdcpCapabilityFeedbacks[tempX] = new IntFeedback(() => {
|
||||||
{
|
|
||||||
var inputCard = Chassis.Inputs[tempX];
|
var inputCard = Chassis.Inputs[tempX];
|
||||||
|
|
||||||
if (inputCard.Card is DmcHd)
|
if (inputCard.Card is DmcHd)
|
||||||
@@ -333,51 +322,47 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
if ((inputCard.Card as DmcHd).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
if ((inputCard.Card as DmcHd).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
return 1;
|
return 1;
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (inputCard.Card is DmcHdDsp)
|
|
||||||
|
if (inputCard.Card is DmcHdDsp)
|
||||||
{
|
{
|
||||||
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
||||||
|
|
||||||
if ((inputCard.Card as DmcHdDsp).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
if ((inputCard.Card as DmcHdDsp).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
return 1;
|
return 1;
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (inputCard.Card is Dmc4kHdBase)
|
if (inputCard.Card is Dmc4kHdBase)
|
||||||
{
|
{
|
||||||
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.Hdcp2_2Support;
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.Hdcp2_2Support;
|
||||||
|
|
||||||
return (int)(inputCard.Card as Dmc4kHdBase).HdmiInput.HdcpReceiveCapability;
|
return (int)(inputCard.Card as Dmc4kHdBase).HdmiInput.HdcpReceiveCapability;
|
||||||
}
|
}
|
||||||
else if (inputCard.Card is Dmc4kCBase)
|
if (inputCard.Card is Dmc4kCBase)
|
||||||
{
|
{
|
||||||
if (PropertiesConfig.InputSlotSupportsHdcp2[tempX])
|
if (PropertiesConfig.InputSlotSupportsHdcp2[tempX])
|
||||||
{
|
{
|
||||||
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
||||||
|
|
||||||
return (int)(inputCard.Card as Dmc4kCBase).DmInput.HdcpReceiveCapability;
|
return (int)(inputCard.Card as Dmc4kCBase).DmInput.HdcpReceiveCapability;
|
||||||
}
|
}
|
||||||
else if ((inputCard.Card as Dmc4kCBase).DmInput.HdcpSupportOnFeedback.BoolValue)
|
|
||||||
|
if ((inputCard.Card as Dmc4kCBase).DmInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
return 1;
|
return 1;
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (inputCard.Card is Dmc4kCDspBase)
|
if (inputCard.Card is Dmc4kCDspBase)
|
||||||
{
|
{
|
||||||
if (PropertiesConfig.InputSlotSupportsHdcp2[tempX])
|
if (PropertiesConfig.InputSlotSupportsHdcp2[tempX])
|
||||||
{
|
{
|
||||||
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
||||||
|
|
||||||
return (int)(inputCard.Card as Dmc4kCDspBase).DmInput.HdcpReceiveCapability;
|
return (int)(inputCard.Card as Dmc4kCDspBase).DmInput.HdcpReceiveCapability;
|
||||||
}
|
}
|
||||||
else if ((inputCard.Card as Dmc4kCDspBase).DmInput.HdcpSupportOnFeedback.BoolValue)
|
|
||||||
|
if ((inputCard.Card as Dmc4kCDspBase).DmInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
return 1;
|
return 1;
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
return 0;
|
return 0;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -505,7 +490,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
{
|
{
|
||||||
new DmcSdi(number, Chassis);
|
new DmcSdi(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi);
|
AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi);
|
||||||
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "sdiOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "sdiOut", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Sdi, null);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcdvi")
|
else if (type == "dmcdvi")
|
||||||
@@ -565,6 +551,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddDmInCardPorts(uint number, ICec cecPort)
|
void AddDmInCardPorts(uint number, ICec cecPort)
|
||||||
{
|
{
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, cecPort);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, cecPort);
|
||||||
@@ -579,13 +566,15 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
void AddInCardHdmiAndAudioLoopPorts(uint number)
|
void AddInCardHdmiAndAudioLoopPorts(uint number)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, null);
|
||||||
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddInCardHdmiLoopPort(uint number)
|
void AddInCardHdmiLoopPort(uint number)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -640,23 +629,29 @@ namespace PepperDash.Essentials.DM
|
|||||||
{
|
{
|
||||||
var outputCard = new DmcSoHdSingle(number, Chassis);
|
var outputCard = new DmcSoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
else if (type == "dmcs2ohd")
|
else if (type == "dmcs2ohd")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcS2oHdSingle(number, Chassis);
|
var outputCard = new DmcS2oHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
else if (type == "dmcstro")
|
else if (type == "dmcstro")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcStroSingle(number, Chassis);
|
var outputCard = new DmcStroSingle(number, Chassis);
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "streamOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "streamOut", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
else
|
||||||
@@ -665,20 +660,26 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 1);
|
eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio,
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 2);
|
2 * (number - 1) + 1);
|
||||||
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
||||||
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio,
|
||||||
|
2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddDmcCoPorts(uint number, ICec cecPort1)
|
void AddDmcCoPorts(uint number, ICec cecPort1)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
|
eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds InputPort
|
/// Adds InputPort
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -700,16 +701,11 @@ namespace PepperDash.Essentials.DM
|
|||||||
Debug.Console(2, this, "Adding input port '{0}'", portKey);
|
Debug.Console(2, this, "Adding input port '{0}'", portKey);
|
||||||
var inputPort = new RoutingInputPort(portKey, sigType, portType, cardNum, this);
|
var inputPort = new RoutingInputPort(portKey, sigType, portType, cardNum, this);
|
||||||
|
|
||||||
if (inputPort != null)
|
|
||||||
{
|
|
||||||
if (cecPort != null)
|
if (cecPort != null)
|
||||||
inputPort.Port = cecPort;
|
inputPort.Port = cecPort;
|
||||||
|
|
||||||
InputPorts.Add(inputPort);
|
InputPorts.Add(inputPort);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
Debug.Console(2, this, "inputPort is null");
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds OutputPort
|
/// Adds OutputPort
|
||||||
@@ -749,7 +745,6 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
|
||||||
void Chassis_DMSystemChange(Switch device, DMSystemEventArgs args)
|
void Chassis_DMSystemChange(Switch device, DMSystemEventArgs args)
|
||||||
{
|
{
|
||||||
switch (args.EventId)
|
switch (args.EventId)
|
||||||
@@ -771,7 +766,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
|
|
||||||
void Chassis_DMInputChange(Switch device, DMInputEventArgs args)
|
void Chassis_DMInputChange(Switch device, DMInputEventArgs args)
|
||||||
{
|
{
|
||||||
switch (args.EventId) {
|
switch (args.EventId)
|
||||||
|
{
|
||||||
case DMInputEventIds.EndpointOnlineEventId:
|
case DMInputEventIds.EndpointOnlineEventId:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "DM Input EndpointOnlineEventId for input: {0}. State: {1}", args.Number, device.Inputs[args.Number].EndpointOnlineFeedback);
|
Debug.Console(2, this, "DM Input EndpointOnlineEventId for input: {0}. State: {1}", args.Number, device.Inputs[args.Number].EndpointOnlineFeedback);
|
||||||
@@ -821,6 +817,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void Chassis_DMOutputChange(Switch device, DMOutputEventArgs args)
|
void Chassis_DMOutputChange(Switch device, DMOutputEventArgs args)
|
||||||
@@ -835,51 +832,47 @@ namespace PepperDash.Essentials.DM
|
|||||||
{
|
{
|
||||||
VolumeControls[args.Number].VolumeEventFromChassis();
|
VolumeControls[args.Number].VolumeEventFromChassis();
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.EndpointOnlineEventId:
|
case DMOutputEventIds.EndpointOnlineEventId:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Output {0} DMOutputEventIds.EndpointOnlineEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
Debug.Console(2, this, "Output {0} DMOutputEventIds.EndpointOnlineEventId fired. State: {1}", args.Number,
|
||||||
|
Chassis.Outputs[output].EndpointOnlineFeedback);
|
||||||
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.OnlineFeedbackEventId:
|
case DMOutputEventIds.OnlineFeedbackEventId:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Output {0} DMInputEventIds.OnlineFeedbackEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
Debug.Console(2, this, "Output {0} DMInputEventIds.OnlineFeedbackEventId fired. State: {1}", args.Number,
|
||||||
|
Chassis.Outputs[output].EndpointOnlineFeedback);
|
||||||
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.VideoOutEventId:
|
case DMOutputEventIds.VideoOutEventId:
|
||||||
{
|
{
|
||||||
if (Chassis.Outputs[output].VideoOutFeedback != null)
|
if (Chassis.Outputs[output].VideoOutFeedback != null)
|
||||||
{
|
|
||||||
Debug.Console(2, this, "DMSwitchVideo:{0} Routed Input:{1} Output:{2}'", this.Name, Chassis.Outputs[output].VideoOutFeedback.Number, output);
|
Debug.Console(2, this, "DMSwitchVideo:{0} Routed Input:{1} Output:{2}'", this.Name, Chassis.Outputs[output].VideoOutFeedback.Number, output);
|
||||||
}
|
|
||||||
if (VideoOutputFeedbacks.ContainsKey(output))
|
if (VideoOutputFeedbacks.ContainsKey(output))
|
||||||
{
|
|
||||||
VideoOutputFeedbacks[output].FireUpdate();
|
VideoOutputFeedbacks[output].FireUpdate();
|
||||||
|
|
||||||
}
|
|
||||||
if (OutputVideoRouteNameFeedbacks.ContainsKey(output))
|
if (OutputVideoRouteNameFeedbacks.ContainsKey(output))
|
||||||
{
|
|
||||||
OutputVideoRouteNameFeedbacks[output].FireUpdate();
|
OutputVideoRouteNameFeedbacks[output].FireUpdate();
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.AudioOutEventId:
|
case DMOutputEventIds.AudioOutEventId:
|
||||||
{
|
{
|
||||||
if (Chassis.Outputs[output].AudioOutFeedback != null)
|
if (Chassis.Outputs[output].AudioOutFeedback != null)
|
||||||
{
|
|
||||||
Debug.Console(2, this, "DMSwitchAudio:{0} Routed Input:{1} Output:{2}'", this.Name, Chassis.Outputs[output].AudioOutFeedback.Number, output);
|
Debug.Console(2, this, "DMSwitchAudio:{0} Routed Input:{1} Output:{2}'", this.Name, Chassis.Outputs[output].AudioOutFeedback.Number, output);
|
||||||
}
|
|
||||||
if (AudioOutputFeedbacks.ContainsKey(output))
|
if (AudioOutputFeedbacks.ContainsKey(output))
|
||||||
{
|
|
||||||
AudioOutputFeedbacks[output].FireUpdate();
|
AudioOutputFeedbacks[output].FireUpdate();
|
||||||
}
|
|
||||||
if (OutputAudioRouteNameFeedbacks.ContainsKey(output))
|
if (OutputAudioRouteNameFeedbacks.ContainsKey(output))
|
||||||
{
|
|
||||||
OutputAudioRouteNameFeedbacks[output].FireUpdate();
|
OutputAudioRouteNameFeedbacks[output].FireUpdate();
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.OutputNameEventId:
|
case DMOutputEventIds.OutputNameEventId:
|
||||||
@@ -906,7 +899,6 @@ namespace PepperDash.Essentials.DM
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -917,13 +909,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
{
|
{
|
||||||
if (RouteOffTimers.ContainsKey(pnt))
|
if (RouteOffTimers.ContainsKey(pnt))
|
||||||
return;
|
return;
|
||||||
RouteOffTimers[pnt] = new CTimer(o =>
|
RouteOffTimers[pnt] = new CTimer(o => { ExecuteSwitch(0, pnt.Number, pnt.Type); }, RouteOffTime);
|
||||||
{
|
|
||||||
ExecuteSwitch(0, pnt.Number, pnt.Type);
|
|
||||||
}, RouteOffTime);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Send out sigs when coming online
|
// Send out sigs when coming online
|
||||||
void IsOnline_OutputChange(object sender, EventArgs e)
|
void IsOnline_OutputChange(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
@@ -942,13 +930,13 @@ namespace PepperDash.Essentials.DM
|
|||||||
}
|
}
|
||||||
|
|
||||||
#region IRouting Members
|
#region IRouting Members
|
||||||
|
|
||||||
public void ExecuteSwitch(object inputSelector, object outputSelector, eRoutingSignalType sigType)
|
public void ExecuteSwitch(object inputSelector, object outputSelector, eRoutingSignalType sigType)
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Making an awesome DM route from {0} to {1} {2}", inputSelector, outputSelector, sigType);
|
Debug.Console(2, this, "Making an awesome DM route from {0} to {1} {2}", inputSelector, outputSelector, sigType);
|
||||||
|
|
||||||
var input = Convert.ToUInt32(inputSelector); // Cast can sometimes fail
|
var input = Convert.ToUInt32(inputSelector); // Cast can sometimes fail
|
||||||
var output = Convert.ToUInt32(outputSelector);
|
var output = Convert.ToUInt32(outputSelector);
|
||||||
|
|
||||||
// Check to see if there's an off timer waiting on this and if so, cancel
|
// Check to see if there's an off timer waiting on this and if so, cancel
|
||||||
var key = new PortNumberType(output, sigType);
|
var key = new PortNumberType(output, sigType);
|
||||||
if (input == 0)
|
if (input == 0)
|
||||||
@@ -995,7 +983,6 @@ namespace PepperDash.Essentials.DM
|
|||||||
Chassis.Inputs[input].USBRoutedTo = outCard;
|
Chassis.Inputs[input].USBRoutedTo = outCard;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1004,7 +991,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
public uint Number { get; private set; }
|
public uint Number { get; private set; }
|
||||||
public eRoutingSignalType Type { get; private set; }
|
public eRoutingSignalType Type { get; private set; }
|
||||||
|
|
||||||
public PortNumberType(uint number, eRoutingSignalType type) : this()
|
public PortNumberType(uint number, eRoutingSignalType type)
|
||||||
|
: this()
|
||||||
{
|
{
|
||||||
Number = number;
|
Number = number;
|
||||||
Type = type;
|
Type = type;
|
||||||
|
|||||||
Reference in New Issue
Block a user