mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-04-12 12:06:58 +00:00
Adds WriteControlProperty to ReconfigurableDevice
CameraBase now uses ReconfigurableDevice
This commit is contained in:
parent
6b7c5c01f8
commit
8d215930d9
2 changed files with 24 additions and 6 deletions
|
|
@ -7,6 +7,8 @@ using Crestron.SimplSharpPro.DeviceSupport;
|
|||
using PepperDash.Core;
|
||||
using PepperDash.Essentials.Core.Bridges;
|
||||
using PepperDash.Essentials.Core.Config;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace PepperDash.Essentials.Core.Devices
|
||||
{
|
||||
|
|
@ -52,6 +54,12 @@ namespace PepperDash.Essentials.Core.Devices
|
|||
Name = config.Name;
|
||||
}
|
||||
|
||||
protected virtual void WriteControlProperty(JToken controlObject)
|
||||
{
|
||||
Config.Properties["control"] = JToken.FromObject(controlObject);
|
||||
CustomSetConfig(Config);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Used by the extending class to allow for any custom actions to be taken (tell the ConfigWriter to write config, etc)
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ using Crestron.SimplSharp.Reflection;
|
|||
using Crestron.SimplSharpPro.DeviceSupport;
|
||||
using PepperDash.Core;
|
||||
using PepperDash.Essentials.Core;
|
||||
using PepperDash.Essentials.Core.Devices;
|
||||
using PepperDash.Essentials.Core.Config;
|
||||
using PepperDash.Essentials.Core.Bridges;
|
||||
using PepperDash.Essentials.Core.Presets;
|
||||
using PepperDash.Essentials.Devices.Common.Codec;
|
||||
|
|
@ -25,7 +27,7 @@ namespace PepperDash.Essentials.Devices.Common.Cameras
|
|||
Focus = 8
|
||||
}
|
||||
|
||||
public abstract class CameraBase : EssentialsDevice, IRoutingOutputs
|
||||
public abstract class CameraBase : ReconfigurableDevice, IRoutingOutputs
|
||||
{
|
||||
public eCameraControlMode ControlMode { get; protected set; }
|
||||
|
||||
|
|
@ -70,12 +72,20 @@ namespace PepperDash.Essentials.Devices.Common.Cameras
|
|||
// A bitmasked value to indicate the movement capabilites of this camera
|
||||
protected eCameraCapabilities Capabilities { get; set; }
|
||||
|
||||
protected CameraBase(string key, string name) :
|
||||
base(key, name)
|
||||
{
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||
protected CameraBase(DeviceConfig config) : base(config)
|
||||
{
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||
|
||||
ControlMode = eCameraControlMode.Manual;
|
||||
ControlMode = eCameraControlMode.Manual;
|
||||
|
||||
}
|
||||
|
||||
protected CameraBase(string key, string name) :
|
||||
base (new DeviceConfig{Name = name, Key = key})
|
||||
{
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||
|
||||
ControlMode = eCameraControlMode.Manual;
|
||||
}
|
||||
|
||||
protected void LinkCameraToApi(CameraBase cameraDevice, BasicTriList trilist, uint joinStart, string joinMapKey,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue