未验证 提交 dadb7c82 编写于 作者: J Jose Perez Rodriguez 提交者: GitHub

Changes in order to make windows implementation Api compatible with Linux (#367)

* Changes in order to make windows implementation Api compatible with Linux

* Throwing PNSE on static Create method of the UnixDriver
上级 3c860db5
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System.Threading;
namespace System.Device.Gpio.Drivers
{
public class LibGpiodDriver : UnixDriver
{
public LibGpiodDriver()
{
throw new PlatformNotSupportedException();
}
public LibGpiodDriver(int gpioChip = 0)
{
throw new PlatformNotSupportedException();
}
protected internal override int PinCount => throw new PlatformNotSupportedException();
protected internal override void AddCallbackForPinValueChangedEvent(int pinNumber, PinEventTypes eventTypes, PinChangeEventHandler callback)
{
throw new PlatformNotSupportedException();
}
protected internal override void ClosePin(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override int ConvertPinNumberToLogicalNumberingScheme(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override PinMode GetPinMode(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override bool IsPinModeSupported(int pinNumber, PinMode mode)
{
throw new PlatformNotSupportedException();
}
protected internal override void OpenPin(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override PinValue Read(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override void RemoveCallbackForPinValueChangedEvent(int pinNumber, PinChangeEventHandler callback)
{
throw new PlatformNotSupportedException();
}
protected internal override void SetPinMode(int pinNumber, PinMode mode)
{
throw new PlatformNotSupportedException();
}
protected internal override WaitForEventResult WaitForEvent(int pinNumber, PinEventTypes eventTypes, CancellationToken cancellationToken)
{
throw new PlatformNotSupportedException();
}
protected internal override void Write(int pinNumber, PinValue value)
{
throw new PlatformNotSupportedException();
}
}
}
......@@ -6,5 +6,16 @@ namespace System.Device.Gpio.Drivers
{
public partial class RaspberryPi3Driver : Windows10Driver
{
protected ulong ClearRegister
{
get { throw new PlatformNotSupportedException(); }
set { throw new PlatformNotSupportedException(); }
}
protected ulong SetRegister
{
get { throw new PlatformNotSupportedException(); }
set { throw new PlatformNotSupportedException(); }
}
}
}
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System.Threading;
namespace System.Device.Gpio.Drivers
{
public class SysFsDriver : UnixDriver
{
public SysFsDriver()
{
throw new PlatformNotSupportedException();
}
protected internal override int PinCount => throw new PlatformNotSupportedException();
protected internal override void AddCallbackForPinValueChangedEvent(int pinNumber, PinEventTypes eventTypes, PinChangeEventHandler callback)
{
throw new PlatformNotSupportedException();
}
protected internal override void ClosePin(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override int ConvertPinNumberToLogicalNumberingScheme(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override PinMode GetPinMode(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override bool IsPinModeSupported(int pinNumber, PinMode mode)
{
throw new PlatformNotSupportedException();
}
protected internal override void OpenPin(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override PinValue Read(int pinNumber)
{
throw new PlatformNotSupportedException();
}
protected internal override void RemoveCallbackForPinValueChangedEvent(int pinNumber, PinChangeEventHandler callback)
{
throw new PlatformNotSupportedException();
}
protected internal override void SetPinMode(int pinNumber, PinMode mode)
{
throw new PlatformNotSupportedException();
}
protected internal override WaitForEventResult WaitForEvent(int pinNumber, PinEventTypes eventTypes, CancellationToken cancellationToken)
{
throw new PlatformNotSupportedException();
}
protected internal override void Write(int pinNumber, PinValue value)
{
throw new PlatformNotSupportedException();
}
}
}
......@@ -14,6 +14,11 @@ namespace System.Device.Gpio.Drivers
throw new PlatformNotSupportedException();
}
public static UnixDriver Create()
{
throw new PlatformNotSupportedException();
}
protected internal override int PinCount => throw new PlatformNotSupportedException();
protected override void Dispose(bool disposing)
......
......@@ -10,7 +10,7 @@ namespace System.Device.Pwm.Drivers
/// <summary>
/// A PWM driver for Windows 10 IoT.
/// </summary>
internal class Windows10PwmDriver : PwmDriver
public class Windows10PwmDriver : PwmDriver
{
private readonly Dictionary<int, Windows10PwmDriverChip> _chipMap = new Dictionary<int, Windows10PwmDriverChip>();
private readonly bool _useDefaultChip;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册