mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-16 13:15:03 +00:00
Merge pull request #303 from PepperDash/feature/Add-DinCenCn2
Add support for the DIN-CEN-CN
This commit is contained in:
@@ -118,12 +118,12 @@ namespace PepperDash.Essentials.Core.CrestronIO
|
|||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new C2nRths", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new C2nRths", parentKey);
|
||||||
return new C2nRths(cresnetId, Global.ControlSystem);
|
return new C2nRths(cresnetId, Global.ControlSystem);
|
||||||
}
|
}
|
||||||
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as ICresnetBridge;
|
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as IHasCresnetBranches;
|
||||||
|
|
||||||
if (cresnetBridge != null)
|
if (cresnetBridge != null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new C2nRths", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new C2nRths", parentKey);
|
||||||
return new C2nRths(cresnetId, cresnetBridge.Branches[branchId]);
|
return new C2nRths(cresnetId, cresnetBridge.CresnetBranches[branchId]);
|
||||||
}
|
}
|
||||||
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -0,0 +1,51 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using Crestron.SimplSharpPro;
|
||||||
|
using Crestron.SimplSharpPro.DeviceSupport;
|
||||||
|
using Crestron.SimplSharpPro.GeneralIO;
|
||||||
|
using PepperDash.Core;
|
||||||
|
using PepperDash.Essentials.Core.Config;
|
||||||
|
|
||||||
|
|
||||||
|
namespace PepperDash.Essentials.Core
|
||||||
|
{
|
||||||
|
public class DinCenCn2Controller : CrestronGenericBaseDevice, IHasCresnetBranches
|
||||||
|
{
|
||||||
|
private readonly DinCenCn2 _device;
|
||||||
|
|
||||||
|
public CrestronCollection<CresnetBranch> CresnetBranches
|
||||||
|
{
|
||||||
|
get {
|
||||||
|
return _device != null ? _device.Branches : null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public DinCenCn2Controller(string key, string name, DinCenCn2 device, DeviceConfig config)
|
||||||
|
: base(key, name, device)
|
||||||
|
{
|
||||||
|
_device = device;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class DinCenCn2ControllerFactory : EssentialsDeviceFactory<DinCenCn2Controller>
|
||||||
|
{
|
||||||
|
public DinCenCn2ControllerFactory()
|
||||||
|
{
|
||||||
|
TypeNames = new List<string>() { "dincencn2", "dincencn2poe", "din-cencn2", "din-cencn2-poe" };
|
||||||
|
}
|
||||||
|
|
||||||
|
public override EssentialsDevice BuildDevice(DeviceConfig dc)
|
||||||
|
{
|
||||||
|
Debug.Console(1, "Factory Attempting to create new C2N-RTHS Device");
|
||||||
|
|
||||||
|
var control = CommFactory.GetControlPropertiesConfig(dc);
|
||||||
|
var ipid = control.IpIdInt;
|
||||||
|
|
||||||
|
if (dc.Type.ToLower().Contains("poe"))
|
||||||
|
{
|
||||||
|
return new DinCenCn2Controller(dc.Key, dc.Name, new DinCenCn2Poe(ipid, Global.ControlSystem), dc);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new DinCenCn2Controller(dc.Key, dc.Name, new DinCenCn2(ipid, Global.ControlSystem), dc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using Crestron.SimplSharp;
|
||||||
|
using Crestron.SimplSharpPro;
|
||||||
|
using Crestron.SimplSharpPro.DeviceSupport;
|
||||||
|
|
||||||
|
namespace PepperDash.Essentials.Core
|
||||||
|
{
|
||||||
|
public interface IHasCresnetBranches
|
||||||
|
{
|
||||||
|
CrestronCollection<CresnetBranch> CresnetBranches { get; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -188,12 +188,12 @@ namespace PepperDash.Essentials.Core.CrestronIO
|
|||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new StatusSign", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new StatusSign", parentKey);
|
||||||
return new StatusSign(cresnetId, Global.ControlSystem);
|
return new StatusSign(cresnetId, Global.ControlSystem);
|
||||||
}
|
}
|
||||||
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as ICresnetBridge;
|
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as IHasCresnetBranches;
|
||||||
|
|
||||||
if (cresnetBridge != null)
|
if (cresnetBridge != null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new StatusSign", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new StatusSign", parentKey);
|
||||||
return new StatusSign(cresnetId, cresnetBridge.Branches[branchId]);
|
return new StatusSign(cresnetId, cresnetBridge.CresnetBranches[branchId]);
|
||||||
}
|
}
|
||||||
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -425,12 +425,12 @@ namespace PepperDash.Essentials.Core
|
|||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOirCCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOirCCn", parentKey);
|
||||||
return new GlsOirCCn(cresnetId, Global.ControlSystem);
|
return new GlsOirCCn(cresnetId, Global.ControlSystem);
|
||||||
}
|
}
|
||||||
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as ICresnetBridge;
|
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as IHasCresnetBranches;
|
||||||
|
|
||||||
if (cresnetBridge != null)
|
if (cresnetBridge != null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOirCCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOirCCn", parentKey);
|
||||||
return new GlsOirCCn(cresnetId, cresnetBridge.Branches[branchId]);
|
return new GlsOirCCn(cresnetId, cresnetBridge.CresnetBranches[branchId]);
|
||||||
}
|
}
|
||||||
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -184,12 +184,12 @@ namespace PepperDash.Essentials.Core
|
|||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOdtCCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOdtCCn", parentKey);
|
||||||
return new GlsOdtCCn(cresnetId, Global.ControlSystem);
|
return new GlsOdtCCn(cresnetId, Global.ControlSystem);
|
||||||
}
|
}
|
||||||
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as ICresnetBridge;
|
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as IHasCresnetBranches;
|
||||||
|
|
||||||
if (cresnetBridge != null)
|
if (cresnetBridge != null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOdtCCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsOdtCCn", parentKey);
|
||||||
return new GlsOdtCCn(cresnetId, cresnetBridge.Branches[branchId]);
|
return new GlsOdtCCn(cresnetId, cresnetBridge.CresnetBranches[branchId]);
|
||||||
}
|
}
|
||||||
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -248,12 +248,12 @@ namespace PepperDash.Essentials.Core
|
|||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsPartCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsPartCn", parentKey);
|
||||||
return new GlsPartCn(cresnetId, Global.ControlSystem);
|
return new GlsPartCn(cresnetId, Global.ControlSystem);
|
||||||
}
|
}
|
||||||
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as ICresnetBridge;
|
var cresnetBridge = DeviceManager.GetDeviceForKey(parentKey) as IHasCresnetBranches;
|
||||||
|
|
||||||
if (cresnetBridge != null)
|
if (cresnetBridge != null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsPartCn", parentKey);
|
Debug.Console(0, "Device {0} is a valid cresnet master - creating new GlsPartCn", parentKey);
|
||||||
return new GlsPartCn(cresnetId, cresnetBridge.Branches[branchId]);
|
return new GlsPartCn(cresnetId, cresnetBridge.CresnetBranches[branchId]);
|
||||||
}
|
}
|
||||||
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
Debug.Console(0, "Device {0} is not a valid cresnet master", parentKey);
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -172,6 +172,8 @@
|
|||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Crestron IO\Cards\CenCi33Controller.cs" />
|
<Compile Include="Crestron IO\Cards\CenCi33Controller.cs" />
|
||||||
<Compile Include="Crestron IO\Cards\InternalCardCageController.cs" />
|
<Compile Include="Crestron IO\Cards\InternalCardCageController.cs" />
|
||||||
|
<Compile Include="Crestron IO\DinCenCn\DinCenCnController.cs" />
|
||||||
|
<Compile Include="Crestron IO\DinCenCn\IHasCresnetBranches.cs" />
|
||||||
<Compile Include="Crestron IO\Inputs\CenIoDigIn104Controller.cs" />
|
<Compile Include="Crestron IO\Inputs\CenIoDigIn104Controller.cs" />
|
||||||
<Compile Include="Crestron IO\Inputs\GenericDigitalInputDevice.cs" />
|
<Compile Include="Crestron IO\Inputs\GenericDigitalInputDevice.cs" />
|
||||||
<Compile Include="Crestron IO\Inputs\GenericVersiportInputDevice.cs" />
|
<Compile Include="Crestron IO\Inputs\GenericVersiportInputDevice.cs" />
|
||||||
|
|||||||
Reference in New Issue
Block a user