Xamarin.Mac SDK API diff: 6.2.0 vs 6.4.0
mscorlib.dll
Namespace System.Buffers
Type Changed: System.Buffers.ReadOnlySequence`1
Added property:
public System.ReadOnlySpan<T> FirstSpan { get; }
Type Changed: System.Buffers.StandardFormat
Added method:
public static bool TryParse (System.ReadOnlySpan<char> format, out StandardFormat result);
New Type: System.Buffers.ArrayBufferWriter`1
public sealed class ArrayBufferWriter`1 : System.Buffers.IBufferWriter<T> {
// constructors
public ArrayBufferWriter`1 ();
public ArrayBufferWriter`1 (int initialCapacity);
// properties
public int Capacity { get; }
public int FreeCapacity { get; }
public int WrittenCount { get; }
public System.ReadOnlyMemory<T> WrittenMemory { get; }
public System.ReadOnlySpan<T> WrittenSpan { get; }
// methods
public virtual void Advance (int count);
public void Clear ();
public virtual System.Memory<T> GetMemory (int sizeHint);
public virtual System.Span<T> GetSpan (int sizeHint);
}
New Type: System.Buffers.SequenceReaderExtensions
public static class SequenceReaderExtensions {
// methods
public static bool TryReadBigEndian (ref System.Buffers.SequenceReader<byte> reader, out short value);
public static bool TryReadBigEndian (ref System.Buffers.SequenceReader<byte> reader, out int value);
public static bool TryReadBigEndian (ref System.Buffers.SequenceReader<byte> reader, out long value);
public static bool TryReadLittleEndian (ref System.Buffers.SequenceReader<byte> reader, out short value);
public static bool TryReadLittleEndian (ref System.Buffers.SequenceReader<byte> reader, out int value);
public static bool TryReadLittleEndian (ref System.Buffers.SequenceReader<byte> reader, out long value);
}
New Type: System.Buffers.SequenceReader`1
public struct SequenceReader`1 {
// constructors
public SequenceReader`1 (System.Buffers.ReadOnlySequence<T> sequence);
// properties
public long Consumed { get; }
public System.ReadOnlySpan<T> CurrentSpan { get; }
public int CurrentSpanIndex { get; }
public bool End { get; }
public long Length { get; }
public System.SequencePosition Position { get; }
public long Remaining { get; }
public System.Buffers.ReadOnlySequence<T> Sequence { get; }
public System.ReadOnlySpan<T> UnreadSpan { get; }
// methods
public void Advance (long count);
public long AdvancePast (T value);
public long AdvancePastAny (System.ReadOnlySpan<T> values);
public long AdvancePastAny (T value0, T value1);
public long AdvancePastAny (T value0, T value1, T value2);
public long AdvancePastAny (T value0, T value1, T value2, T value3);
public bool IsNext (System.ReadOnlySpan<T> next, bool advancePast);
public bool IsNext (T next, bool advancePast);
public void Rewind (long count);
public bool TryAdvanceTo (T delimiter, bool advancePastDelimiter);
public bool TryAdvanceToAny (System.ReadOnlySpan<T> delimiters, bool advancePastDelimiter);
public bool TryCopyTo (System.Span<T> destination);
public bool TryPeek (out T value);
public bool TryRead (out T value);
public bool TryReadTo (out System.Buffers.ReadOnlySequence<T> sequence, System.ReadOnlySpan<T> delimiter, bool advancePastDelimiter);
public bool TryReadTo (out System.Buffers.ReadOnlySequence<T> sequence, T delimiter, bool advancePastDelimiter);
public bool TryReadTo (out System.ReadOnlySpan<T> span, T delimiter, bool advancePastDelimiter);
public bool TryReadTo (out System.Buffers.ReadOnlySequence<T> sequence, T delimiter, T delimiterEscape, bool advancePastDelimiter);
public bool TryReadTo (out System.ReadOnlySpan<T> span, T delimiter, T delimiterEscape, bool advancePastDelimiter);
public bool TryReadToAny (out System.Buffers.ReadOnlySequence<T> sequence, System.ReadOnlySpan<T> delimiters, bool advancePastDelimiter);
public bool TryReadToAny (out System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> delimiters, bool advancePastDelimiter);
}
Namespace System.Diagnostics.CodeAnalysis
New Type: System.Diagnostics.CodeAnalysis.AllowNullAttribute
public sealed class AllowNullAttribute : System.Attribute {
// constructors
public AllowNullAttribute ();
}
New Type: System.Diagnostics.CodeAnalysis.DisallowNullAttribute
public sealed class DisallowNullAttribute : System.Attribute {
// constructors
public DisallowNullAttribute ();
}
New Type: System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute
public sealed class DoesNotReturnAttribute : System.Attribute {
// constructors
public DoesNotReturnAttribute ();
}
New Type: System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute
public sealed class DoesNotReturnIfAttribute : System.Attribute {
// constructors
public DoesNotReturnIfAttribute (bool parameterValue);
// properties
public bool ParameterValue { get; }
}
New Type: System.Diagnostics.CodeAnalysis.MaybeNullAttribute
public sealed class MaybeNullAttribute : System.Attribute {
// constructors
public MaybeNullAttribute ();
}
New Type: System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute
public sealed class MaybeNullWhenAttribute : System.Attribute {
// constructors
public MaybeNullWhenAttribute (bool returnValue);
// properties
public bool ReturnValue { get; }
}
New Type: System.Diagnostics.CodeAnalysis.NotNullAttribute
public sealed class NotNullAttribute : System.Attribute {
// constructors
public NotNullAttribute ();
}
New Type: System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute
public sealed class NotNullIfNotNullAttribute : System.Attribute {
// constructors
public NotNullIfNotNullAttribute (string parameterName);
// properties
public string ParameterName { get; }
}
New Type: System.Diagnostics.CodeAnalysis.NotNullWhenAttribute
public sealed class NotNullWhenAttribute : System.Attribute {
// constructors
public NotNullWhenAttribute (bool returnValue);
// properties
public bool ReturnValue { get; }
}
Namespace System.Runtime.InteropServices
Type Changed: System.Runtime.InteropServices.SequenceMarshal
Added method:
public static bool TryRead<T> (ref System.Buffers.SequenceReader<byte> reader, out T value);
Xamarin.Mac.dll
Namespace AppKit
Type Changed: AppKit.NSOutlineView
Added interface:
INSAccessibilityOutline
New Type: AppKit.INSAccessibilityCheckBox
public interface INSAccessibilityCheckBox : INSAccessibilityButton, INSAccessibilityElementProtocol, ObjCRuntime.INativeObject, System.IDisposable {
// properties
public virtual Foundation.NSNumber AccessibilityValue { get; }
}
New Type: AppKit.INSAccessibilityList
public interface INSAccessibilityList : INSAccessibilityElementProtocol, INSAccessibilityGroup, INSAccessibilityTable, ObjCRuntime.INativeObject, System.IDisposable {
}
New Type: AppKit.INSAccessibilityOutline
public interface INSAccessibilityOutline : INSAccessibilityElementProtocol, INSAccessibilityGroup, INSAccessibilityTable, ObjCRuntime.INativeObject, System.IDisposable {
}
Namespace AudioToolbox
Type Changed: AudioToolbox.AudioChannelBit
Added values:
CenterTopFront = 8192,
CenterTopMiddle = 2048,
LeftTopFront = 4096,
LeftTopMiddle = 2097152,
RightTopFront = 16384,
Type Changed: AudioToolbox.AudioChannelLabel
Added values:
CenterTopFront = 14,
CenterTopMiddle = 12,
LeftTopFront = 13,
LeftTopMiddle = 49,
RightTopFront = 15,
Namespace Metal
Type Changed: Metal.MTLBlitCommandEncoder_Extensions
Added methods:
public static void Copy (this IMTLBlitCommandEncoder This, IMTLTexture sourceTexture, IMTLTexture destinationTexture);
public static void Copy (this IMTLBlitCommandEncoder This, IMTLTexture sourceTexture, nuint sourceSlice, nuint sourceLevel, IMTLTexture destinationTexture, nuint destinationSlice, nuint destinationLevel, nuint sliceCount, nuint levelCount);
public static void ResolveCounters (this IMTLBlitCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, nuint destinationOffset);
public static void SampleCounters (this IMTLBlitCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);
Type Changed: Metal.MTLBuffer_Extensions
Added methods:
public static IMTLBuffer CreateRemoteBuffer (this IMTLBuffer This, IMTLDevice device);
public static IMTLBuffer GetRemoteStorageBuffer (this IMTLBuffer This);
Type Changed: Metal.MTLCaptureManager
Added methods:
public virtual bool StartCapture (MTLCaptureDescriptor descriptor, out Foundation.NSError error);
public virtual bool SupportsDestination (MTLCaptureDestination destination);
Type Changed: Metal.MTLComputeCommandEncoder_Extensions
Added method:
public static void SampleCounters (this IMTLComputeCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);
Type Changed: Metal.MTLDevice_Extensions
Added methods:
public static MTLCounterSampleBuffer CreateCounterSampleBuffer (this IMTLDevice This, MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error);
public static bool GetBarycentricCoordsSupported (this IMTLDevice This);
public static MTLCounterSet[] GetCounterSets (this IMTLDevice This);
public static bool GetHasUnifiedMemory (this IMTLDevice This);
public static MTLDeviceLocation GetLocation (this IMTLDevice This);
public static nuint GetLocationNumber (this IMTLDevice This);
public static ulong GetMaxTransferRate (this IMTLDevice This);
public static uint GetPeerCount (this IMTLDevice This);
public static ulong GetPeerGroupId (this IMTLDevice This);
public static uint GetPeerIndex (this IMTLDevice This);
public static void GetSampleTimestamps (this IMTLDevice This, nuint cpuTimestamp, nuint gpuTimestamp);
public static bool GetSupportsShaderBarycentricCoordinates (this IMTLDevice This);
public static bool SupportsFamily (this IMTLDevice This, MTLGpuFamily gpuFamily);
Type Changed: Metal.MTLHeap_Extensions
Added methods:
public static IMTLBuffer CreateBuffer (this IMTLHeap This, nuint length, MTLResourceOptions options, nuint offset);
public static IMTLTexture CreateTexture (this IMTLHeap This, MTLTextureDescriptor descriptor, nuint offset);
public static MTLHazardTrackingMode GetHazardTrackingMode (this IMTLHeap This);
public static MTLResourceOptions GetResourceOptions (this IMTLHeap This);
public static MTLHeapType GetType (this IMTLHeap This);
Type Changed: Metal.MTLRenderCommandEncoder_Extensions
Added methods:
public static void SampleCounters (this IMTLRenderCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);
public static void UseHeap (this IMTLRenderCommandEncoder This, IMTLHeap heap, MTLRenderStages stages);
public static void UseHeaps (this IMTLRenderCommandEncoder This, IMTLHeap[] heaps, nuint count, MTLRenderStages stages);
public static void UseResource (this IMTLRenderCommandEncoder This, IMTLResource resource, MTLResourceUsage usage, MTLRenderStages stages);
public static void UseResources (this IMTLRenderCommandEncoder This, IMTLResource[] resources, nuint count, MTLResourceUsage usage, MTLRenderStages stages);
Type Changed: Metal.MTLRenderPassDescriptor
Added properties:
public virtual nuint DefaultRasterSampleCount { get; set; }
public virtual nuint RenderTargetHeight { get; set; }
public virtual nuint RenderTargetWidth { get; set; }
Type Changed: Metal.MTLResource_Extensions
Added methods:
public static MTLHazardTrackingMode GetHazardTrackingMode (this IMTLResource This);
public static nuint GetHeapOffset (this IMTLResource This);
public static MTLResourceOptions GetResourceOptions (this IMTLResource This);
Type Changed: Metal.MTLSharedTextureHandle
Obsoleted constructors:
[Obsolete ("Type is not meant to be created by user code.")]
public MTLSharedTextureHandle ();
Type Changed: Metal.MTLTextureDescriptor
Added properties:
public virtual MTLHazardTrackingMode HazardTrackingMode { get; set; }
public virtual MTLTextureSwizzleChannels Swizzle { get; set; }
Type Changed: Metal.MTLTexture_Extensions
Added methods:
public static IMTLTexture Create (this IMTLTexture This, MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange, MTLTextureSwizzleChannels swizzle);
public static IMTLTexture CreateRemoteTexture (this IMTLTexture This, IMTLDevice device);
public static IMTLTexture GetRemoteStorageTexture (this IMTLTexture This);
public static MTLTextureSwizzleChannels GetSwizzle (this IMTLTexture This);
New Type: Metal.IMTLCounter
public interface IMTLCounter : ObjCRuntime.INativeObject, System.IDisposable {
// properties
public virtual string Name { get; }
}
New Type: Metal.IMTLCounterSampleBuffer
public interface IMTLCounterSampleBuffer : ObjCRuntime.INativeObject, System.IDisposable {
// properties
public virtual IMTLDevice Device { get; }
public virtual string Label { get; }
public virtual nuint SampleCount { get; }
// methods
public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range);
}
New Type: Metal.IMTLCounterSet
public interface IMTLCounterSet : ObjCRuntime.INativeObject, System.IDisposable {
// properties
public virtual IMTLCounter[] Counters { get; }
public virtual string Name { get; }
}
New Type: Metal.MTLCaptureDescriptor
public class MTLCaptureDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
// constructors
public MTLCaptureDescriptor ();
protected MTLCaptureDescriptor (Foundation.NSObjectFlag t);
protected MTLCaptureDescriptor (IntPtr handle);
// properties
public virtual Foundation.NSObject CaptureObject { get; set; }
public override IntPtr ClassHandle { get; }
public virtual MTLCaptureDestination Destination { get; set; }
public virtual Foundation.NSUrl OutputUrl { get; set; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}
New Type: Metal.MTLCaptureDestination
[Serializable]
public enum MTLCaptureDestination {
DeveloperTools = 1,
GpuTraceDocument = 2,
}
New Type: Metal.MTLCaptureError
[Serializable]
public enum MTLCaptureError {
AlreadyCapturing = 2,
InvalidDescriptor = 3,
NotSupported = 1,
}
New Type: Metal.MTLCaptureErrorExtensions
public static class MTLCaptureErrorExtensions {
// methods
public static Foundation.NSString GetDomain (this MTLCaptureError self);
}
New Type: Metal.MTLCommonCounter
[Serializable]
public enum MTLCommonCounter {
ClipperInvocations = 4,
ClipperPrimitivesOut = 5,
ComputeKernelInvocations = 8,
FragmentCycles = 13,
FragmentInvocations = 6,
FragmentsPassed = 7,
PostTessellationVertexCycles = 12,
PostTessellationVertexInvocations = 3,
RenderTargetWriteCycles = 14,
SetStageUtilization = 16,
SetStatistic = 17,
SetTimestamp = 15,
TessellationCycles = 11,
TessellationInputPatches = 1,
Timestamp = 0,
TotalCycles = 9,
VertexCycles = 10,
VertexInvocations = 2,
}
New Type: Metal.MTLCommonCounterExtensions
public static class MTLCommonCounterExtensions {
// methods
public static Foundation.NSString GetConstant (this MTLCommonCounter self);
public static MTLCommonCounter GetValue (Foundation.NSString constant);
}
New Type: Metal.MTLCounter
public abstract class MTLCounter : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounter, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
// constructors
protected MTLCounter ();
protected MTLCounter (Foundation.NSObjectFlag t);
protected MTLCounter (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual string Name { get; }
}
New Type: Metal.MTLCounterSampleBuffer
public abstract class MTLCounterSampleBuffer : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounterSampleBuffer, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
// constructors
protected MTLCounterSampleBuffer ();
protected MTLCounterSampleBuffer (Foundation.NSObjectFlag t);
protected MTLCounterSampleBuffer (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual IMTLDevice Device { get; }
public virtual string Label { get; }
public virtual nuint SampleCount { get; }
// methods
public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range);
}
New Type: Metal.MTLCounterSampleBufferDescriptor
public class MTLCounterSampleBufferDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
// constructors
public MTLCounterSampleBufferDescriptor ();
protected MTLCounterSampleBufferDescriptor (Foundation.NSObjectFlag t);
protected MTLCounterSampleBufferDescriptor (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual IMTLCounterSet CounterSet { get; set; }
public virtual string Label { get; set; }
public virtual nuint SampleCount { get; set; }
public virtual MTLStorageMode StorageMode { get; set; }
// methods
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}
New Type: Metal.MTLCounterSampleBufferError
[Serializable]
public enum MTLCounterSampleBufferError {
Internal = 1,
OutOfMemory = 0,
}
New Type: Metal.MTLCounterSampleBufferErrorExtensions
public static class MTLCounterSampleBufferErrorExtensions {
// methods
public static Foundation.NSString GetDomain (this MTLCounterSampleBufferError self);
}
New Type: Metal.MTLCounterSet
public abstract class MTLCounterSet : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounterSet, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
// constructors
protected MTLCounterSet ();
protected MTLCounterSet (Foundation.NSObjectFlag t);
protected MTLCounterSet (IntPtr handle);
// properties
public override IntPtr ClassHandle { get; }
public virtual IMTLCounter[] Counters { get; }
public virtual string Name { get; }
}
New Type: Metal.MTLDeviceLocation
[Serializable]
public enum MTLDeviceLocation {
BuiltIn = 0,
External = 2,
Slot = 1,
Unspecified = 18446744073709551615,
}
New Type: Metal.MTLGpuFamily
[Serializable]
public enum MTLGpuFamily {
Apple1 = 1001,
Apple2 = 1002,
Apple3 = 1003,
Apple4 = 1004,
Apple5 = 1005,
Common1 = 3001,
Common2 = 3002,
Common3 = 3003,
Mac1 = 2001,
Mac2 = 2002,
iOSMac1 = 4001,
iOSMac2 = 4002,
}
New Type: Metal.MTLHazardTrackingMode
[Serializable]
public enum MTLHazardTrackingMode {
Default = 0,
Tracked = 2,
Untracked = 1,
}
New Type: Metal.MTLHeapType
[Serializable]
public enum MTLHeapType {
Automatic = 0,
Placement = 1,
}
New Type: Metal.MTLTextureSwizzle
[Serializable]
public enum MTLTextureSwizzle {
Alpha = 5,
Blue = 4,
Green = 3,
One = 1,
Red = 2,
Zero = 0,
}
New Type: Metal.MTLTextureSwizzleChannels
public struct MTLTextureSwizzleChannels {
// fields
public MTLTextureSwizzle Alpha;
public MTLTextureSwizzle Blue;
public MTLTextureSwizzle Green;
public MTLTextureSwizzle Red;
}
Namespace Network
Type Changed: Network.NWAdvertiseDescriptor
Added property:
public NWTxtRecord TxtRecord { get; set; }
Type Changed: Network.NWConnection
Added method:
public void GetEstablishmentReport (CoreFoundation.DispatchQueue queue, System.Action<NWEstablishmentReport> handler);
Type Changed: Network.NWEndpoint
Added property:
public string Url { get; }
Added method:
public static NWEndpoint Create (string url);
Type Changed: Network.NWListener
Added property:
public uint ConnectionLimit { get; set; }
Type Changed: Network.NWParameters
Added property:
public bool ProhibitConstrained { get; set; }
Type Changed: Network.NWPath
Added property:
public bool IsConstrained { get; }
Added method:
public void EnumerateGateways (System.Action<NWEndpoint> callback);
Type Changed: Network.NWProtocolDefinition
Added property:
public static NWProtocolDefinition WebSocketDefinition { get; }
Type Changed: Network.NWProtocolMetadata
Added properties:
public bool IsFramerMessage { get; }
public bool IsWebSocket { get; }
Type Changed: Network.NWProtocolOptions
Added property:
public NWIPLocalAddressPreference IPLocalAddressPreference { set; }
New Type: Network.NWBrowseResult
public class NWBrowseResult : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// properties
public NWEndpoint EndPoint { get; }
public nuint InterfacesCount { get; }
public NWTxtRecord TxtRecord { get; }
// methods
public void EnumerateInterfaces (System.Action<NWInterface> handler);
public static NWBrowseResultChange GetChanges (NWBrowseResult oldResult, NWBrowseResult newResult);
}
New Type: Network.NWBrowseResultChange
[Serializable]
[Flags]
public enum NWBrowseResultChange {
Identical = 1,
InterfaceAdded = 8,
InterfaceRemoved = 16,
Invalid = 0,
ResultAdded = 2,
ResultRemoved = 4,
TxtRecordChanged = 32,
}
New Type: Network.NWBrowser
public class NWBrowser : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public NWBrowser (NWBrowserDescriptor descriptor);
public NWBrowser (NWBrowserDescriptor descriptor, NWParameters parameters);
// properties
public NWBrowserDescriptor Descriptor { get; }
public bool IsActive { get; }
public NWParameters Parameters { get; }
// methods
public void Cancel ();
public void SetChangesHandler (System.Action<NWBrowseResult,Network.NWBrowseResult> handler);
public void SetDispatchQueue (CoreFoundation.DispatchQueue queue);
public void SetStateChangesHandler (System.Action<NWBrowserState,Network.NWError> handler);
public void Start ();
}
New Type: Network.NWBrowserDescriptor
public class NWBrowserDescriptor : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// properties
public string BonjourDomain { get; }
public string BonjourType { get; }
public bool IncludeTxtRecord { get; set; }
// methods
public static NWBrowserDescriptor CreateBonjourService (string type);
public static NWBrowserDescriptor CreateBonjourService (string type, string domain);
}
New Type: Network.NWBrowserState
[Serializable]
public enum NWBrowserState {
Cancelled = 3,
Failed = 2,
Invalid = 0,
Ready = 1,
}
New Type: Network.NWDataTransferReport
public class NWDataTransferReport : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public NWDataTransferReport (NWConnection connection);
// properties
public System.TimeSpan Duration { get; }
public uint PathCount { get; }
public NWDataTransferReportState State { get; }
// methods
public void Collect (CoreFoundation.DispatchQueue queue, System.Action<NWDataTransferReport> handler);
public ulong GetApplicationReceivedByteCount (uint pathIndex);
public ulong GetApplicationSentByteCount (uint pathIndex);
public NWInterface GetInterface (uint pathIndex);
public System.TimeSpan GetTransportMinimumRoundTripTime (uint pathIndex);
public ulong GetTransportReceivedByteCount (uint pathIndex);
public ulong GetTransportReceivedDuplicateByteCount (uint pathIndex);
public ulong GetTransportReceivedIPPackageCount (uint pathIndex);
public ulong GetTransportReceivedOutOfOrderByteCount (uint pathIndex);
public ulong GetTransportRetransmittedByteCount (uint pathIndex);
public ulong GetTransportRoundTripTimeVariance (uint pathIndex);
public ulong GetTransportSentByteCount (uint pathIndex);
public ulong GetTransportSentIPPackageCount (uint pathIndex);
public System.TimeSpan GetTransportSmoothedRoundTripTime (uint pathIndex);
}
New Type: Network.NWDataTransferReportState
[Serializable]
public enum NWDataTransferReportState {
Collected = 2,
Collecting = 1,
}
New Type: Network.NWEstablishmentReport
public class NWEstablishmentReport : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// properties
public System.TimeSpan ConnectionSetupTime { get; }
public System.TimeSpan Duration { get; }
public uint PreviousAttemptCount { get; }
public bool ProxyConfigured { get; }
public NWEndpoint ProxyEndpoint { get; }
public bool UsedProxy { get; }
// methods
public void EnumerateProtocols (System.Action<NWProtocolDefinition,System.TimeSpan,System.TimeSpan> handler);
public void EnumerateResolutions (System.Action<NWReportResolutionSource,System.TimeSpan,System.Int32,Network.NWEndpoint,Network.NWEndpoint> handler);
}
New Type: Network.NWFramer
public class NWFramer : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
}
New Type: Network.NWIPLocalAddressPreference
[Serializable]
public enum NWIPLocalAddressPreference {
Default = 0,
Stable = 2,
Temporary = 1,
}
New Type: Network.NWReportResolutionSource
[Serializable]
public enum NWReportResolutionSource {
Cache = 2,
ExpiredCache = 3,
Query = 1,
}
New Type: Network.NWTxtRecord
public class NWTxtRecord : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// properties
public bool IsDictionary { get; }
public long KeyCount { get; }
// methods
public bool Add (string key);
public bool Add (string key, System.ReadOnlySpan<byte> value);
public bool Add (string key, string value);
public bool Apply (NWTxtRecord.NWTxtRecordApplyDelegate handler);
public NWTxtRecord Clone ();
public static NWTxtRecord CreateDictionary ();
public bool Equals (NWTxtRecord other);
public NWTxtRecordFindKey FindKey (string key);
public static NWTxtRecord FromBytes (System.ReadOnlySpan<byte> bytes);
public bool GetRawBytes (NWTxtRecord.NWTxtRecordGetRawByteDelegate handler);
public bool GetValue (string key, NWTxtRecord.NWTxtRecordGetValueDelegete handler);
public bool Remove (string key);
// inner types
public sealed delegate NWTxtRecordApplyDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public NWTxtRecord.NWTxtRecordApplyDelegate (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (string key, NWTxtRecordFindKey rersult, System.ReadOnlySpan<byte> value, System.AsyncCallback callback, object object);
public virtual void EndInvoke (System.IAsyncResult result);
public virtual void Invoke (string key, NWTxtRecordFindKey rersult, System.ReadOnlySpan<byte> value);
}
public sealed delegate NWTxtRecordGetRawByteDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public NWTxtRecord.NWTxtRecordGetRawByteDelegate (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (System.ReadOnlySpan<byte> value, System.AsyncCallback callback, object object);
public virtual void EndInvoke (System.IAsyncResult result);
public virtual void Invoke (System.ReadOnlySpan<byte> value);
}
public sealed delegate NWTxtRecordGetValueDelegete : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
// constructors
public NWTxtRecord.NWTxtRecordGetValueDelegete (object object, IntPtr method);
// methods
public virtual System.IAsyncResult BeginInvoke (string key, NWTxtRecordFindKey result, System.ReadOnlySpan<byte> value, System.AsyncCallback callback, object object);
public virtual void EndInvoke (System.IAsyncResult result);
public virtual void Invoke (string key, NWTxtRecordFindKey result, System.ReadOnlySpan<byte> value);
}
}
New Type: Network.NWTxtRecordFindKey
[Serializable]
public enum NWTxtRecordFindKey {
EmptyValue = 3,
Invalid = 0,
NoValue = 2,
NonEmptyValue = 4,
NotPresent = 1,
}
New Type: Network.NWWebSocketCloseCode
[Serializable]
public enum NWWebSocketCloseCode {
AbnormalClosure = 1006,
GoingAway = 1001,
InternalServerError = 1011,
InvalidFramePayloadData = 1007,
MandatoryExtension = 1010,
MessageTooBig = 1009,
NoStatusReceived = 1005,
NormalClosure = 1000,
PolicyViolation = 1008,
ProtocolError = 1002,
TlsHandshake = 1015,
UnsupportedData = 1003,
}
New Type: Network.NWWebSocketMetadata
public class NWWebSocketMetadata : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public NWWebSocketMetadata (NWWebSocketOpCode opcode);
// properties
public NWWebSocketCloseCode CloseCode { get; set; }
public NWWebSocketOpCode OpCode { get; }
public NWWebSocketResponse ServerResponse { get; }
// methods
public void SetPongHandler (CoreFoundation.DispatchQueue queue, System.Action<NWError> handler);
}
New Type: Network.NWWebSocketOpCode
[Serializable]
public enum NWWebSocketOpCode {
Binary = 2,
Close = 8,
Cont = 0,
Invalid = -1,
Ping = 9,
Pong = 10,
Text = 1,
}
New Type: Network.NWWebSocketOptions
public class NWWebSocketOptions : Network.NWProtocolOptions, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public NWWebSocketOptions (NWWebSocketVersion version);
// properties
public bool AutoReplyPing { get; set; }
public nuint MaximumMessageSize { get; set; }
public bool SkipHandShake { get; set; }
// methods
public void AddSubprotocol (string subprotocol);
public void SetClientRequestHandler (CoreFoundation.DispatchQueue queue, System.Action<NWWebSocketRequest> handler);
public void SetHeader (string header, string value);
}
New Type: Network.NWWebSocketRequest
public class NWWebSocketRequest : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// methods
public void EnumerateAdditionalHeaders (System.Action<System.String,System.String> handler);
public void EnumerateSubprotocols (System.Action<string> handler);
}
New Type: Network.NWWebSocketResponse
public class NWWebSocketResponse : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
// constructors
public NWWebSocketResponse (NWWebSocketResponseStatus status, string subprotocol);
// properties
public string SelectedSubprotocol { get; }
public NWWebSocketResponseStatus Status { get; }
// methods
public bool EnumerateAdditionalHeaders (System.Action<System.String,System.String> handler);
public void SetHeader (string header, string value);
}
New Type: Network.NWWebSocketResponseStatus
[Serializable]
public enum NWWebSocketResponseStatus {
Accept = 1,
Invalid = 0,
Reject = 2,
}
New Type: Network.NWWebSocketVersion
[Serializable]
public enum NWWebSocketVersion {
Invalid = 0,
Version13 = 1,
}
Namespace ObjCRuntime
Type Changed: ObjCRuntime.Constants
Modified fields:
-public const string Version = "6.2.0";
+public const string Version = "6.4.0";
Namespace SceneKit
Type Changed: SceneKit.SCNCamera
Added properties:
public virtual nint BloomIterationCount { get; set; }
public virtual nfloat BloomIterationSpread { get; set; }
public virtual nfloat GrainIntensity { get; set; }
public virtual bool GrainIsColored { get; set; }
public virtual nfloat GrainScale { get; set; }
public virtual nfloat WhiteBalanceTemperature { get; set; }
public virtual nfloat WhiteBalanceTint { get; set; }
Added method:
public virtual SCNMatrix4 GetProjectionTransform (CoreGraphics.CGSize viewportSize);
Type Changed: SceneKit.SCNHitTest
Added property:
public static Foundation.NSString IgnoreLightAreaKey { get; }
Type Changed: SceneKit.SCNHitTestOptions
Added property:
public bool? IgnoreLightArea { get; set; }
Type Changed: SceneKit.SCNLayer
Added properties:
public virtual CoreGraphics.CGRect CurrentViewport { get; }
public virtual bool TemporalAntialiasingEnabled { get; set; }
public virtual bool UsesReverseZ { get; set; }
Type Changed: SceneKit.SCNLight
Added properties:
public virtual OpenTK.NVector3 AreaExtents { get; set; }
public virtual Foundation.NSValue[] AreaPolygonVertices { get; set; }
public virtual SCNLightAreaType AreaType { get; set; }
public virtual bool DoubleSided { get; set; }
public virtual bool DrawsArea { get; set; }
public virtual OpenTK.NVector3 ParallaxCenterOffset { get; set; }
public virtual bool ParallaxCorrectionEnabled { get; set; }
public virtual OpenTK.NVector3 ParallaxExtentsFactor { get; set; }
public virtual SCNMaterialProperty ProbeEnvironment { get; }
public virtual OpenTK.NVector3 ProbeExtents { get; set; }
public virtual OpenTK.NVector3 ProbeOffset { get; set; }
public virtual SCNLightProbeType ProbeType { get; set; }
public virtual SCNLightProbeUpdateType ProbeUpdateType { get; set; }
Type Changed: SceneKit.SCNLightType
Added property:
public static Foundation.NSString Area { get; }
Type Changed: SceneKit.SCNLightingModel
Added property:
public static Foundation.NSString ShadowOnly { get; }
Type Changed: SceneKit.SCNMaterial
Added properties:
public virtual SCNMaterialProperty ClearCoat { get; }
public virtual SCNMaterialProperty ClearCoatNormal { get; }
public virtual SCNMaterialProperty ClearCoatRoughness { get; }
Type Changed: SceneKit.SCNRenderer
Added properties:
public virtual CoreGraphics.CGRect CurrentViewport { get; }
public virtual bool TemporalAntialiasingEnabled { get; set; }
public virtual bool UsesReverseZ { get; set; }
Type Changed: SceneKit.SCNScene
Added properties:
public virtual nfloat ScreenSpaceReflectionMaximumDistance { get; set; }
public virtual nint ScreenSpaceReflectionSampleCount { get; set; }
public virtual nfloat ScreenSpaceReflectionStride { get; set; }
public virtual bool WantsScreenSpaceReflection { get; set; }
Type Changed: SceneKit.SCNSceneRenderer
Added properties:
public virtual CoreGraphics.CGRect CurrentViewport { get; }
public virtual bool TemporalAntialiasingEnabled { get; set; }
public virtual bool UsesReverseZ { get; set; }
Type Changed: SceneKit.SCNSceneRenderer_Extensions
Added methods:
public static CoreGraphics.CGRect GetCurrentViewport (this ISCNSceneRenderer This);
public static bool GetTemporalAntialiasingEnabled (this ISCNSceneRenderer This);
public static bool GetUsesReverseZ (this ISCNSceneRenderer This);
public static void SetTemporalAntialiasingEnabled (this ISCNSceneRenderer This, bool value);
public static void SetUsesReverseZ (this ISCNSceneRenderer This, bool value);
Type Changed: SceneKit.SCNTechnique
Added property:
public virtual Metal.IMTLLibrary Library { get; set; }
Type Changed: SceneKit.SCNView
Added properties:
public virtual CoreGraphics.CGRect CurrentViewport { get; }
public virtual bool DrawableResizesAsynchronously { get; set; }
public virtual bool TemporalAntialiasingEnabled { get; set; }
public virtual bool UsesReverseZ { get; set; }
New Type: SceneKit.SCNLightAreaType
[Serializable]
public enum SCNLightAreaType {
Polygon = 4,
Rectangle = 1,
}
New Type: SceneKit.SCNLightProbeType
[Serializable]
public enum SCNLightProbeType {
Irradiance = 0,
Radiance = 1,
}
New Type: SceneKit.SCNLightProbeUpdateType
[Serializable]
public enum SCNLightProbeUpdateType {
Never = 0,
Realtime = 1,
}