Skip to content

Releases: smdn/Smdn.Net.SkStackIP

Smdn.Net.SkStackIP version 1.6.0

23 Dec 12:20
Immutable release. Only release title and notes can be modified.
24f87c6

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net10.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net10.0.apilist.cs
new file mode 100644
index 0000000..38789b3
--- /dev/null
+++ b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net10.0.apilist.cs
@@ -0,0 +1,514 @@
+// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.6.0)
+//   Name: Smdn.Net.SkStackIP
+//   AssemblyVersion: 1.6.0.0
+//   InformationalVersion: 1.6.0+d432bef22ed781972661adfad84b0e1d3651e9e3
+//   TargetFramework: .NETCoreApp,Version=v10.0
+//   Configuration: Release
+//   Metadata: IsTrimmable=True
+//   Metadata: RepositoryUrl=https://github.com/smdn/Smdn.Net.SkStackIP
+//   Metadata: RepositoryBranch=main
+//   Metadata: RepositoryCommit=d432bef22ed781972661adfad84b0e1d3651e9e3
+//   Referenced assemblies:
+//     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+//     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
+//     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
+//     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
+//     System.Collections, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.ComponentModel.Primitives, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.IO.Pipelines, Version=10.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
+//     System.Linq, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Memory, Version=10.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
+//     System.Net.NetworkInformation, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Net.Primitives, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Runtime, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Threading, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+#nullable enable annotations
+
+using System;
+using System.Buffers;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics.CodeAnalysis;
+using System.IO;
+using System.IO.Pipelines;
+using System.Net;
+using System.Net.NetworkInformation;
+using System.Threading;
+using System.Threading.Tasks;
+using Microsoft.Extensions.Logging;
+using Polly;
+using Smdn.Net.SkStackIP;
+using Smdn.Net.SkStackIP.Protocol;
+
+namespace Smdn.Net.SkStackIP {
+  public enum SkStackERXUDPDataFormat : int {
+    Binary = 0,
+    HexAsciiText = 1,
+  }
+
+  public enum SkStackErrorCode : int {
+    ER01 = 1,
+    ER02 = 2,
+    ER03 = 3,
+    ER04 = 4,
+    ER05 = 5,
+    ER06 = 6,
+    ER07 = 7,
+    ER08 = 8,
+    ER09 = 9,
+    ER10 = 10,
+    Undefined = 0,
+  }
+
+  public enum SkStackEventNumber : byte {
+    ActiveScanCompleted = 34,
+    BeaconReceived = 32,
+    EchoRequestReceived = 5,
+    EnergyDetectScanCompleted = 31,
+    NeighborAdvertisementReceived = 2,
+    NeighborSolicitationReceived = 1,
+    PanaSessionEstablishmentCompleted = 37,
+    PanaSessionEstablishmentError = 36,
+    PanaSessionExpired = 41,
+    PanaSessionTerminationCompleted = 39,
+    PanaSessionTerminationRequestReceived = 38,
+    PanaSessionTerminationTimedOut = 40,
+    TransmissionTimeControlLimitationActivated = 50,
+    TransmissionTimeControlLimitationDeactivated = 51,
+    UdpSendCompleted = 33,
+    Undefined = 0,
+    WakeupSignalReceived = 192,
+  }
+
+  public enum SkStackResponseStatus : int {
+    Fail = -1,
+    Ok = 1,
+    Undetermined = 0,
+  }
+
+  public enum SkStackUdpEncryption : byte {
+    EncryptIfAble = 2,
+    ForceEncrypt = 1,
+    ForcePlainText = 0,
+  }
+
+  public enum SkStackUdpPortHandle : byte {
+    Handle1 = 1,
+    Handle2 = 2,
+    Handle3 = 3,
+    Handle4 = 4,
+    Handle5 = 5,
+    Handle6 = 6,
+    None = 0,
+  }
+
+  public abstract class SkStackActiveScanOptions : ICloneable {
+    public static SkStackActiveScanOptions Default { get; }
+    public static SkStackActiveScanOptions Null { get; }
+    public static SkStackActiveScanOptions ScanUntilFind { get; }
+
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
+    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
+    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
+    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
+
+    protected SkStackActiveScanOptions() {}
+
+    public abstract SkStackActiveScanOptions Clone();
+    public IEnumerable<int> EnumerateScanDurationFactors() {}
+    object ICloneable.Clone() {}
+  }
+
+  public class SkStackClient : IDisposable {
+    public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
+    public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
+    public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
+
+    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
+    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
+    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
+    public event EventHandler<SkStackEventArgs>? Slept;
+    public event EventHandler<SkStackEventArgs>? WokeUp;
+
+    public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
+    public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
+
+    public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
+    [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
+    public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
+    protected ILogger? Logger { get; }
+    public IPAddress? PanaSessionPeerAddress { get; }
+    public SkStackEventNumber PanaSessionState { get; }
+    public TimeSpan ReceiveResponseDelay { get; set; }
+    public TimeSpan ReceiveUdpPollingInterval { get; set; }
+    public ISynchronizeInvoke? SynchronizingObject { get; set; }
+
+    public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
+    public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackPanDescription pan, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, int channelNumber, int panId, CancellationToken cancellationToken = default) {}
+    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> pa...
Read more

Smdn.Devices.BP35XX version 2.3.0

23 Dec 12:21
Immutable release. Only release title and notes can be modified.
f1c7a8c

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net10.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net10.0.apilist.cs
new file mode 100644
index 0000000..5f027b7
--- /dev/null
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net10.0.apilist.cs
@@ -0,0 +1,122 @@
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.3.0)
+//   Name: Smdn.Devices.BP35XX
+//   AssemblyVersion: 2.3.0.0
+//   InformationalVersion: 2.3.0+d432bef22ed781972661adfad84b0e1d3651e9e3
+//   TargetFramework: .NETCoreApp,Version=v10.0
+//   Configuration: Release
+//   Metadata: IsTrimmable=True
+//   Metadata: RepositoryUrl=https://github.com/smdn/Smdn.Net.SkStackIP
+//   Metadata: RepositoryBranch=main
+//   Metadata: RepositoryCommit=d432bef22ed781972661adfad84b0e1d3651e9e3
+//   Referenced assemblies:
+//     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+//     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+//     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
+//     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
+//     System.ComponentModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
+//     System.Memory, Version=10.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
+//     System.Net.NetworkInformation, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Net.Primitives, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+//     System.Runtime, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+#nullable enable annotations
+
+using System;
+using System.IO;
+using System.Net;
+using System.Net.NetworkInformation;
+using System.Threading;
+using System.Threading.Tasks;
+using Smdn.Devices.BP35XX;
+using Smdn.Net.SkStackIP;
+
+namespace Smdn.Devices.BP35XX {
+  public interface IBP35SerialPortStreamFactory : IDisposable {
+    Stream CreateSerialPortStream(string? serialPortName);
+  }
+
+  public enum BP35UartBaudRate : byte {
+    Baud115200 = 0,
+    Baud19200 = 4,
+    Baud2400 = 1,
+    Baud38400 = 5,
+    Baud4800 = 2,
+    Baud57600 = 6,
+    Baud9600 = 3,
+  }
+
+  public enum BP35UartCharacterInterval : byte {
+    Microseconds100 = 16,
+    Microseconds200 = 32,
+    Microseconds300 = 48,
+    Microseconds400 = 64,
+    Microseconds50 = 80,
+    None = 0,
+  }
+
+  public enum BP35UartFlowControl : byte {
+    Disabled = 0,
+    Enabled = 128,
+  }
+
+  public enum BP35UdpReceiveDataFormat : byte {
+    Binary = 0,
+    HexAscii = 1,
+  }
+
+  public class BP35A1 : BP35Base {
+    [Obsolete("Use BP35A1Options instead.")]
+    public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
+    public static ValueTask<BP35A1> CreateAsync(BP35A1Options options, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
+    public static ValueTask<BP35A1> CreateAsync(string? serialPortName, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
+  }
+
+  [Obsolete("Use BP35A1Options instead.")]
+  public sealed class BP35A1Configurations : BP35A1Options {
+    public BP35A1Configurations() {}
+  }
+
+  public class BP35A1Options {
+    public BP35A1Options() {}
+
+    public BP35UartBaudRate BaudRate { get; set; }
+    public string? SerialPortName { get; set; }
+    public bool TryLoadFlashMemory { get; set; }
+    public bool UseFlowControl { get; set; }
+
+    public BP35A1Options Configure(BP35A1Options baseOptions) {}
+  }
+
+  public abstract class BP35Base : SkStackClient {
+    public IPAddress LinkLocalAddress { get; }
+    public PhysicalAddress MacAddress { get; }
+    public string RohmPassword { get; }
+    public string RohmUserId { get; }
+    public string SkStackAppVersion { get; }
+    public Version SkStackVersion { get; }
+
+    public async ValueTask<BP35UartConfigurations> GetUartOptionsAsync(CancellationToken cancellationToken = default) {}
+    public async ValueTask<BP35UdpReceiveDataFormat> GetUdpDataFormatAsync(CancellationToken cancellationToken = default) {}
+    public ValueTask SetUartOptionsAsync(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval = BP35UartCharacterInterval.None, BP35UartFlowControl flowControl = BP35UartFlowControl.Disabled, CancellationToken cancellationToken = default) {}
+    public ValueTask SetUartOptionsAsync(BP35UartConfigurations uartConfigurations, CancellationToken cancellationToken = default) {}
+    public ValueTask SetUdpDataFormatAsync(BP35UdpReceiveDataFormat format, CancellationToken cancellationToken = default) {}
+  }
+
+  public class BP35SerialPortException : IOException {
+    public BP35SerialPortException() {}
+    public BP35SerialPortException(string message) {}
+    public BP35SerialPortException(string message, Exception? innerException = null) {}
+  }
+
+  public readonly struct BP35UartConfigurations {
+    public BP35UartConfigurations(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval, BP35UartFlowControl flowControl) {}
+
+    public BP35UartBaudRate BaudRate { get; }
+    public BP35UartCharacterInterval CharacterInterval { get; }
+    public BP35UartFlowControl FlowControl { get; }
+
+    public void Deconstruct(out BP35UartBaudRate baudRate, out BP35UartCharacterInterval characterInterval, out BP35UartFlowControl flowControl) {}
+  }
+}
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.7.1.0.
+// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.5.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
index 4c75d7e..875f406 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
@@ -1,118 +1,122 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.2.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.3.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 2.2.0.0
-//   InformationalVersion: 2.2.0+be87e7d6640b81d5e5e0c22af1c2491d40cd8c28
+//   AssemblyVersion: 2.3.0.0
+//   InformationalVersion: 2.3.0+d432bef22ed781972661adfad84b0e1d3651e9e3
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
+//   Metadata: IsTrimmable=True
+//   Metadata: RepositoryUrl=https://github.com/smdn/Smdn.Net.SkStackIP
+//   Metadata: RepositoryBranch=main
+//   Metadata: RepositoryCommit=d432bef22ed781972661adfad84b0e1d3651e9e3
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
   public interface IBP35SerialPortStreamFactory : IDisposable {
     Stream CreateSerialPortStream(string? serialPortName);
   }
 
   public enum BP35UartBaudRate : byte {
     Baud115200 = 0,
     Baud19200 = 4,
     Baud2400 = 1,
     Baud38400 = 5,
     Baud4800 = 2,
     Baud57600 = 6,
     Baud9600 = 3,
   }
 
   public enum BP35UartCharacterInterval : byte {
     Microseconds100 = 16,
     Microseconds200 = 32,
     Microseconds300 = 48,
     Microseconds400 = 64,
     Microseconds50 = 80,
     None = 0,
   }
 
   public enum BP35UartFlowControl : byte {
     Disabled = 0,
     Enabled = 128,
   }
 
   public enum BP35UdpReceiveDataFormat : byte {
     Binary = 0,
     HexAscii = 1,
   }
 
   public class BP35A1 : BP35Base {
     [Obsolete("Use BP35A1Options instead."...
Read more

Smdn.Net.SkStackIP version 1.5.2

23 Jun 11:47
906c5ea

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
index e890ee7..88d40c4 100644
--- a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
@@ -1,510 +1,510 @@
-// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.5.1)
+// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.5.2)
 //   Name: Smdn.Net.SkStackIP
-//   AssemblyVersion: 1.5.1.0
-//   InformationalVersion: 1.5.1+4e659267f00877b910ce282f3bebfb7dcb3e61a9
+//   AssemblyVersion: 1.5.2.0
+//   InformationalVersion: 1.5.2+e20e0c7c296fb514b9b1ed1a62fa9dbb6ecce93f
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
 //     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ComponentModel.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Pipelines, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.Buffers;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Diagnostics.CodeAnalysis;
 using System.IO;
 using System.IO.Pipelines;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Microsoft.Extensions.Logging;
 using Polly;
 using Smdn.Net.SkStackIP;
 using Smdn.Net.SkStackIP.Protocol;
 
 namespace Smdn.Net.SkStackIP {
   public enum SkStackERXUDPDataFormat : int {
     Binary = 0,
     HexAsciiText = 1,
   }
 
   public enum SkStackErrorCode : int {
     ER01 = 1,
     ER02 = 2,
     ER03 = 3,
     ER04 = 4,
     ER05 = 5,
     ER06 = 6,
     ER07 = 7,
     ER08 = 8,
     ER09 = 9,
     ER10 = 10,
     Undefined = 0,
   }
 
   public enum SkStackEventNumber : byte {
     ActiveScanCompleted = 34,
     BeaconReceived = 32,
     EchoRequestReceived = 5,
     EnergyDetectScanCompleted = 31,
     NeighborAdvertisementReceived = 2,
     NeighborSolicitationReceived = 1,
     PanaSessionEstablishmentCompleted = 37,
     PanaSessionEstablishmentError = 36,
     PanaSessionExpired = 41,
     PanaSessionTerminationCompleted = 39,
     PanaSessionTerminationRequestReceived = 38,
     PanaSessionTerminationTimedOut = 40,
     TransmissionTimeControlLimitationActivated = 50,
     TransmissionTimeControlLimitationDeactivated = 51,
     UdpSendCompleted = 33,
     Undefined = 0,
     WakeupSignalReceived = 192,
   }
 
   public enum SkStackResponseStatus : int {
     Fail = -1,
     Ok = 1,
     Undetermined = 0,
   }
 
   public enum SkStackUdpEncryption : byte {
     EncryptIfAble = 2,
     ForceEncrypt = 1,
     ForcePlainText = 0,
   }
 
   public enum SkStackUdpPortHandle : byte {
     Handle1 = 1,
     Handle2 = 2,
     Handle3 = 3,
     Handle4 = 4,
     Handle5 = 5,
     Handle6 = 6,
     None = 0,
   }
 
   public abstract class SkStackActiveScanOptions : ICloneable {
     public static SkStackActiveScanOptions Default { get; }
     public static SkStackActiveScanOptions Null { get; }
     public static SkStackActiveScanOptions ScanUntilFind { get; }
 
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
 
     protected SkStackActiveScanOptions() {}
 
     public abstract SkStackActiveScanOptions Clone();
     public IEnumerable<int> EnumerateScanDurationFactors() {}
     object ICloneable.Clone() {}
   }
 
   public class SkStackClient : IDisposable {
     public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
     public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
     public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
 
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
     public event EventHandler<SkStackEventArgs>? Slept;
     public event EventHandler<SkStackEventArgs>? WokeUp;
 
     public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
     public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
 
     public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
     [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
     public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
     protected ILogger? Logger { get; }
     public IPAddress? PanaSessionPeerAddress { get; }
     public SkStackEventNumber PanaSessionState { get; }
     public TimeSpan ReceiveResponseDelay { get; set; }
     public TimeSpan ReceiveUdpPollingInterval { get; set; }
     public ISynchronizeInvoke? SynchronizingObject { get; set; }
 
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackPanDescription pan, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, int channelNumber, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, Physi...
Read more

Smdn.Net.SkStackIP version 1.5.1

21 Jun 11:18
d122ba6

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
index f8132cb..e890ee7 100644
--- a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net8.0.apilist.cs
@@ -1,509 +1,510 @@
-// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.5.0)
+// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.5.1)
 //   Name: Smdn.Net.SkStackIP
-//   AssemblyVersion: 1.5.0.0
-//   InformationalVersion: 1.5.0+631c22046275c09f042cc7f5d6d1e8d6af6500d7
+//   AssemblyVersion: 1.5.1.0
+//   InformationalVersion: 1.5.1+4e659267f00877b910ce282f3bebfb7dcb3e61a9
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
 //     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ComponentModel.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Pipelines, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.Buffers;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Diagnostics.CodeAnalysis;
 using System.IO;
 using System.IO.Pipelines;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Microsoft.Extensions.Logging;
 using Polly;
 using Smdn.Net.SkStackIP;
 using Smdn.Net.SkStackIP.Protocol;
 
 namespace Smdn.Net.SkStackIP {
   public enum SkStackERXUDPDataFormat : int {
     Binary = 0,
     HexAsciiText = 1,
   }
 
   public enum SkStackErrorCode : int {
     ER01 = 1,
     ER02 = 2,
     ER03 = 3,
     ER04 = 4,
     ER05 = 5,
     ER06 = 6,
     ER07 = 7,
     ER08 = 8,
     ER09 = 9,
     ER10 = 10,
     Undefined = 0,
   }
 
   public enum SkStackEventNumber : byte {
     ActiveScanCompleted = 34,
     BeaconReceived = 32,
     EchoRequestReceived = 5,
     EnergyDetectScanCompleted = 31,
     NeighborAdvertisementReceived = 2,
     NeighborSolicitationReceived = 1,
     PanaSessionEstablishmentCompleted = 37,
     PanaSessionEstablishmentError = 36,
     PanaSessionExpired = 41,
     PanaSessionTerminationCompleted = 39,
     PanaSessionTerminationRequestReceived = 38,
     PanaSessionTerminationTimedOut = 40,
     TransmissionTimeControlLimitationActivated = 50,
     TransmissionTimeControlLimitationDeactivated = 51,
     UdpSendCompleted = 33,
     Undefined = 0,
     WakeupSignalReceived = 192,
   }
 
   public enum SkStackResponseStatus : int {
     Fail = -1,
     Ok = 1,
     Undetermined = 0,
   }
 
   public enum SkStackUdpEncryption : byte {
     EncryptIfAble = 2,
     ForceEncrypt = 1,
     ForcePlainText = 0,
   }
 
   public enum SkStackUdpPortHandle : byte {
     Handle1 = 1,
     Handle2 = 2,
     Handle3 = 3,
     Handle4 = 4,
     Handle5 = 5,
     Handle6 = 6,
     None = 0,
   }
 
   public abstract class SkStackActiveScanOptions : ICloneable {
     public static SkStackActiveScanOptions Default { get; }
     public static SkStackActiveScanOptions Null { get; }
     public static SkStackActiveScanOptions ScanUntilFind { get; }
 
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
 
     protected SkStackActiveScanOptions() {}
 
     public abstract SkStackActiveScanOptions Clone();
     public IEnumerable<int> EnumerateScanDurationFactors() {}
     object ICloneable.Clone() {}
   }
 
   public class SkStackClient : IDisposable {
     public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
     public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
     public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
 
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
     public event EventHandler<SkStackEventArgs>? Slept;
     public event EventHandler<SkStackEventArgs>? WokeUp;
 
     public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
     public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
 
     public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
     [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
     public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
     protected ILogger? Logger { get; }
     public IPAddress? PanaSessionPeerAddress { get; }
     public SkStackEventNumber PanaSessionState { get; }
     public TimeSpan ReceiveResponseDelay { get; set; }
     public TimeSpan ReceiveUdpPollingInterval { get; set; }
     public ISynchronizeInvoke? SynchronizingObject { get; set; }
 
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackPanDescription pan, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, int channelNumber, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, PhysicalAddress paaMacAddress, int channelNumber, int pan...
Read more

Smdn.Net.SkStackIP version 1.5.0

21 Jun 10:50
7644354

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
deleted file mode 100644
index 8058356..0000000
--- a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
+++ /dev/null
@@ -1,482 +0,0 @@
-// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.4.0)
-//   Name: Smdn.Net.SkStackIP
-//   AssemblyVersion: 1.4.0.0
-//   InformationalVersion: 1.4.0+0042217f1f00329fae1eb89b19f6739d41ff5b21
-//   TargetFramework: .NETCoreApp,Version=v6.0
-//   Configuration: Release
-//   Referenced assemblies:
-//     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
-//     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
-//     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
-//     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
-//     System.Collections, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.ComponentModel.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.IO.Pipelines, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
-//     System.Linq, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
-//     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.ObjectModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Runtime.InteropServices, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Threading, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-#nullable enable annotations
-
-using System;
-using System.Buffers;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Diagnostics.CodeAnalysis;
-using System.IO;
-using System.IO.Pipelines;
-using System.Net;
-using System.Net.NetworkInformation;
-using System.Threading;
-using System.Threading.Tasks;
-using Microsoft.Extensions.Logging;
-using Polly;
-using Smdn.Net.SkStackIP;
-using Smdn.Net.SkStackIP.Protocol;
-
-namespace Smdn.Net.SkStackIP {
-  public enum SkStackERXUDPDataFormat : int {
-    Binary = 0,
-    HexAsciiText = 1,
-  }
-
-  public enum SkStackErrorCode : int {
-    ER01 = 1,
-    ER02 = 2,
-    ER03 = 3,
-    ER04 = 4,
-    ER05 = 5,
-    ER06 = 6,
-    ER07 = 7,
-    ER08 = 8,
-    ER09 = 9,
-    ER10 = 10,
-    Undefined = 0,
-  }
-
-  public enum SkStackEventNumber : byte {
-    ActiveScanCompleted = 34,
-    BeaconReceived = 32,
-    EchoRequestReceived = 5,
-    EnergyDetectScanCompleted = 31,
-    NeighborAdvertisementReceived = 2,
-    NeighborSolicitationReceived = 1,
-    PanaSessionEstablishmentCompleted = 37,
-    PanaSessionEstablishmentError = 36,
-    PanaSessionExpired = 41,
-    PanaSessionTerminationCompleted = 39,
-    PanaSessionTerminationRequestReceived = 38,
-    PanaSessionTerminationTimedOut = 40,
-    TransmissionTimeControlLimitationActivated = 50,
-    TransmissionTimeControlLimitationDeactivated = 51,
-    UdpSendCompleted = 33,
-    Undefined = 0,
-    WakeupSignalReceived = 192,
-  }
-
-  public enum SkStackResponseStatus : int {
-    Fail = -1,
-    Ok = 1,
-    Undetermined = 0,
-  }
-
-  public enum SkStackUdpEncryption : byte {
-    EncryptIfAble = 2,
-    ForceEncrypt = 1,
-    ForcePlainText = 0,
-  }
-
-  public enum SkStackUdpPortHandle : byte {
-    Handle1 = 1,
-    Handle2 = 2,
-    Handle3 = 3,
-    Handle4 = 4,
-    Handle5 = 5,
-    Handle6 = 6,
-    None = 0,
-  }
-
-  public abstract class SkStackActiveScanOptions : ICloneable {
-    public static SkStackActiveScanOptions Default { get; }
-    public static SkStackActiveScanOptions Null { get; }
-    public static SkStackActiveScanOptions ScanUntilFind { get; }
-
-    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
-    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
-    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
-    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
-    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
-    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
-
-    protected SkStackActiveScanOptions() {}
-
-    public abstract SkStackActiveScanOptions Clone();
-    public IEnumerable<int> EnumerateScanDurationFactors() {}
-    object ICloneable.Clone() {}
-  }
-
-  public class SkStackClient : IDisposable {
-    public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
-    public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
-    public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
-
-    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
-    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
-    public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
-    public event EventHandler<SkStackEventArgs>? Slept;
-    public event EventHandler<SkStackEventArgs>? WokeUp;
-
-    public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
-    public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
-
-    public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
-    [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
-    public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
-    protected ILogger? Logger { get; }
-    public IPAddress? PanaSessionPeerAddress { get; }
-    public TimeSpan ReceiveResponseDelay { get; set; }
-    public TimeSpan ReceiveUdpPollingInterval { get; set; }
-    public ISynchronizeInvoke? SynchronizingObject { get; set; }
-
-    public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
-    public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
-    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
-    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
-    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
-    public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBI...
Read more

Smdn.Devices.BP35XX version 2.2.0

06 Jun 11:44
1a35840

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
deleted file mode 100644
index d8acbb6..0000000
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.1.0)
-//   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 2.1.0.0
-//   InformationalVersion: 2.1.0+fc01bab8c6330c41db1ce6309f8f5f79b42b2785
-//   TargetFramework: .NETCoreApp,Version=v6.0
-//   Configuration: Release
-//   Referenced assemblies:
-//     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
-//     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
-//     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
-//     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
-//     System.ComponentModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
-//     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
-//     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-//     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-#nullable enable annotations
-
-using System;
-using System.IO;
-using System.Net;
-using System.Net.NetworkInformation;
-using System.Threading;
-using System.Threading.Tasks;
-using Smdn.Devices.BP35XX;
-using Smdn.Net.SkStackIP;
-
-namespace Smdn.Devices.BP35XX {
-  public interface IBP35SerialPortStreamFactory : IDisposable {
-    Stream CreateSerialPortStream(string? serialPortName);
-  }
-
-  public enum BP35UartBaudRate : byte {
-    Baud115200 = 0,
-    Baud19200 = 4,
-    Baud2400 = 1,
-    Baud38400 = 5,
-    Baud4800 = 2,
-    Baud57600 = 6,
-    Baud9600 = 3,
-  }
-
-  public enum BP35UartCharacterInterval : byte {
-    Microseconds100 = 16,
-    Microseconds200 = 32,
-    Microseconds300 = 48,
-    Microseconds400 = 64,
-    Microseconds50 = 80,
-    None = 0,
-  }
-
-  public enum BP35UartFlowControl : byte {
-    Disabled = 0,
-    Enabled = 128,
-  }
-
-  public enum BP35UdpReceiveDataFormat : byte {
-    Binary = 0,
-    HexAscii = 1,
-  }
-
-  public class BP35A1 : BP35Base {
-    public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
-    public static ValueTask<BP35A1> CreateAsync(string? serialPortName, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
-  }
-
-  public sealed class BP35A1Configurations {
-    public BP35A1Configurations() {}
-
-    public BP35UartBaudRate BaudRate { get; set; }
-    public string? SerialPortName { get; set; }
-    public bool TryLoadFlashMemory { get; set; }
-    public bool UseFlowControl { get; set; }
-  }
-
-  public abstract class BP35Base : SkStackClient {
-    public IPAddress LinkLocalAddress { get; }
-    public PhysicalAddress MacAddress { get; }
-    public string RohmPassword { get; }
-    public string RohmUserId { get; }
-    public string SkStackAppVersion { get; }
-    public Version SkStackVersion { get; }
-
-    public async ValueTask<BP35UartConfigurations> GetUartOptionsAsync(CancellationToken cancellationToken = default) {}
-    public async ValueTask<BP35UdpReceiveDataFormat> GetUdpDataFormatAsync(CancellationToken cancellationToken = default) {}
-    public ValueTask SetUartOptionsAsync(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval = BP35UartCharacterInterval.None, BP35UartFlowControl flowControl = BP35UartFlowControl.Disabled, CancellationToken cancellationToken = default) {}
-    public ValueTask SetUartOptionsAsync(BP35UartConfigurations uartConfigurations, CancellationToken cancellationToken = default) {}
-    public ValueTask SetUdpDataFormatAsync(BP35UdpReceiveDataFormat format, CancellationToken cancellationToken = default) {}
-  }
-
-  public class BP35SerialPortException : IOException {
-    public BP35SerialPortException() {}
-    public BP35SerialPortException(string message) {}
-    public BP35SerialPortException(string message, Exception? innerException = null) {}
-  }
-
-  public readonly struct BP35UartConfigurations {
-    public BP35UartConfigurations(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval, BP35UartFlowControl flowControl) {}
-
-    public BP35UartBaudRate BaudRate { get; }
-    public BP35UartCharacterInterval CharacterInterval { get; }
-    public BP35UartFlowControl FlowControl { get; }
-
-    public void Deconstruct(out BP35UartBaudRate baudRate, out BP35UartCharacterInterval characterInterval, out BP35UartFlowControl flowControl) {}
-  }
-}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.4.1.0.
-// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.3.1.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
index 5031fcc..485dfe4 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
@@ -1,109 +1,118 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.1.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.2.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 2.1.0.0
-//   InformationalVersion: 2.1.0+fc01bab8c6330c41db1ce6309f8f5f79b42b2785
+//   AssemblyVersion: 2.2.0.0
+//   InformationalVersion: 2.2.0+be87e7d6640b81d5e5e0c22af1c2491d40cd8c28
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
   public interface IBP35SerialPortStreamFactory : IDisposable {
     Stream CreateSerialPortStream(string? serialPortName);
   }
 
   public enum BP35UartBaudRate : byte {
     Baud115200 = 0,
     Baud19200 = 4,
     Baud2400 = 1,
     Baud38400 = 5,
     Baud4800 = 2,
     Baud57600 = 6,
     Baud9600 = 3,
   }
 
   public enum BP35UartCharacterInterval : byte {
     Microseconds100 = 16,
     Microseconds200 = 32,
     Microseconds300 = 48,
     Microseconds400 = 64,
     Microseconds50 = 80,
     None = 0,
   }
 
   public enum BP35UartFlowControl : byte {
     Disabled = 0,
     Enabled = 128,
   }
 
   public enum BP35UdpReceiveDataFormat : byte {
     Binary = 0,
     HexAscii = 1,
   }
 
   public class BP35A1 : BP35Base {
+    [Obsolete("Use BP35A1Options instead.")]
     public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
+    public static ValueTask<BP35A1> CreateAsync(BP35A1Options options, IServiceProvider? serviceProvi...
Read more

Smdn.Devices.BP35XX version 2.1.0

14 Nov 14:40
3688416

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
index 804d164..d8acbb6 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
@@ -1,103 +1,109 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.0.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.1.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 2.0.0.0
-//   InformationalVersion: 2.0.0+ef185af5c73268aab02d6909202fffce4560122b
+//   AssemblyVersion: 2.1.0.0
+//   InformationalVersion: 2.1.0+fc01bab8c6330c41db1ce6309f8f5f79b42b2785
 //   TargetFramework: .NETCoreApp,Version=v6.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
   public interface IBP35SerialPortStreamFactory : IDisposable {
     Stream CreateSerialPortStream(string? serialPortName);
   }
 
   public enum BP35UartBaudRate : byte {
     Baud115200 = 0,
     Baud19200 = 4,
     Baud2400 = 1,
     Baud38400 = 5,
     Baud4800 = 2,
     Baud57600 = 6,
     Baud9600 = 3,
   }
 
   public enum BP35UartCharacterInterval : byte {
     Microseconds100 = 16,
     Microseconds200 = 32,
     Microseconds300 = 48,
     Microseconds400 = 64,
     Microseconds50 = 80,
     None = 0,
   }
 
   public enum BP35UartFlowControl : byte {
     Disabled = 0,
     Enabled = 128,
   }
 
   public enum BP35UdpReceiveDataFormat : byte {
     Binary = 0,
     HexAscii = 1,
   }
 
   public class BP35A1 : BP35Base {
     public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
     public static ValueTask<BP35A1> CreateAsync(string? serialPortName, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
   }
 
   public sealed class BP35A1Configurations {
     public BP35A1Configurations() {}
 
     public BP35UartBaudRate BaudRate { get; set; }
     public string? SerialPortName { get; set; }
     public bool TryLoadFlashMemory { get; set; }
     public bool UseFlowControl { get; set; }
   }
 
   public abstract class BP35Base : SkStackClient {
     public IPAddress LinkLocalAddress { get; }
     public PhysicalAddress MacAddress { get; }
     public string RohmPassword { get; }
     public string RohmUserId { get; }
     public string SkStackAppVersion { get; }
     public Version SkStackVersion { get; }
 
     public async ValueTask<BP35UartConfigurations> GetUartOptionsAsync(CancellationToken cancellationToken = default) {}
     public async ValueTask<BP35UdpReceiveDataFormat> GetUdpDataFormatAsync(CancellationToken cancellationToken = default) {}
     public ValueTask SetUartOptionsAsync(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval = BP35UartCharacterInterval.None, BP35UartFlowControl flowControl = BP35UartFlowControl.Disabled, CancellationToken cancellationToken = default) {}
     public ValueTask SetUartOptionsAsync(BP35UartConfigurations uartConfigurations, CancellationToken cancellationToken = default) {}
     public ValueTask SetUdpDataFormatAsync(BP35UdpReceiveDataFormat format, CancellationToken cancellationToken = default) {}
   }
 
+  public class BP35SerialPortException : IOException {
+    public BP35SerialPortException() {}
+    public BP35SerialPortException(string message) {}
+    public BP35SerialPortException(string message, Exception? innerException = null) {}
+  }
+
   public readonly struct BP35UartConfigurations {
     public BP35UartConfigurations(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval, BP35UartFlowControl flowControl) {}
 
     public BP35UartBaudRate BaudRate { get; }
     public BP35UartCharacterInterval CharacterInterval { get; }
     public BP35UartFlowControl FlowControl { get; }
 
     public void Deconstruct(out BP35UartBaudRate baudRate, out BP35UartCharacterInterval characterInterval, out BP35UartFlowControl flowControl) {}
   }
 }
 // API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.4.1.0.
 // Smdn.Reflection.ReverseGenerating.ListApi.Core v1.3.1.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
index f383021..5031fcc 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
@@ -1,103 +1,109 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.0.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.1.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 2.0.0.0
-//   InformationalVersion: 2.0.0+ef185af5c73268aab02d6909202fffce4560122b
+//   AssemblyVersion: 2.1.0.0
+//   InformationalVersion: 2.1.0+fc01bab8c6330c41db1ce6309f8f5f79b42b2785
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
   public interface IBP35SerialPortStreamFactory : IDisposable {
     Stream CreateSerialPortStream(string? serialPortName);
   }
 
   public enum BP35UartBaudRate : byte {
     Baud115200 = 0,
     Baud19200 = 4,
     Baud2400 = 1,
     Baud38400 = 5,
     Baud4800 = 2,
     Baud57600 = 6,
     Baud9600 = 3,
   }
 
   public enum BP35UartCharacterInterval : byte {
     Microseconds100 = 16,
     Microseconds200 = 32,
     Microseconds300 = 48,
     Microseconds400 = 64,
     Microseconds50 = 80,
     None = 0,
   }
 
   public enum BP35UartFlowControl : byte {
     Disabled = 0,
     Enabled = 128,
   }
 
   public enum BP35UdpReceiveDataFormat : byte {
     Binary = 0,
     HexAscii = 1,
   }
 
   public class BP35A1 : BP35Base {
     public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
     public static ValueTask<BP35A1> CreateAsync(string? serialPortName, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
   }
 
   public sealed class BP35A1Configurations {
     public BP35A1Configurations() {}
 
     public BP35UartBaudRate BaudRate { get; set; }
     public string? SerialPortName { get; set; }
     public bool TryLoadFlashMemory { get; set; }
     public bool UseFlowControl { get; set; }
   }
 
   public abstract class BP35Base : SkStackClient {
     public IPAddress LinkLocalAddress { get; }
     public ...
Read more

Smdn.Net.SkStackIP version 1.4.0

02 Nov 12:59
bffde8f

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
index 06cb9af..8058356 100644
--- a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
+++ b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
@@ -1,481 +1,482 @@
-// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.3.0)
+// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.4.0)
 //   Name: Smdn.Net.SkStackIP
-//   AssemblyVersion: 1.3.0.0
-//   InformationalVersion: 1.3.0+7931ab6db93341f49b92e060d48f76286ce36ded
+//   AssemblyVersion: 1.4.0.0
+//   InformationalVersion: 1.4.0+0042217f1f00329fae1eb89b19f6739d41ff5b21
 //   TargetFramework: .NETCoreApp,Version=v6.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
 //     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     System.Collections, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ComponentModel.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Pipelines, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Linq, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ObjectModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime.InteropServices, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Threading, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.Buffers;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Diagnostics.CodeAnalysis;
 using System.IO;
 using System.IO.Pipelines;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Microsoft.Extensions.Logging;
 using Polly;
 using Smdn.Net.SkStackIP;
 using Smdn.Net.SkStackIP.Protocol;
 
 namespace Smdn.Net.SkStackIP {
   public enum SkStackERXUDPDataFormat : int {
     Binary = 0,
     HexAsciiText = 1,
   }
 
   public enum SkStackErrorCode : int {
     ER01 = 1,
     ER02 = 2,
     ER03 = 3,
     ER04 = 4,
     ER05 = 5,
     ER06 = 6,
     ER07 = 7,
     ER08 = 8,
     ER09 = 9,
     ER10 = 10,
     Undefined = 0,
   }
 
   public enum SkStackEventNumber : byte {
     ActiveScanCompleted = 34,
     BeaconReceived = 32,
     EchoRequestReceived = 5,
     EnergyDetectScanCompleted = 31,
     NeighborAdvertisementReceived = 2,
     NeighborSolicitationReceived = 1,
     PanaSessionEstablishmentCompleted = 37,
     PanaSessionEstablishmentError = 36,
     PanaSessionExpired = 41,
     PanaSessionTerminationCompleted = 39,
     PanaSessionTerminationRequestReceived = 38,
     PanaSessionTerminationTimedOut = 40,
     TransmissionTimeControlLimitationActivated = 50,
     TransmissionTimeControlLimitationDeactivated = 51,
     UdpSendCompleted = 33,
     Undefined = 0,
     WakeupSignalReceived = 192,
   }
 
   public enum SkStackResponseStatus : int {
     Fail = -1,
     Ok = 1,
     Undetermined = 0,
   }
 
   public enum SkStackUdpEncryption : byte {
     EncryptIfAble = 2,
     ForceEncrypt = 1,
     ForcePlainText = 0,
   }
 
   public enum SkStackUdpPortHandle : byte {
     Handle1 = 1,
     Handle2 = 2,
     Handle3 = 3,
     Handle4 = 4,
     Handle5 = 5,
     Handle6 = 6,
     None = 0,
   }
 
   public abstract class SkStackActiveScanOptions : ICloneable {
     public static SkStackActiveScanOptions Default { get; }
     public static SkStackActiveScanOptions Null { get; }
     public static SkStackActiveScanOptions ScanUntilFind { get; }
 
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
 
     protected SkStackActiveScanOptions() {}
 
     public abstract SkStackActiveScanOptions Clone();
+    public IEnumerable<int> EnumerateScanDurationFactors() {}
     object ICloneable.Clone() {}
   }
 
   public class SkStackClient : IDisposable {
     public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
     public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
     public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
 
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
     public event EventHandler<SkStackEventArgs>? Slept;
     public event EventHandler<SkStackEventArgs>? WokeUp;
 
     public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
     public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
 
     public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
     [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
     public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
     protected ILogger? Logger { get; }
     public IPAddress? PanaSessionPeerAddress { get; }
     public TimeSpan ReceiveResponseDelay { get; set; }
     public TimeSpan ReceiveUdpPollingInterval { get; set; }
     public ISynchronizeInvoke? SynchronizingObject { get; set; }
 
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackPanDescription pan, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, int channelNumber, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<S...
Read more

Smdn.Net.SkStackIP version 1.3.0

23 Sep 12:14
92d48d3

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
index 908f8e6..06cb9af 100644
--- a/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
+++ b/doc/api-list/Smdn.Net.SkStackIP/Smdn.Net.SkStackIP-net6.0.apilist.cs
@@ -1,476 +1,481 @@
-// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.2.0)
+// Smdn.Net.SkStackIP.dll (Smdn.Net.SkStackIP-1.3.0)
 //   Name: Smdn.Net.SkStackIP
-//   AssemblyVersion: 1.2.0.0
-//   InformationalVersion: 1.2.0+0e506f4265dfd6eb80e5f98b4486e10a5cda9d99
+//   AssemblyVersion: 1.3.0.0
+//   InformationalVersion: 1.3.0+7931ab6db93341f49b92e060d48f76286ce36ded
 //   TargetFramework: .NETCoreApp,Version=v6.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Polly.Core, Version=8.0.0.0, Culture=neutral, PublicKeyToken=c8a3ffc3f8f825cc
 //     Smdn.Fundamental.ControlPicture, Version=3.0.0.1, Culture=neutral
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     System.Collections, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ComponentModel.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Pipelines, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Linq, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.ObjectModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime.InteropServices, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Threading, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.Buffers;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Diagnostics.CodeAnalysis;
 using System.IO;
 using System.IO.Pipelines;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Microsoft.Extensions.Logging;
 using Polly;
 using Smdn.Net.SkStackIP;
 using Smdn.Net.SkStackIP.Protocol;
 
 namespace Smdn.Net.SkStackIP {
   public enum SkStackERXUDPDataFormat : int {
     Binary = 0,
     HexAsciiText = 1,
   }
 
   public enum SkStackErrorCode : int {
     ER01 = 1,
     ER02 = 2,
     ER03 = 3,
     ER04 = 4,
     ER05 = 5,
     ER06 = 6,
     ER07 = 7,
     ER08 = 8,
     ER09 = 9,
     ER10 = 10,
     Undefined = 0,
   }
 
   public enum SkStackEventNumber : byte {
     ActiveScanCompleted = 34,
     BeaconReceived = 32,
     EchoRequestReceived = 5,
     EnergyDetectScanCompleted = 31,
     NeighborAdvertisementReceived = 2,
     NeighborSolicitationReceived = 1,
     PanaSessionEstablishmentCompleted = 37,
     PanaSessionEstablishmentError = 36,
     PanaSessionExpired = 41,
     PanaSessionTerminationCompleted = 39,
     PanaSessionTerminationRequestReceived = 38,
     PanaSessionTerminationTimedOut = 40,
     TransmissionTimeControlLimitationActivated = 50,
     TransmissionTimeControlLimitationDeactivated = 51,
     UdpSendCompleted = 33,
     Undefined = 0,
     WakeupSignalReceived = 192,
   }
 
   public enum SkStackResponseStatus : int {
     Fail = -1,
     Ok = 1,
     Undetermined = 0,
   }
 
   public enum SkStackUdpEncryption : byte {
     EncryptIfAble = 2,
     ForceEncrypt = 1,
     ForcePlainText = 0,
   }
 
   public enum SkStackUdpPortHandle : byte {
     Handle1 = 1,
     Handle2 = 2,
     Handle3 = 3,
     Handle4 = 4,
     Handle5 = 5,
     Handle6 = 6,
     None = 0,
   }
 
   public abstract class SkStackActiveScanOptions : ICloneable {
     public static SkStackActiveScanOptions Default { get; }
     public static SkStackActiveScanOptions Null { get; }
     public static SkStackActiveScanOptions ScanUntilFind { get; }
 
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, PhysicalAddress paaMacAddress) {}
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, Predicate<SkStackPanDescription>? paaSelector = null) {}
+    public static SkStackActiveScanOptions Create(Func<IEnumerable<int>> scanDurationGeneratorFunc, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, PhysicalAddress paaMacAddress) {}
     public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, Predicate<SkStackPanDescription>? paaSelector = null) {}
+    public static SkStackActiveScanOptions Create(IEnumerable<int> scanDurationGenerator, uint channelMask, Predicate<SkStackPanDescription>? paaSelector = null) {}
 
     protected SkStackActiveScanOptions() {}
 
     public abstract SkStackActiveScanOptions Clone();
     object ICloneable.Clone() {}
   }
 
   public class SkStackClient : IDisposable {
     public static readonly TimeSpan SKSCANDefaultDuration; // = "00:00:00.0480000"
     public static readonly TimeSpan SKSCANMaxDuration; // = "00:02:37.2960000"
     public static readonly TimeSpan SKSCANMinDuration; // = "00:00:00.0192000"
 
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionEstablished;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionExpired;
     public event EventHandler<SkStackPanaSessionEventArgs>? PanaSessionTerminated;
     public event EventHandler<SkStackEventArgs>? Slept;
     public event EventHandler<SkStackEventArgs>? WokeUp;
 
     public SkStackClient(PipeWriter sender, PipeReader receiver, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
     public SkStackClient(Stream stream, bool leaveStreamOpen = true, SkStackERXUDPDataFormat erxudpDataFormat = SkStackERXUDPDataFormat.Binary, ILogger? logger = null) {}
 
     public SkStackERXUDPDataFormat ERXUDPDataFormat { get; protected set; }
     [MemberNotNullWhen(true, "PanaSessionPeerAddress")]
     public bool IsPanaSessionAlive { [MemberNotNullWhen(true, "PanaSessionPeerAddress")] get; }
     protected ILogger? Logger { get; }
     public IPAddress? PanaSessionPeerAddress { get; }
     public TimeSpan ReceiveResponseDelay { get; set; }
     public TimeSpan ReceiveUdpPollingInterval { get; set; }
     public ISynchronizeInvoke? SynchronizingObject { get; set; }
 
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<IReadOnlyList<SkStackPanDescription>> ActiveScanAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, PhysicalAddress paaMacAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackActiveScanOptions? scanOptions = null, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(Action<IBufferWriter<byte>> writeRBID, Action<IBufferWriter<byte>> writePassword, SkStackPanDescription pan, CancellationToken cancellationToken = default) {}
     public ValueTask<SkStackPanaSessionInfo> AuthenticateAsPanaClientAsync(ReadOnlyMemory<byte> rbid, ReadOnlyMemory<byte> password, IPAddress paaAddress, SkStackChannel channel, int panId, CancellationToken cancellationToken = default) {}
     public ValueTask<S...
Read more

Smdn.Devices.BP35XX version 2.0.0

06 Sep 12:02
d5c2d8d

Choose a tag to compare

Released package

Release notes

The full release notes are available at gist.

Change log

Change log in this release:

API changes

API changes in this release:
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
index b86796d..804d164 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net6.0.apilist.cs
@@ -1,110 +1,103 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-1.0.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.0.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 1.0.0.0
-//   InformationalVersion: 1.0.0+e4163ada5b034b45c5cc0dac179b412cf54198cd
+//   AssemblyVersion: 2.0.0.0
+//   InformationalVersion: 2.0.0+ef185af5c73268aab02d6909202fffce4560122b
 //   TargetFramework: .NETCoreApp,Version=v6.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
-  public interface IBP35Configurations {
-    BP35UartBaudRate BaudRate { get; }
-    SkStackERXUDPDataFormat ERXUDPDataFormat { get; }
-    string? SerialPortName { get; }
-    bool TryLoadFlashMemory { get; }
-  }
-
-  public interface IBP35SerialPortStreamFactory {
-    Stream CreateSerialPortStream(IBP35Configurations configurations);
+  public interface IBP35SerialPortStreamFactory : IDisposable {
+    Stream CreateSerialPortStream(string? serialPortName);
   }
 
   public enum BP35UartBaudRate : byte {
     Baud115200 = 0,
     Baud19200 = 4,
     Baud2400 = 1,
     Baud38400 = 5,
     Baud4800 = 2,
     Baud57600 = 6,
     Baud9600 = 3,
   }
 
   public enum BP35UartCharacterInterval : byte {
     Microseconds100 = 16,
     Microseconds200 = 32,
     Microseconds300 = 48,
     Microseconds400 = 64,
     Microseconds50 = 80,
     None = 0,
   }
 
   public enum BP35UartFlowControl : byte {
     Disabled = 0,
     Enabled = 128,
   }
 
   public enum BP35UdpReceiveDataFormat : byte {
     Binary = 0,
     HexAscii = 1,
   }
 
   public class BP35A1 : BP35Base {
     public static ValueTask<BP35A1> CreateAsync(BP35A1Configurations configurations, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
     public static ValueTask<BP35A1> CreateAsync(string? serialPortName, IServiceProvider? serviceProvider = null, CancellationToken cancellationToken = default) {}
   }
 
-  public sealed class BP35A1Configurations : IBP35Configurations {
+  public sealed class BP35A1Configurations {
     public BP35A1Configurations() {}
 
     public BP35UartBaudRate BaudRate { get; set; }
     public string? SerialPortName { get; set; }
-    SkStackERXUDPDataFormat IBP35Configurations.ERXUDPDataFormat { get; }
     public bool TryLoadFlashMemory { get; set; }
+    public bool UseFlowControl { get; set; }
   }
 
   public abstract class BP35Base : SkStackClient {
     public IPAddress LinkLocalAddress { get; }
     public PhysicalAddress MacAddress { get; }
     public string RohmPassword { get; }
     public string RohmUserId { get; }
     public string SkStackAppVersion { get; }
     public Version SkStackVersion { get; }
 
     public async ValueTask<BP35UartConfigurations> GetUartOptionsAsync(CancellationToken cancellationToken = default) {}
     public async ValueTask<BP35UdpReceiveDataFormat> GetUdpDataFormatAsync(CancellationToken cancellationToken = default) {}
     public ValueTask SetUartOptionsAsync(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval = BP35UartCharacterInterval.None, BP35UartFlowControl flowControl = BP35UartFlowControl.Disabled, CancellationToken cancellationToken = default) {}
     public ValueTask SetUartOptionsAsync(BP35UartConfigurations uartConfigurations, CancellationToken cancellationToken = default) {}
     public ValueTask SetUdpDataFormatAsync(BP35UdpReceiveDataFormat format, CancellationToken cancellationToken = default) {}
   }
 
   public readonly struct BP35UartConfigurations {
     public BP35UartConfigurations(BP35UartBaudRate baudRate, BP35UartCharacterInterval characterInterval, BP35UartFlowControl flowControl) {}
 
     public BP35UartBaudRate BaudRate { get; }
     public BP35UartCharacterInterval CharacterInterval { get; }
     public BP35UartFlowControl FlowControl { get; }
 
     public void Deconstruct(out BP35UartBaudRate baudRate, out BP35UartCharacterInterval characterInterval, out BP35UartFlowControl flowControl) {}
   }
 }
 // API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.4.1.0.
 // Smdn.Reflection.ReverseGenerating.ListApi.Core v1.3.1.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
index d0204eb..f383021 100644
--- a/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Devices.BP35XX/Smdn.Devices.BP35XX-net8.0.apilist.cs
@@ -1,110 +1,103 @@
-// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-1.0.0)
+// Smdn.Devices.BP35XX.dll (Smdn.Devices.BP35XX-2.0.0)
 //   Name: Smdn.Devices.BP35XX
-//   AssemblyVersion: 1.0.0.0
-//   InformationalVersion: 1.0.0+e4163ada5b034b45c5cc0dac179b412cf54198cd
+//   AssemblyVersion: 2.0.0.0
+//   InformationalVersion: 2.0.0+ef185af5c73268aab02d6909202fffce4560122b
 //   TargetFramework: .NETCoreApp,Version=v8.0
 //   Configuration: Release
 //   Referenced assemblies:
 //     Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
 //     Smdn.Fundamental.PrintableEncoding.Hexadecimal, Version=3.0.0.0, Culture=neutral
 //     Smdn.Net.SkStackIP, Version=1.0.0.0, Culture=neutral
 //     System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.IO.Ports, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Memory, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
 //     System.Net.NetworkInformation, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 //     System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 #nullable enable annotations
 
 using System;
 using System.IO;
 using System.Net;
 using System.Net.NetworkInformation;
 using System.Threading;
 using System.Threading.Tasks;
 using Smdn.Devices.BP35XX;
 using Smdn.Net.SkStackIP;
 
 namespace Smdn.Devices.BP35XX {
-  public interface IBP35Configurations {
-    BP35UartBaudRate BaudRate { get; }
-    SkStackERXUDPDataFormat ERXUDPDataFormat { get; }
-    string? SerialPortName { get; }
-    bool TryLoadFlashMemory { get; }
-  }
-
-  public interface IBP35SerialPortStreamFactory {
-    Stream CreateSerialPortStream(IBP35Configurations configurations);
+  public interface IBP35SerialPortStreamFactory : IDisposable {
+    Stream CreateSerialPortStream...
Read more