mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-15 04:34:56 +00:00
@@ -1,105 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using Crestron.SimplSharp;
|
|
||||||
using Crestron.SimplSharpPro;
|
|
||||||
|
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Core
|
|
||||||
{
|
|
||||||
public class ComPortController : Device, IBasicCommunication
|
|
||||||
{
|
|
||||||
public event EventHandler<GenericCommMethodReceiveBytesArgs> BytesReceived;
|
|
||||||
public event EventHandler<GenericCommMethodReceiveTextArgs> TextReceived;
|
|
||||||
|
|
||||||
ComPort Port;
|
|
||||||
ComPort.ComPortSpec Spec;
|
|
||||||
|
|
||||||
public ComPortController(string key, IComPorts ComDevice, uint comPortNum, ComPort.ComPortSpec spec)
|
|
||||||
: base(key)
|
|
||||||
{
|
|
||||||
Port = ComDevice.ComPorts[comPortNum];
|
|
||||||
Spec = spec;
|
|
||||||
|
|
||||||
Debug.Console(2, "Creating com port '{0}'", key);
|
|
||||||
Debug.Console(2, "Com port spec:\r{0}", JsonConvert.SerializeObject(spec));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Creates a ComPort if the parameters are correct. Returns and logs errors if not
|
|
||||||
/// </summary>
|
|
||||||
public static ComPortController GetComPortController(string key,
|
|
||||||
IComPorts comDevice, uint comPortNum, ComPort.ComPortSpec spec)
|
|
||||||
{
|
|
||||||
Debug.Console(1, "Creating com port '{0}'", key);
|
|
||||||
if (comDevice == null)
|
|
||||||
throw new ArgumentNullException("comDevice");
|
|
||||||
if (string.IsNullOrEmpty(key))
|
|
||||||
throw new ArgumentNullException("key");
|
|
||||||
if (comPortNum > comDevice.NumberOfComPorts)
|
|
||||||
{
|
|
||||||
Debug.Console(0, "[{0}] Com port {1} out of range on {2}",
|
|
||||||
key, comPortNum, comDevice.GetType().Name);
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
var port = new ComPortController(key, comDevice, comPortNum, spec);
|
|
||||||
return port;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Registers port and sends ComSpec
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>false if either register or comspec fails</returns>
|
|
||||||
public override bool CustomActivate()
|
|
||||||
{
|
|
||||||
var result = Port.Register();
|
|
||||||
if (result != eDeviceRegistrationUnRegistrationResponse.Success)
|
|
||||||
{
|
|
||||||
Debug.Console(0, this, "Cannot register Com port: {0}", result);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
var specResult = Port.SetComPortSpec(Spec);
|
|
||||||
if (specResult != 0)
|
|
||||||
{
|
|
||||||
Debug.Console(0, this, "Cannot set comspec");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
Port.SerialDataReceived += new ComPortDataReceivedEvent(Port_SerialDataReceived);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Port_SerialDataReceived(ComPort ReceivingComPort, ComPortSerialDataEventArgs args)
|
|
||||||
{
|
|
||||||
if (BytesReceived != null)
|
|
||||||
{
|
|
||||||
var bytes = Encoding.GetEncoding(28591).GetBytes(args.SerialData);
|
|
||||||
BytesReceived(this, new GenericCommMethodReceiveBytesArgs(bytes));
|
|
||||||
}
|
|
||||||
if(TextReceived != null)
|
|
||||||
TextReceived(this, new GenericCommMethodReceiveTextArgs(args.SerialData));
|
|
||||||
}
|
|
||||||
|
|
||||||
public override bool Deactivate()
|
|
||||||
{
|
|
||||||
return Port.UnRegister() == eDeviceRegistrationUnRegistrationResponse.Success;
|
|
||||||
}
|
|
||||||
|
|
||||||
#region IBasicCommunication Members
|
|
||||||
|
|
||||||
public void SendText(string text)
|
|
||||||
{
|
|
||||||
Port.Send(text);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void SendBytes(byte[] bytes)
|
|
||||||
{
|
|
||||||
|
|
||||||
var text = Encoding.GetEncoding(28591).GetString(bytes, 0, bytes.Length);
|
|
||||||
Port.Send(text);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -12,7 +12,8 @@ using PepperDash.Essentials.Core.Config;
|
|||||||
|
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Core.CrestronIO
|
namespace PepperDash.Essentials.Core.CrestronIO
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for Digital Input")]
|
||||||
public class GenericDigitalInputDevice : EssentialsBridgeableDevice, IDigitalInput
|
public class GenericDigitalInputDevice : EssentialsBridgeableDevice, IDigitalInput
|
||||||
{
|
{
|
||||||
public DigitalInput InputPort { get; private set; }
|
public DigitalInput InputPort { get; private set; }
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ namespace PepperDash.Essentials.Core.CrestronIO
|
|||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a generic device controlled by relays
|
/// Represents a generic device controlled by relays
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper class for a Relay")]
|
||||||
public class GenericRelayDevice : EssentialsBridgeableDevice, ISwitchedOutput
|
public class GenericRelayDevice : EssentialsBridgeableDevice, ISwitchedOutput
|
||||||
{
|
{
|
||||||
public Relay RelayOutput { get; private set; }
|
public Relay RelayOutput { get; private set; }
|
||||||
|
|||||||
@@ -13,8 +13,9 @@ using PepperDash.Essentials.Core.Bridges;
|
|||||||
using PepperDash.Essentials.Core.Routing;
|
using PepperDash.Essentials.Core.Routing;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Core
|
namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
public class BasicIrDisplay : DisplayBase, IBasicVolumeControls, IBridgeAdvanced
|
[Description("Wrapper class for a Basic IR Display")]
|
||||||
|
public class BasicIrDisplay : DisplayBase, IBasicVolumeControls, IBridgeAdvanced
|
||||||
{
|
{
|
||||||
public IrOutputPortController IrPort { get; private set; }
|
public IrOutputPortController IrPort { get; private set; }
|
||||||
public ushort IrPulseTime { get; set; }
|
public ushort IrPulseTime { get; set; }
|
||||||
|
|||||||
@@ -137,8 +137,14 @@
|
|||||||
<Compile Include="Bridges\JoinMaps\StatusSignControllerJoinMap.cs" />
|
<Compile Include="Bridges\JoinMaps\StatusSignControllerJoinMap.cs" />
|
||||||
<Compile Include="Bridges\JoinMaps\SystemMonitorJoinMap.cs" />
|
<Compile Include="Bridges\JoinMaps\SystemMonitorJoinMap.cs" />
|
||||||
<Compile Include="Config\Comm and IR\CecPortController.cs" />
|
<Compile Include="Config\Comm and IR\CecPortController.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\CommFactory.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\CommunicationExtras.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\ComPortController.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\ComSpecJsonConverter.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\ConsoleCommMockDevice.cs" />
|
||||||
<Compile Include="Config\Comm and IR\GenericComm.cs" />
|
<Compile Include="Config\Comm and IR\GenericComm.cs" />
|
||||||
<Compile Include="Config\Comm and IR\GenericHttpClient.cs" />
|
<Compile Include="Config\Comm and IR\GenericHttpClient.cs" />
|
||||||
|
<Compile Include="Config\Comm and IR\IRPortHelper.cs" />
|
||||||
<Compile Include="Config\Essentials\ConfigUpdater.cs" />
|
<Compile Include="Config\Essentials\ConfigUpdater.cs" />
|
||||||
<Compile Include="Config\Essentials\ConfigReader.cs" />
|
<Compile Include="Config\Essentials\ConfigReader.cs" />
|
||||||
<Compile Include="Config\Essentials\ConfigWriter.cs" />
|
<Compile Include="Config\Essentials\ConfigWriter.cs" />
|
||||||
@@ -189,11 +195,6 @@
|
|||||||
<Compile Include="Presets\PresetBase.cs" />
|
<Compile Include="Presets\PresetBase.cs" />
|
||||||
<Compile Include="Plugins\IPluginDeviceFactory.cs" />
|
<Compile Include="Plugins\IPluginDeviceFactory.cs" />
|
||||||
<Compile Include="Ramps and Increments\ActionIncrementer.cs" />
|
<Compile Include="Ramps and Increments\ActionIncrementer.cs" />
|
||||||
<Compile Include="Config\Comm and IR\CommFactory.cs" />
|
|
||||||
<Compile Include="Config\Comm and IR\CommunicationExtras.cs" />
|
|
||||||
<Compile Include="Config\Comm and IR\ComSpecJsonConverter.cs" />
|
|
||||||
<Compile Include="Config\Comm and IR\ConsoleCommMockDevice.cs" />
|
|
||||||
<Compile Include="Config\Comm and IR\IRPortHelper.cs" />
|
|
||||||
<Compile Include="Config\BasicConfig.cs" />
|
<Compile Include="Config\BasicConfig.cs" />
|
||||||
<Compile Include="Config\ConfigPropertiesHelpers.cs" />
|
<Compile Include="Config\ConfigPropertiesHelpers.cs" />
|
||||||
<Compile Include="Config\InfoConfig.cs" />
|
<Compile Include="Config\InfoConfig.cs" />
|
||||||
@@ -277,7 +278,6 @@
|
|||||||
<Compile Include="UI PageManagers\PageManager.cs" />
|
<Compile Include="UI PageManagers\PageManager.cs" />
|
||||||
<Compile Include="UI PageManagers\SetTopBoxTwoPanelPageManager.cs" />
|
<Compile Include="UI PageManagers\SetTopBoxTwoPanelPageManager.cs" />
|
||||||
<Compile Include="VideoStatus\VideoStatusOutputs.cs" />
|
<Compile Include="VideoStatus\VideoStatusOutputs.cs" />
|
||||||
<Compile Include="Config\Comm and IR\ComPortController.cs" />
|
|
||||||
<Compile Include="Crestron\CrestronGenericBaseDevice.cs" />
|
<Compile Include="Crestron\CrestronGenericBaseDevice.cs" />
|
||||||
<Compile Include="DeviceControlsParentInterfaces\IPresentationSource.cs" />
|
<Compile Include="DeviceControlsParentInterfaces\IPresentationSource.cs" />
|
||||||
<Compile Include="Devices\DeviceManager.cs" />
|
<Compile Include="Devices\DeviceManager.cs" />
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ using PepperDash.Essentials.Core.Config;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.DM.AirMedia
|
namespace PepperDash.Essentials.DM.AirMedia
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for an AM-200 or AM-300")]
|
||||||
public class AirMediaController : CrestronGenericBridgeableBaseDevice, IRoutingInputsOutputs, IIROutputPorts, IComPorts
|
public class AirMediaController : CrestronGenericBridgeableBaseDevice, IRoutingInputsOutputs, IIROutputPorts, IComPorts
|
||||||
{
|
{
|
||||||
public AmX00 AirMedia { get; private set; }
|
public AmX00 AirMedia { get; private set; }
|
||||||
|
|||||||
@@ -18,9 +18,7 @@ using Crestron.SimplSharpPro.DeviceSupport;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.DM.Endpoints.DGEs
|
namespace PepperDash.Essentials.DM.Endpoints.DGEs
|
||||||
{
|
{
|
||||||
/// <summary>
|
[Description("Wrapper class for DGE-100")]
|
||||||
/// Wrapper class for DGE-100 and DM-DGE-200-C
|
|
||||||
/// </summary>
|
|
||||||
public class Dge100Controller : CrestronGenericBaseDevice, IComPorts, IIROutputPorts, IHasBasicTriListWithSmartObject, ICec
|
public class Dge100Controller : CrestronGenericBaseDevice, IComPorts, IIROutputPorts, IHasBasicTriListWithSmartObject, ICec
|
||||||
{
|
{
|
||||||
private readonly Dge100 _dge;
|
private readonly Dge100 _dge;
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ namespace PepperDash.Essentials.DM.Endpoints.DGEs
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Wrapper class for DGE-100 and DM-DGE-200-C
|
/// Wrapper class for DGE-100 and DM-DGE-200-C
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper class for DM-DGE-200-C")]
|
||||||
public class DmDge200CController : Dge100Controller, IRoutingInputsOutputs
|
public class DmDge200CController : Dge100Controller, IRoutingInputsOutputs
|
||||||
{
|
{
|
||||||
private readonly DmDge200C _dge;
|
private readonly DmDge200C _dge;
|
||||||
|
|||||||
@@ -11,7 +11,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-100-S")]
|
||||||
public class DmRmc100SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
public class DmRmc100SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,7 +11,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-150-S")]
|
||||||
public class DmRmc150SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
public class DmRmc150SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,8 +12,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DmRmc200CController : DmRmcControllerBase, IRoutingInputsOutputs,
|
[Description("Wrapper Class for DM-RMC-200-C")]
|
||||||
|
public class DmRmc200CController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
private readonly DmRmc200C _rmc;
|
private readonly DmRmc200C _rmc;
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-200-S2")]
|
||||||
public class DmRmc200S2Controller : DmRmcControllerBase, IRoutingInputsOutputs,
|
public class DmRmc200S2Controller : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,8 +12,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DmRmc200SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
[Description("Wrapper Class for DM-RMC-200-S")]
|
||||||
|
public class DmRmc200SController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
private readonly DmRmc200S _rmc;
|
private readonly DmRmc200S _rmc;
|
||||||
|
|||||||
@@ -12,8 +12,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DmRmc4kScalerCController : DmRmcControllerBase, IRoutingInputsOutputs, IBasicVolumeWithFeedback,
|
[Description("Wrapper Class for DM-RMC-4K-SCALER-C")]
|
||||||
|
public class DmRmc4kScalerCController : DmRmcControllerBase, IRoutingInputsOutputs, IBasicVolumeWithFeedback,
|
||||||
IIROutputPorts, IComPorts, ICec, IRelayPorts
|
IIROutputPorts, IComPorts, ICec, IRelayPorts
|
||||||
{
|
{
|
||||||
private readonly DmRmc4kScalerC _rmc;
|
private readonly DmRmc4kScalerC _rmc;
|
||||||
|
|||||||
@@ -6,7 +6,9 @@ using PepperDash.Essentials.Core;
|
|||||||
|
|
||||||
|
|
||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
|
|
||||||
|
[Description("Wrapper Class for DM-RMC-4K-100-C-1G")]
|
||||||
public class DmRmc4k100C1GController : DmHdBaseTControllerBase, IRoutingInputsOutputs,
|
public class DmRmc4k100C1GController : DmHdBaseTControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-4K-SCALER-C-DSP")]
|
||||||
public class DmRmc4kScalerCDspController : DmRmcControllerBase, IRoutingInputsOutputs, IBasicVolumeWithFeedback,
|
public class DmRmc4kScalerCDspController : DmRmcControllerBase, IRoutingInputsOutputs, IBasicVolumeWithFeedback,
|
||||||
IIROutputPorts, IComPorts, ICec, IRelayPorts
|
IIROutputPorts, IComPorts, ICec, IRelayPorts
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ using PepperDash.Essentials.Core;
|
|||||||
using PepperDash.Essentials.Core.Bridges;
|
using PepperDash.Essentials.Core.Bridges;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper Class for DM-RMC-4K-Z-100-C")]
|
||||||
public class DmRmc4kZ100CController : DmRmcX100CController
|
public class DmRmc4kZ100CController : DmRmcX100CController
|
||||||
{
|
{
|
||||||
private readonly DmRmc4kz100C _rmc;
|
private readonly DmRmc4kz100C _rmc;
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ using PepperDash.Core;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper Class for DM-RMC-4K-Z-SCALER-C")]
|
||||||
public class DmRmc4kZScalerCController : DmRmcControllerBase, IRmcRouting,
|
public class DmRmc4kZScalerCController : DmRmcControllerBase, IRmcRouting,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,8 +12,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DmRmcScalerCController : DmRmcControllerBase, IRoutingInputsOutputs,
|
[Description("Wrapper Class for DM-RMC-SCALER-C")]
|
||||||
|
public class DmRmcScalerCController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
private readonly DmRmcScalerC _rmc;
|
private readonly DmRmcScalerC _rmc;
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-SCALER-S2")]
|
||||||
public class DmRmcScalerS2Controller : DmRmcControllerBase, IRoutingInputsOutputs,
|
public class DmRmcScalerS2Controller : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper Class for DM-RMC-SCALER-S")]
|
||||||
public class DmRmcScalerSController : DmRmcControllerBase, IRoutingInputsOutputs,
|
public class DmRmcScalerSController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,8 +11,9 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds a controller for basic DM-RMCs (both 4K and non-4K) with Com and IR ports and no control functions
|
/// Builds a controller for basic DM-RMCs (both 4K and non-4K) with Com and IR ports and no control functions
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DmRmcX100CController : DmRmcControllerBase, IRoutingInputsOutputs,
|
[Description("Wrapper Class for DM-RMC-4K-100-C & DM-RMC-100-C")]
|
||||||
|
public class DmRmcX100CController : DmRmcControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
private readonly DmRmc100C _rmc;
|
private readonly DmRmc100C _rmc;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controller class for all DM-TX-201C/S/F transmitters
|
/// Controller class for all DM-TX-201C/S/F transmitters
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("Wrapper class for DM-TX-200-C Endpoint")]
|
[Description("Wrapper class for DM-TX-200-C")]
|
||||||
public class DmTx200Controller : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
public class DmTx200Controller : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
||||||
{
|
{
|
||||||
public DmTx200C2G Tx { get; private set; }
|
public DmTx200C2G Tx { get; private set; }
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controller class for all DM-TX-201C/S/F transmitters
|
/// Controller class for all DM-TX-201C/S/F transmitters
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("Wrapper class for DM-TX-201-C Endpoint")]
|
[Description("Wrapper class for DM-TX-201-C")]
|
||||||
public class DmTx201CController : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
public class DmTx201CController : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
||||||
{
|
{
|
||||||
public DmTx201C Tx { get; private set; }
|
public DmTx201C Tx { get; private set; }
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controller class for all DM-TX-201S/F transmitters
|
/// Controller class for all DM-TX-201S/F transmitters
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Description("Wrapper class for DM-TX-201-S/F Endpoint")]
|
[Description("Wrapper class for DM-TX-201-S/F")]
|
||||||
public class DmTx201SController : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
public class DmTx201SController : DmTxControllerBase, ITxRouting, IHasFreeRun, IVgaBrightnessContrastControls
|
||||||
{
|
{
|
||||||
public DmTx201S Tx { get; private set; }
|
public DmTx201S Tx { get; private set; }
|
||||||
|
|||||||
@@ -17,8 +17,9 @@ using PepperDash.Essentials.DM.Config;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
using eVst = DmTx401C.eSourceSelection;
|
using eVst = DmTx401C.eSourceSelection;
|
||||||
|
|
||||||
|
[Description("Wrapper class for DM-TX-401-C")]
|
||||||
public class DmTx401CController : DmTxControllerBase, ITxRouting, IIROutputPorts, IComPorts, IHasFreeRun, IVgaBrightnessContrastControls
|
public class DmTx401CController : DmTxControllerBase, ITxRouting, IIROutputPorts, IComPorts, IHasFreeRun, IVgaBrightnessContrastControls
|
||||||
{
|
{
|
||||||
public DmTx401C Tx { get; private set; }
|
public DmTx401C Tx { get; private set; }
|
||||||
|
|||||||
@@ -9,8 +9,9 @@ using PepperDash.Essentials.Core.Bridges;
|
|||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
using eVst = eX02VideoSourceType;
|
using eVst = eX02VideoSourceType;
|
||||||
using eAst = eX02AudioSourceType;
|
using eAst = eX02AudioSourceType;
|
||||||
|
|
||||||
|
[Description("Wrapper class for DM-TX-4K-100-C-1G")]
|
||||||
public class DmTx4k100Controller : DmTxControllerBase, IRoutingInputsOutputs,
|
public class DmTx4k100Controller : DmTxControllerBase, IRoutingInputsOutputs,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -18,8 +18,9 @@ using PepperDash.Essentials.DM.Config;
|
|||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
||||||
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
||||||
|
|
||||||
|
[Description("Wrapper class for DM-TX-4K-202-C")]
|
||||||
public class DmTx4k202CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
public class DmTx4k202CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
||||||
IIROutputPorts, IComPorts
|
IIROutputPorts, IComPorts
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -18,8 +18,9 @@ using PepperDash.Essentials.DM.Config;
|
|||||||
namespace PepperDash.Essentials.DM
|
namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
||||||
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
||||||
|
|
||||||
|
[Description("Wrapper class for DM-TX-4K-302-C")]
|
||||||
public class DmTx4k302CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
public class DmTx4k302CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
||||||
IIROutputPorts, IComPorts, IHasFreeRun, IVgaBrightnessContrastControls
|
IIROutputPorts, IComPorts, IHasFreeRun, IVgaBrightnessContrastControls
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Controller class for all DM-TX-201C/S/F transmitters
|
/// Controller class for all DM-TX-201C/S/F transmitters
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Description("Wrapper class for DM-TX-4K-Z-100-C")]
|
||||||
public class DmTx4kz100Controller : DmTxControllerBase, IRoutingInputsOutputs, IHasFeedback,
|
public class DmTx4kz100Controller : DmTxControllerBase, IRoutingInputsOutputs, IHasFeedback,
|
||||||
IIROutputPorts, IComPorts, ICec
|
IIROutputPorts, IComPorts, ICec
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ namespace PepperDash.Essentials.DM
|
|||||||
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
using eVst = Crestron.SimplSharpPro.DeviceSupport.eX02VideoSourceType;
|
||||||
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
using eAst = Crestron.SimplSharpPro.DeviceSupport.eX02AudioSourceType;
|
||||||
|
|
||||||
|
[Description("Wrapper class for DM-TX-4K-Z-302-C")]
|
||||||
public class DmTx4kz302CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
public class DmTx4kz302CController : DmTxControllerBase, ITxRouting, IHasFeedback,
|
||||||
IIROutputPorts, IComPorts
|
IIROutputPorts, IComPorts
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using PepperDash.Essentials.Core.Bridges;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for CEN-ODT-C-POE")]
|
||||||
public class CenOdtOccupancySensorBaseController : CrestronGenericBridgeableBaseDevice, IOccupancyStatusProvider
|
public class CenOdtOccupancySensorBaseController : CrestronGenericBridgeableBaseDevice, IOccupancyStatusProvider
|
||||||
{
|
{
|
||||||
public CenOdtCPoe OccSensor { get; private set; }
|
public CenOdtCPoe OccSensor { get; private set; }
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using PepperDash.Essentials.Core.Bridges;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for Single Technology GLS Occupancy Sensors")]
|
||||||
public class GlsOccupancySensorBaseController : CrestronGenericBridgeableBaseDevice, IOccupancyStatusProvider
|
public class GlsOccupancySensorBaseController : CrestronGenericBridgeableBaseDevice, IOccupancyStatusProvider
|
||||||
{
|
{
|
||||||
public GlsOccupancySensorBase OccSensor { get; private set; }
|
public GlsOccupancySensorBase OccSensor { get; private set; }
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using PepperDash.Essentials.Core.Bridges;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
namespace PepperDash.Essentials.Devices.Common.Occupancy
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for Dual Technology GLS Occupancy Sensors")]
|
||||||
public class GlsOdtOccupancySensorController : GlsOccupancySensorBaseController
|
public class GlsOdtOccupancySensorController : GlsOccupancySensorBaseController
|
||||||
{
|
{
|
||||||
public new GlsOdtCCn OccSensor { get; private set; }
|
public new GlsOdtCCn OccSensor { get; private set; }
|
||||||
|
|||||||
@@ -15,7 +15,8 @@ using PepperDash.Essentials.Core.Routing;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common
|
namespace PepperDash.Essentials.Devices.Common
|
||||||
{
|
{
|
||||||
public class IRSetTopBoxBase : EssentialsBridgeableDevice, ISetTopBoxControls, IRoutingOutputs, IUsageTracking, IPower
|
[Description("Wrapper class for an IR Set Top Box")]
|
||||||
|
public class IRSetTopBoxBase : EssentialsBridgeableDevice, ISetTopBoxControls, IRoutingOutputs, IUsageTracking, IPower
|
||||||
{
|
{
|
||||||
public IrOutputPortController IrPort { get; private set; }
|
public IrOutputPortController IrPort { get; private set; }
|
||||||
|
|
||||||
|
|||||||
@@ -14,9 +14,9 @@ using PepperDash.Essentials.Core.Routing;
|
|||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common
|
namespace PepperDash.Essentials.Devices.Common
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for an IR-Controlled AppleTV")]
|
||||||
public class AppleTV : EssentialsBridgeableDevice, IDPad, ITransport, IUiDisplayInfo, IRoutingOutputs
|
public class AppleTV : EssentialsBridgeableDevice, IDPad, ITransport, IUiDisplayInfo, IRoutingOutputs
|
||||||
{
|
{
|
||||||
|
|
||||||
public IrOutputPortController IrPort { get; private set; }
|
public IrOutputPortController IrPort { get; private set; }
|
||||||
public const string StandardDriverName = "Apple AppleTV-v2.ir";
|
public const string StandardDriverName = "Apple AppleTV-v2.ir";
|
||||||
public uint DisplayUiType { get { return DisplayUiConstants.TypeAppleTv; } }
|
public uint DisplayUiType { get { return DisplayUiConstants.TypeAppleTv; } }
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ using PepperDash.Essentials.Core.Config;
|
|||||||
using PepperDash.Essentials.Core.Routing;
|
using PepperDash.Essentials.Core.Routing;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Devices.Common
|
namespace PepperDash.Essentials.Devices.Common
|
||||||
{
|
{
|
||||||
|
[Description("Wrapper class for an IR-Controlled Roku")]
|
||||||
public class Roku2 : EssentialsDevice, IDPad, ITransport, IUiDisplayInfo, IRoutingOutputs
|
public class Roku2 : EssentialsDevice, IDPad, ITransport, IUiDisplayInfo, IRoutingOutputs
|
||||||
{
|
{
|
||||||
[Api]
|
[Api]
|
||||||
|
|||||||
Reference in New Issue
Block a user