stable-api-comparison/diff/dotnet/Microsoft.macOS.Ref/ref/net8.0/Microsoft.macOS.md (original) (raw)

stable-api-comparison/diff/dotnet/Microsoft.macOS.Ref/ref/net8.0/Microsoft.macOS.md

Microsoft.macOS.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetDownloadDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, Foundation.NSHttpUrlResponse response); public virtual void NeedNewBodyStream (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, long offset, System.Action<Foundation.NSInputStream> completionHandler);

Namespace AppKit

Type Changed: AppKit.NSBezelStyle

Added values:

AccessoryBar = 13, AccessoryBarAction = 12, Badge = 15, FlexiblePush = 2, Push = 1, PushDisclosure = 14, Toolbar = 11,

Type Changed: AppKit.NSGraphics

Obsoleted methods:

[Obsolete ("Call 'GetBestDepth' instead.")] public static NSWindowDepth BestDepth (Foundation.NSString colorspace, IntPtr bitsPerSample, IntPtr bitsPerPixel, bool planar, ref bool exactMatch);

Added method:

public static NSWindowDepth GetBestDepth (Foundation.NSString colorspace, IntPtr bitsPerSample, IntPtr bitsPerPixel, bool planar, out bool exactMatch);

Namespace AutomaticAssessmentConfiguration

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentApplication

Added constructors:

public AEAssessmentApplication (string bundleIdentifier); public AEAssessmentApplication (string bundleIdentifier, string TeamIdentifier);

Namespace CoreText

Type Changed: CoreText.CTFontDescriptor

Obsoleted methods:

[Obsolete ("Use 'MatchFontDescriptors (CTFontDescriptor[], NSSet, CTFontDescriptorProgressHandler)' instead.")] public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, System.Func<CTFontDescriptorMatchingState,System.IntPtr,System.Boolean> progressHandler);

Added method:

public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, CTFontDescriptor.CTFontDescriptorProgressHandler progressHandler);

Type Changed: CoreText.CTFontDescriptorAttributes

Added property:

public bool? WeakEnabled { get; set; }

New Type: CoreText.CTFontDescriptorMatchingProgress

public class CTFontDescriptorMatchingProgress : Foundation.DictionaryContainer { // constructors public CTFontDescriptorMatchingProgress (); public CTFontDescriptorMatchingProgress (Foundation.NSDictionary dictionary); // properties public long? CurrentAssetSize { get; } public CTFontDescriptor[] Descriptors { get; } public Foundation.NSError Error { get; } public double? Percentage { get; } public CTFontDescriptor[] Result { get; } public CTFontDescriptor SourceDescriptor { get; } public long? TotalAssetSize { get; } public long? TotalDownloadedSize { get; } }

Namespace Foundation

Type Changed: Foundation.NSAttributedStringNameKey

Added values:

InflectionAgreementArgument = 10, InflectionAgreementConcept = 11, InflectionReferentConcept = 12,

Type Changed: Foundation.NSDataWritingOptions

Added value:

FileProtectionCompleteWhenUserInactive = 1342177280,

Type Changed: Foundation.NSError

Added property:

public static NSString NSNetServicesErrorCode { get; }

Type Changed: Foundation.NSFileProtectionType

Added value:

CompleteWhenUserInactive = 4,

Type Changed: Foundation.NSLocale

Added properties:

public virtual string LanguageIdentifier { get; } public virtual string RegionCode { get; }

Type Changed: Foundation.NSMorphology

Added properties:

public virtual NSGrammaticalDefiniteness Definiteness { get; set; } public virtual NSGrammaticalDetermination Determination { get; set; } public virtual NSGrammaticalCase GrammaticalCase { get; set; } public virtual NSGrammaticalPerson GrammaticalPerson { get; set; } public virtual NSGrammaticalPronounType PronounType { get; set; }

Type Changed: Foundation.NSUrl

Added property:

public static NSString DirectoryEntryCountKey { get; }

Added method:

public static NSUrl FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlComponents

Added method:

public static NSUrlComponents FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlSession

Added methods:

public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData); public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData, System.Action<NSData,Foundation.NSUrlResponse,Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task CreateUploadTaskAsync (NSData resumeData); public virtual System.Threading.Tasks.Task CreateUploadTaskAsync (NSData resumeData, out NSUrlSessionUploadTask result);

Type Changed: Foundation.NSUrlSessionTaskDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response); public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, long offset, System.Action completionHandler);

Type Changed: Foundation.NSUrlSessionTaskDelegate_Extensions

Added methods:

public static void DidReceiveInformationalResponse (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response); public static void NeedNewBodyStream (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, long offset, System.Action completionHandler);

Type Changed: Foundation.NSUrlSessionUploadTask

Added property:

public static NSString ResumeDataKey { get; }

Added methods:

public virtual void CancelByProducingResumeData (System.Action completionHandler); public virtual System.Threading.Tasks.Task CancelByProducingResumeDataAsync ();

New Type: Foundation.NSGrammaticalCase

[Serializable] public enum NSGrammaticalCase { Ablative = 6, Accusative = 2, Adessive = 7, Allative = 8, Dative = 3, Elative = 9, Essive = 11, Genitive = 4, Illative = 10, Inessive = 12, Locative = 13, Nominative = 1, NotSet = 0, Prepositional = 5, Translative = 14, }

New Type: Foundation.NSGrammaticalDefiniteness

[Serializable] public enum NSGrammaticalDefiniteness { Definite = 2, Indefinite = 1, NotSet = 0, }

New Type: Foundation.NSGrammaticalDetermination

[Serializable] public enum NSGrammaticalDetermination { Dependent = 2, Independent = 1, NotSet = 0, }

New Type: Foundation.NSGrammaticalPerson

[Serializable] public enum NSGrammaticalPerson { First = 1, NotSet = 0, Second = 2, Third = 3, }

New Type: Foundation.NSGrammaticalPronounType

[Serializable] public enum NSGrammaticalPronounType { NotSet = 0, Personal = 1, Possessive = 3, Reflexive = 2, }

New Type: Foundation.NSMorphologyPronoun

public class NSMorphologyPronoun : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NSMorphologyPronoun (NSCoder coder); protected NSMorphologyPronoun (NSObjectFlag t); protected NSMorphologyPronoun (ObjCRuntime.NativeHandle handle); public NSMorphologyPronoun (string pronoun, NSMorphology morphology, NSMorphology dependentMorphology); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSMorphology DependentMorphology { get; } public virtual NSMorphology Morphology { get; } public virtual string Pronoun { get; } // methods public virtual NSObject Copy (NSZone zone); public virtual void EncodeTo (NSCoder encoder); }

New Type: Foundation.NSTermOfAddress

public class NSTermOfAddress : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NSTermOfAddress (NSCoder coder); protected NSTermOfAddress (NSObjectFlag t); protected NSTermOfAddress (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public static NSTermOfAddress Feminine { get; } public virtual string LanguageIdentifier { get; } public static NSTermOfAddress Masculine { get; } public static NSTermOfAddress Neutral { get; } public virtual NSMorphologyPronoun[] Pronouns { get; } // methods public virtual NSObject Copy (NSZone zone); public virtual void EncodeTo (NSCoder encoder); public static NSTermOfAddress GetLocalized (string language, NSMorphologyPronoun[] pronouns); }

New Type: Foundation.NSUrlSessionUploadTaskResumeRequest

public class NSUrlSessionUploadTaskResumeRequest { // constructors public NSUrlSessionUploadTaskResumeRequest (NSData arg1, NSUrlResponse arg2); // properties public NSData Arg1 { get; set; } public NSUrlResponse Arg2 { get; set; } }

Namespace GameKit

Type Changed: GameKit.GKAchievement

Added methods:

public virtual AppKit.NSViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler); public virtual System.Threading.Tasks.Task ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players); public virtual System.Threading.Tasks.Task ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out AppKit.NSViewController result);

Type Changed: GameKit.GKAchievementDescription

Added property:

public virtual Foundation.NSNumber RarityPercent { get; }

Type Changed: GameKit.GKLeaderboardEntry

Added methods:

public virtual AppKit.NSViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler); public virtual System.Threading.Tasks.Task ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players); public virtual System.Threading.Tasks.Task ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out AppKit.NSViewController result);

Type Changed: GameKit.GKVoiceChat

Added property:

public virtual System.Action<GKPlayer,GameKit.GKVoiceChatPlayerState> PlayerVoiceChatStateDidChangeHandler { get; }

New Type: GameKit.GKChallengeComposeControllerResult

public class GKChallengeComposeControllerResult { // constructors public GKChallengeComposeControllerResult (AppKit.NSViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers); // properties public AppKit.NSViewController ComposeController { get; set; } public bool IssuedChallenge { get; set; } public GKPlayer[] SentPlayers { get; set; } }

New Type: GameKit.GKChallengeComposeHandler2

public sealed delegate GKChallengeComposeHandler2 : System.MulticastDelegate { // constructors public GKChallengeComposeHandler2 (object object, IntPtr method); // methods public virtual System.IAsyncResult BeginInvoke (AppKit.NSViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers, System.AsyncCallback callback, object object); public virtual void EndInvoke (System.IAsyncResult result); public virtual void Invoke (AppKit.NSViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers); }

Namespace Metal

Type Changed: Metal.IMTLAccelerationStructure

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Type Changed: Metal.IMTLRenderPipelineState

Added properties:

public virtual MTLResourceId GpuResourceId { get; } public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; } public virtual UIntPtr MeshThreadExecutionWidth { get; }

Type Changed: Metal.IMTLTexture

Added property:

public virtual MTLTextureCompressionType CompressionType { get; }

Type Changed: Metal.MTLAccelerationStructureGeometryDescriptor

Added properties:

public virtual IMTLBuffer PrimitiveDataBuffer { get; set; } public virtual UIntPtr PrimitiveDataBufferOffset { get; set; } public virtual UIntPtr PrimitiveDataElementSize { get; set; } public virtual UIntPtr PrimitiveDataStride { get; set; }

Type Changed: Metal.MTLAccelerationStructureInstanceDescriptorType

Added values:

Indirect = 3, IndirectMotion = 4,

Type Changed: Metal.MTLAccelerationStructureMotionTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; } public virtual UIntPtr TransformationMatrixBufferOffset { get; set; } public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLAccelerationStructureTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; } public virtual UIntPtr TransformationMatrixBufferOffset { get; set; } public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLAttributeFormat

Added values:

FloatRG11B10 = 54, FloatRGB9E5 = 55,

Type Changed: Metal.MTLBinaryArchiveError

Added value:

Type Changed: Metal.MTLCompileOptions

Added properties:

public virtual bool AllowReferencingUndefinedSymbols { get; set; } public virtual MTLCompileSymbolVisibility CompileSymbolVisibility { get; set; } public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; set; } public virtual MTLLibraryOptimizationLevel OptimizationLevel { get; set; }

Type Changed: Metal.MTLComputePipelineReflection

Added property:

public virtual IMTLBinding[] Bindings { get; }

Type Changed: Metal.MTLDataType

Added values:

BFloat = 121, BFloat2 = 122, BFloat3 = 123, BFloat4 = 124,

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static IMTLArgumentEncoder CreateArgumentEncoder (this IMTLDevice This, IMTLBufferBinding bufferBinding); public static void CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler); public static IMTLRenderPipelineState CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error); public static MTLArchitecture GetArchitecture (this IMTLDevice This); public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor); public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, UIntPtr size); public static UIntPtr GetMaximumConcurrentCompilationTaskCount (this IMTLDevice This); public static bool GetShouldMaximizeConcurrentCompilation (this IMTLDevice This); public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize); public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This, MTLSparsePageSize sparsePageSize); public static void SetShouldMaximizeConcurrentCompilation (this IMTLDevice This, bool value);

Type Changed: Metal.MTLFunctionOptions

Added value:

StoreFunctionInMetalScript = 2,

Type Changed: Metal.MTLFunctionType

Added values:

Type Changed: Metal.MTLGpuFamily

Added values:

Apple8 = 1008, Apple9 = 1009, Metal3 = 5001,

Type Changed: Metal.MTLHeapDescriptor

Added property:

public virtual MTLSparsePageSize SparsePageSize { get; set; }

Type Changed: Metal.MTLIndirectCommandBufferDescriptor

Added properties:

public virtual UIntPtr MaxKernelThreadgroupMemoryBindCount { get; set; } public virtual UIntPtr MaxMeshBufferBindCount { get; set; } public virtual UIntPtr MaxObjectBufferBindCount { get; set; } public virtual UIntPtr MaxObjectThreadgroupMemoryBindCount { get; set; } public virtual bool SupportDynamicAttributeStride { get; set; } public virtual bool SupportRayTracing { get; set; }

Type Changed: Metal.MTLIndirectCommandType

Added values:

DrawMeshThreadgroups = 128, DrawMeshThreads = 256,

Type Changed: Metal.MTLIntersectionFunctionSignature

Added values:

CurveData = 128, MaxLevels = 64,

Type Changed: Metal.MTLLanguageVersion

Added values:

v3_0 = 196608, v3_1 = 196609,

Type Changed: Metal.MTLRenderPipelineReflection

Added properties:

public virtual IMTLBinding[] FragmentBindings { get; } public virtual IMTLBinding[] MeshBindings { get; } public virtual IMTLBinding[] ObjectBindings { get; } public virtual IMTLBinding[] TileBindings { get; } public virtual IMTLBinding[] VertexBindings { get; }

Type Changed: Metal.MTLRenderStages

Added values:

Type Changed: Metal.MTLResourceStateCommandEncoder_Extensions

Added method:

public static void MoveTextureMappings (this IMTLResourceStateCommandEncoder This, IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin);

Type Changed: Metal.MTLTextureDescriptor

Added property:

public virtual MTLTextureCompressionType CompressionType { get; set; }

Type Changed: Metal.MTLTextureUsage

Added value:

Type Changed: Metal.MTLTexture_Extensions

Added method:

public static MTLResourceId GetGpuResourceId (this IMTLTexture This);

Type Changed: Metal.MTLVertexFormat

Added values:

FloatRG11B10 = 54, FloatRgb9E5 = 55,

New Type: Metal.IMTLBinding

public interface IMTLBinding : ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual MTLBindingAccess Access { get; } public virtual bool Argument { get; } public virtual UIntPtr Index { get; } public virtual string Name { get; } public virtual MTLBindingType Type { get; } public virtual bool Used { get; } }

New Type: Metal.IMTLBufferBinding

public interface IMTLBufferBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual UIntPtr BufferAlignment { get; } public virtual UIntPtr BufferDataSize { get; } public virtual MTLDataType BufferDataType { get; } public virtual MTLPointerType BufferPointerType { get; } public virtual MTLStructType BufferStructType { get; } }

New Type: Metal.IMTLObjectPayloadBinding

public interface IMTLObjectPayloadBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual UIntPtr ObjectPayloadAlignment { get; } public virtual UIntPtr ObjectPayloadDataSize { get; } }

New Type: Metal.IMTLTextureBinding

public interface IMTLTextureBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual UIntPtr ArrayLength { get; } public virtual bool DepthTexture { get; } public virtual MTLDataType TextureDataType { get; } public virtual MTLTextureType TextureType { get; } }

New Type: Metal.IMTLThreadgroupBinding

public interface IMTLThreadgroupBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual UIntPtr ThreadgroupMemoryAlignment { get; } public virtual UIntPtr ThreadgroupMemoryDataSize { get; } }

New Type: Metal.MTLAccelerationStructureCommandEncoder_Extensions

public static class MTLAccelerationStructureCommandEncoder_Extensions { // methods public static void RefitAccelerationStructure (this IMTLAccelerationStructureCommandEncoder This, IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset, MTLAccelerationStructureRefitOptions options); }

New Type: Metal.MTLAccelerationStructureCurveGeometryDescriptor

public class MTLAccelerationStructureCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors public MTLAccelerationStructureCurveGeometryDescriptor (); protected MTLAccelerationStructureCurveGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IMTLBuffer ControlPointBuffer { get; set; } public virtual UIntPtr ControlPointBufferOffset { get; set; } public virtual UIntPtr ControlPointCount { get; set; } public virtual MTLAttributeFormat ControlPointFormat { get; set; } public virtual UIntPtr ControlPointStride { get; set; } public virtual MTLCurveBasis CurveBasis { get; set; } public virtual MTLCurveEndCaps CurveEndCaps { get; set; } public virtual MTLCurveType CurveType { get; set; } public virtual IMTLBuffer IndexBuffer { get; set; } public virtual UIntPtr IndexBufferOffset { get; set; } public virtual MTLIndexType IndexType { get; set; } public virtual IMTLBuffer RadiusBuffer { get; set; } public virtual UIntPtr RadiusBufferOffset { get; set; } public virtual MTLAttributeFormat RadiusFormat { get; set; } public virtual UIntPtr RadiusStride { get; set; } public virtual UIntPtr SegmentControlPointCount { get; set; } public virtual UIntPtr SegmentCount { get; set; } // methods public static MTLAccelerationStructureCurveGeometryDescriptor GetDescriptor (); }

New Type: Metal.MTLAccelerationStructureMotionCurveGeometryDescriptor

public class MTLAccelerationStructureMotionCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors public MTLAccelerationStructureMotionCurveGeometryDescriptor (); protected MTLAccelerationStructureMotionCurveGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureMotionCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual MTLMotionKeyframeData[] ControlPointBuffers { get; set; } public virtual UIntPtr ControlPointCount { get; set; } public virtual MTLAttributeFormat ControlPointFormat { get; set; } public virtual UIntPtr ControlPointStride { get; set; } public virtual MTLCurveBasis CurveBasis { get; set; } public virtual MTLCurveEndCaps CurveEndCaps { get; set; } public virtual MTLCurveType CurveType { get; set; } public virtual IMTLBuffer IndexBuffer { get; set; } public virtual UIntPtr IndexBufferOffset { get; set; } public virtual MTLIndexType IndexType { get; set; } public virtual MTLMotionKeyframeData[] RadiusBuffers { get; set; } public virtual MTLAttributeFormat RadiusFormat { get; set; } public virtual UIntPtr RadiusStride { get; set; } public virtual UIntPtr SegmentControlPointCount { get; set; } public virtual UIntPtr SegmentCount { get; set; } // methods public static MTLAccelerationStructureMotionCurveGeometryDescriptor GetDescriptor (); }

New Type: Metal.MTLAccelerationStructurePassDescriptor

public class MTLAccelerationStructurePassDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLAccelerationStructurePassDescriptor (); protected MTLAccelerationStructurePassDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructurePassDescriptor (ObjCRuntime.NativeHandle handle); // properties public static MTLAccelerationStructurePassDescriptor AccelerationStructurePassDescriptor { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptor

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (); protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr EndOfEncoderSampleIndex { get; set; } public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; } public virtual UIntPtr StartOfEncoderSampleIndex { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray : Foundation.NSObject { // constructors public MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (); protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t); protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptor GetObject (UIntPtr attachmentIndex); public virtual void SetObject (MTLAccelerationStructurePassSampleBufferAttachmentDescriptor attachment, UIntPtr attachmentIndex); }

New Type: Metal.MTLAccelerationStructureRefitOptions

[Serializable] [Flags] public enum MTLAccelerationStructureRefitOptions { PerPrimitiveData = 2, VertexData = 1, }

New Type: Metal.MTLArchitecture

public class MTLArchitecture : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLArchitecture (); protected MTLArchitecture (Foundation.NSObjectFlag t); protected MTLArchitecture (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Name { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLBindingAccess

[Serializable] public enum MTLBindingAccess { ReadOnly = 0, ReadWrite = 1, WriteOnly = 2, }

New Type: Metal.MTLBindingType

[Serializable] public enum MTLBindingType { Buffer = 0, Imageblock = 17, ImageblockData = 16, InstanceAccelerationStructure = 26, IntersectionFunctionTable = 27, ObjectPayload = 34, PrimitiveAccelerationStructure = 25, Sampler = 3, Texture = 2, ThreadgroupMemory = 1, VisibleFunctionTable = 24, }

New Type: Metal.MTLBuffer_Extensions

public static class MTLBuffer_Extensions { // methods public static ulong GetGpuAddress (this IMTLBuffer This); }

New Type: Metal.MTLCommandBuffer_Extensions

public static class MTLCommandBuffer_Extensions { // methods public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This, MTLAccelerationStructurePassDescriptor descriptor); }

New Type: Metal.MTLCompileSymbolVisibility

[Serializable] public enum MTLCompileSymbolVisibility { Default = 0, Hidden = 1, }

New Type: Metal.MTLComputeCommandEncoder_Extensions

public static class MTLComputeCommandEncoder_Extensions { // methods public static void SetBuffer (this IMTLComputeCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index); public static void SetBufferOffset (this IMTLComputeCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index); public static void SetBuffers (this IMTLComputeCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range); public static void SetBytes (this IMTLComputeCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index); }

New Type: Metal.MTLComputePipelineState_Extensions

public static class MTLComputePipelineState_Extensions { // methods public static MTLResourceId GetGpuResourceId (this IMTLComputePipelineState This); }

New Type: Metal.MTLCurveBasis

[Serializable] public enum MTLCurveBasis { BSpline = 0, Bezier = 3, CatmullRom = 1, Linear = 2, }

New Type: Metal.MTLCurveEndCaps

[Serializable] public enum MTLCurveEndCaps { Disk = 1, None = 0, Sphere = 2, }

New Type: Metal.MTLCurveType

[Serializable] public enum MTLCurveType { Flat = 1, Round = 0, }

New Type: Metal.MTLHeap_Extensions

public static class MTLHeap_Extensions { // methods public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor); public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size); public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor, UIntPtr offset); public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size, UIntPtr offset); }

New Type: Metal.MTLIOCommandQueueType

[Serializable] public enum MTLIOCommandQueueType { Concurrent = 0, Serial = 1, }

New Type: Metal.MTLIOCompressionContext

public class MTLIOCompressionContext : ObjCRuntime.DisposableObject { // properties public static IntPtr DefaultChunkSize { get; } // methods public void AppendData (Foundation.NSData data); public void AppendData (byte[] data); public void AppendData (System.ReadOnlySpan data); public static MTLIOCompressionContext Create (string path, MTLIOCompressionMethod type, long chunkSize); protected override void Dispose (bool disposing); public MTLIOCompressionStatus FlushAndDestroy (); }

New Type: Metal.MTLIOCompressionMethod

[Serializable] public enum MTLIOCompressionMethod { Lz4 = 2, LzBitmap = 4, Lzfse = 1, Lzma = 3, Zlib = 0, }

New Type: Metal.MTLIOCompressionStatus

[Serializable] public enum MTLIOCompressionStatus { Complete = 0, Error = 1, }

New Type: Metal.MTLIOError

[Serializable] public enum MTLIOError { Internal = 2, UrlInvalid = 1, }

New Type: Metal.MTLIOErrorExtensions

public static class MTLIOErrorExtensions { // methods public static Foundation.NSString GetDomain (this MTLIOError self); }

New Type: Metal.MTLIOPriority

[Serializable] public enum MTLIOPriority { High = 0, Low = 2, Normal = 1, }

New Type: Metal.MTLIOStatus

[Serializable] public enum MTLIOStatus { Cancelled = 1, Complete = 3, Error = 2, Pending = 0, }

New Type: Metal.MTLIndirectCommandBuffer_Extensions

public static class MTLIndirectCommandBuffer_Extensions { // methods public static MTLResourceId GetGpuResourceID (this IMTLIndirectCommandBuffer This); }

New Type: Metal.MTLIndirectComputeCommand_Extensions

public static class MTLIndirectComputeCommand_Extensions { // methods public static void SetKernelBuffer (this IMTLIndirectComputeCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index); }

New Type: Metal.MTLIndirectInstanceAccelerationStructureDescriptor

public class MTLIndirectInstanceAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor { // constructors public MTLIndirectInstanceAccelerationStructureDescriptor (); protected MTLIndirectInstanceAccelerationStructureDescriptor (Foundation.NSObjectFlag t); protected MTLIndirectInstanceAccelerationStructureDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IMTLBuffer InstanceCountBuffer { get; set; } public virtual UIntPtr InstanceCountBufferOffset { get; set; } public virtual IMTLBuffer InstanceDescriptorBuffer { get; set; } public virtual UIntPtr InstanceDescriptorBufferOffset { get; set; } public virtual UIntPtr InstanceDescriptorStride { get; set; } public virtual MTLAccelerationStructureInstanceDescriptorType InstanceDescriptorType { get; set; } public virtual UIntPtr MaxInstanceCount { get; set; } public virtual UIntPtr MaxMotionTransformCount { get; set; } public virtual IMTLBuffer MotionTransformBuffer { get; set; } public virtual UIntPtr MotionTransformBufferOffset { get; set; } public virtual IMTLBuffer MotionTransformCountBuffer { get; set; } public virtual UIntPtr MotionTransformCountBufferOffset { get; set; } // methods public static MTLIndirectInstanceAccelerationStructureDescriptor GetDescriptor (); }

New Type: Metal.MTLIndirectRenderCommand_Extensions

public static class MTLIndirectRenderCommand_Extensions { // methods public static void SetVertexBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index); }

New Type: Metal.MTLIntersectionFunctionTable_Extensions

public static class MTLIntersectionFunctionTable_Extensions { // methods public static MTLResourceId GetGpuResourceId (this IMTLIntersectionFunctionTable This); public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, Foundation.NSRange range); public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, UIntPtr index); }

New Type: Metal.MTLLibraryOptimizationLevel

[Serializable] public enum MTLLibraryOptimizationLevel { Default = 0, Size = 1, }

New Type: Metal.MTLMeshRenderPipelineDescriptor

public class MTLMeshRenderPipelineDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLMeshRenderPipelineDescriptor (); protected MTLMeshRenderPipelineDescriptor (Foundation.NSObjectFlag t); protected MTLMeshRenderPipelineDescriptor (ObjCRuntime.NativeHandle handle); // properties public virtual bool AlphaToCoverageEnabled { get; set; } public virtual bool AlphaToOneEnabled { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual MTLRenderPipelineColorAttachmentDescriptorArray ColorAttachments { get; } public virtual MTLPixelFormat DepthAttachmentPixelFormat { get; set; } public virtual MTLPipelineBufferDescriptorArray FragmentBuffers { get; } public virtual IMTLFunction FragmentFunction { get; set; } public virtual MTLLinkedFunctions FragmentLinkedFunctions { get; set; } public virtual string Label { get; set; } public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; set; } public virtual UIntPtr MaxTotalThreadsPerMeshThreadgroup { get; set; } public virtual UIntPtr MaxTotalThreadsPerObjectThreadgroup { get; set; } public virtual UIntPtr MaxVertexAmplificationCount { get; set; } public virtual MTLPipelineBufferDescriptorArray MeshBuffers { get; } public virtual IMTLFunction MeshFunction { get; set; } public virtual MTLLinkedFunctions MeshLinkedFunctions { get; set; } public virtual bool MeshThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; } public virtual MTLPipelineBufferDescriptorArray ObjectBuffers { get; } public virtual IMTLFunction ObjectFunction { get; set; } public virtual MTLLinkedFunctions ObjectLinkedFunctions { get; set; } public virtual bool ObjectThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; } public virtual UIntPtr PayloadMemoryLength { get; set; } public virtual UIntPtr RasterSampleCount { get; set; } public virtual bool RasterizationEnabled { get; set; } public virtual MTLPixelFormat StencilAttachmentPixelFormat { get; set; } public virtual bool SupportIndirectCommandBuffers { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void Reset (); }

New Type: Metal.MTLRenderCommandEncoder_Extensions

public static class MTLRenderCommandEncoder_Extensions { // methods public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup); public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup); public static void DrawMeshThreads (this IMTLRenderCommandEncoder This, MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup); public static void SetMeshBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index); public static void SetMeshBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index); public static void SetMeshBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range); public static void SetMeshBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index); public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index); public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index); public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range); public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range); public static void SetMeshTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index); public static void SetMeshTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range); public static void SetObjectBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index); public static void SetObjectBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index); public static void SetObjectBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range); public static void SetObjectBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index); public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index); public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index); public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range); public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range); public static void SetObjectTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index); public static void SetObjectTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range); public static void SetObjectThreadgroupMemoryLength (this IMTLRenderCommandEncoder This, UIntPtr length, UIntPtr index); public static void SetVertexBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index); public static void SetVertexBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index); public static void SetVertexBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range); public static void SetVertexBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index); }

New Type: Metal.MTLRenderPipelineState_Extensions

public static class MTLRenderPipelineState_Extensions { // methods public static UIntPtr GetMaxTotalThreadsPerMeshThreadgroup (this IMTLRenderPipelineState This); public static UIntPtr GetMaxTotalThreadsPerObjectThreadgroup (this IMTLRenderPipelineState This); public static UIntPtr GetObjectThreadExecutionWidth (this IMTLRenderPipelineState This); }

New Type: Metal.MTLResourceId

public struct MTLResourceId { // fields public ulong Impl; }

New Type: Metal.MTLSamplerState_Extensions

public static class MTLSamplerState_Extensions { // methods public static MTLResourceId GetGpuResourceId (this IMTLSamplerState This); }

New Type: Metal.MTLSparsePageSize

[Serializable] public enum MTLSparsePageSize { Size16 = 101, Size256 = 103, Size64 = 102, }

New Type: Metal.MTLTextureCompressionType

[Serializable] public enum MTLTextureCompressionType { Lossless = 0, Lossy = 1, }

New Type: Metal.MTLVisibleFunctionTable_Extensions

public static class MTLVisibleFunctionTable_Extensions { // methods public static MTLResourceId GetGpuResourceId (this IMTLVisibleFunctionTable This); }

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSCommandBuffer

Added method:

public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (Metal.MTLAccelerationStructurePassDescriptor descriptor);

Namespace ModelIO

Type Changed: ModelIO.MDLMaterial

Added properties:

public MDLMaterialProperty Item { get; } public MDLMaterialProperty Item { get; }

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string Version = "9.0.0"; +public const string Version = "9.1.0";

Type Changed: ObjCRuntime.DisposableObject

Added method:

protected void ClearHandle ();

Namespace Vision

Type Changed: Vision.VNBarcodeObservation

Added properties:

public virtual bool IsColorInverted { get; } public virtual bool IsGS1DataCarrier { get; } public virtual Foundation.NSData PayloadData { get; } public virtual VNBarcodeCompositeType SupplementalCompositeType { get; } public virtual Foundation.NSData SupplementalPayloadData { get; } public virtual string SupplementalPayloadString { get; }

Type Changed: Vision.VNBarcodeSymbology

Added value:

Type Changed: Vision.VNDetectBarcodesRequest

Added property:

public virtual bool CoalesceCompositeSymbologies { get; set; }

Type Changed: Vision.VNDetectHumanBodyPoseRequest

Added methods:

public virtual VNHumanBodyPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error); public virtual VNHumanBodyPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);

Type Changed: Vision.VNDetectHumanHandPoseRequest

Added methods:

public virtual VNHumanHandPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error); public virtual VNHumanHandPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);

Type Changed: Vision.VNErrorCode

Added values:

UnsupportedComputeDevice = 22, UnsupportedComputeStage = 21,

Type Changed: Vision.VNImageRequestHandler

Added constructors:

public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, AVFoundation.AVDepthData depthData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options); public VNImageRequestHandler (CoreVideo.CVPixelBuffer pixelBuffer, AVFoundation.AVDepthData depthData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options);

Type Changed: Vision.VNRectangleObservation

Added method:

public static VNRectangleObservation FromRectangleObservation (VNRectangleObservationRequestRevision requestRevision, CoreGraphics.CGPoint topLeft, CoreGraphics.CGPoint topRight, CoreGraphics.CGPoint bottomRight, CoreGraphics.CGPoint bottomLeft);

Type Changed: Vision.VNRequest

Added methods:

public virtual CoreML.IMLComputeDeviceProtocol GetComputeDevice (string computeStage); public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSArray<CoreML.IMLComputeDeviceProtocol>> GetSupportedComputeDevices (out Foundation.NSError error); public virtual void SetComputeDevice (CoreML.IMLComputeDeviceProtocol computeDevice, string computeStage);

Type Changed: Vision.VNTrackingRequest

Added method:

public virtual UIntPtr GetSupportedNumberOfTrackers (out Foundation.NSError error);

New Type: Vision.VNAnimalBodyPoseObservation

public class VNAnimalBodyPoseObservation : Vision.VNRecognizedPointsObservation { // constructors public VNAnimalBodyPoseObservation (Foundation.NSCoder coder); protected VNAnimalBodyPoseObservation (Foundation.NSObjectFlag t); protected VNAnimalBodyPoseObservation (ObjCRuntime.NativeHandle handle); // properties public virtual VNAnimalBodyPoseObservationJointsGroupName[] AvailableJointGroupNames { get; } public virtual VNAnimalBodyPoseObservationJointName[] AvailableJointNames { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual VNRecognizedPoint GetRecognizedPoint (VNAnimalBodyPoseObservationJointName jointName, out Foundation.NSError error); public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNAnimalBodyPoseObservationJointsGroupName jointsGroupName, out Foundation.NSError error); }

New Type: Vision.VNAnimalBodyPoseObservationJointName

[Serializable] public enum VNAnimalBodyPoseObservationJointName { LeftBackElbow = 17, LeftBackKnee = 19, LeftBackPaw = 21, LeftEarBottom = 5, LeftEarMiddle = 3, LeftEarTop = 1, LeftEye = 7, LeftFrontElbow = 11, LeftFrontKnee = 13, LeftFrontPaw = 15, Neck = 10, None = 0, Nose = 9, RightBackElbow = 18, RightBackKnee = 20, RightBackPaw = 22, RightEarBottom = 6, RightEarMiddle = 4, RightEarTop = 2, RightEye = 8, RightFrontElbow = 12, RightFrontKnee = 14, RightFrontPaw = 16, TailBottom = 25, TailMiddle = 24, TailTop = 23, }

New Type: Vision.VNAnimalBodyPoseObservationJointNameExtensions

public static class VNAnimalBodyPoseObservationJointNameExtensions { // methods public static Foundation.NSString GetConstant (this VNAnimalBodyPoseObservationJointName self); public static VNAnimalBodyPoseObservationJointName GetValue (Foundation.NSString constant); }

New Type: Vision.VNAnimalBodyPoseObservationJointsGroupName

[Serializable] public enum VNAnimalBodyPoseObservationJointsGroupName { All = 6, Forelegs = 3, Head = 1, Hindlegs = 4, None = 0, Tail = 5, Trunk = 2, }

New Type: Vision.VNAnimalBodyPoseObservationJointsGroupNameExtensions

public static class VNAnimalBodyPoseObservationJointsGroupNameExtensions { // methods public static Foundation.NSString GetConstant (this VNAnimalBodyPoseObservationJointsGroupName self); public static VNAnimalBodyPoseObservationJointsGroupName GetValue (Foundation.NSString constant); }

New Type: Vision.VNBarcodeCompositeType

[Serializable] public enum VNBarcodeCompositeType { Gs1TypeA = 2, Gs1TypeB = 3, Gs1TypeC = 4, Linked = 1, None = 0, }

New Type: Vision.VNComputeStage

[Serializable] public enum VNComputeStage { Main = 1, None = 0, PostProcessing = 2, }

New Type: Vision.VNComputeStageExtensions

public static class VNComputeStageExtensions { // methods public static Foundation.NSString GetConstant (this VNComputeStage self); public static VNComputeStage GetValue (Foundation.NSString constant); }

New Type: Vision.VNDetectAnimalBodyPoseRequest

public class VNDetectAnimalBodyPoseRequest : Vision.VNImageBasedRequest { // constructors protected VNDetectAnimalBodyPoseRequest (Foundation.NSObjectFlag t); protected VNDetectAnimalBodyPoseRequest (ObjCRuntime.NativeHandle handle); public VNDetectAnimalBodyPoseRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNAnimalBodyPoseObservation[] Results { get; } // methods public virtual VNAnimalBodyPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error); public virtual VNAnimalBodyPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error); }

New Type: Vision.VNDetectHumanBodyPose3DRequest

public class VNDetectHumanBodyPose3DRequest : Vision.VNStatefulRequest { // constructors public VNDetectHumanBodyPose3DRequest (); protected VNDetectHumanBodyPose3DRequest (Foundation.NSObjectFlag t); protected VNDetectHumanBodyPose3DRequest (ObjCRuntime.NativeHandle handle); public VNDetectHumanBodyPose3DRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNHumanBodyPose3DObservation[] Results { get; } // methods public virtual VNHumanBodyPose3DObservationJointName[] GetSupportedJointNames (out Foundation.NSError error); public virtual VNHumanBodyPose3DObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error); }

New Type: Vision.VNGenerateForegroundInstanceMaskRequest

public class VNGenerateForegroundInstanceMaskRequest : Vision.VNImageBasedRequest { // constructors protected VNGenerateForegroundInstanceMaskRequest (Foundation.NSObjectFlag t); protected VNGenerateForegroundInstanceMaskRequest (ObjCRuntime.NativeHandle handle); public VNGenerateForegroundInstanceMaskRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNInstanceMaskObservation[] Results { get; } }

New Type: Vision.VNGeneratePersonInstanceMaskRequest

public class VNGeneratePersonInstanceMaskRequest : Vision.VNImageBasedRequest { // constructors protected VNGeneratePersonInstanceMaskRequest (Foundation.NSObjectFlag t); protected VNGeneratePersonInstanceMaskRequest (ObjCRuntime.NativeHandle handle); public VNGeneratePersonInstanceMaskRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNInstanceMaskObservation[] Results { get; } }

New Type: Vision.VNHumanBodyPose3DObservation

public class VNHumanBodyPose3DObservation : Vision.VNRecognizedPoints3DObservation { // constructors public VNHumanBodyPose3DObservation (Foundation.NSCoder coder); protected VNHumanBodyPose3DObservation (Foundation.NSObjectFlag t); protected VNHumanBodyPose3DObservation (ObjCRuntime.NativeHandle handle); // properties public virtual VNHumanBodyPose3DObservationJointName[] AvailableJointNames { get; } public virtual VNHumanBodyPose3DObservationJointsGroupName[] AvailableJointsGroupNames { get; } public virtual float BodyHeight { get; } public virtual System.Numerics.Vector4 CameraOriginMatrix { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNHumanBodyPose3DObservationHeightEstimation HeightEstimation { get; } // methods public virtual VNHumanBodyPose3DObservationJointName GetParentJointName (VNHumanBodyPose3DObservationJointName jointName); public virtual VNPoint GetPointInImage (VNHumanBodyPose3DObservationJointName jointName, out Foundation.NSError error); public virtual VNHumanBodyRecognizedPoint3D GetRecognizedPoint (VNHumanBodyPose3DObservationJointName jointName, out Foundation.NSError error); public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNHumanBodyRecognizedPoint3D> GetRecognizedPoints (VNHumanBodyPose3DObservationJointsGroupName jointName, out Foundation.NSError error); }

New Type: Vision.VNHumanBodyPose3DObservationHeightEstimation

[Serializable] public enum VNHumanBodyPose3DObservationHeightEstimation { Measured = 1, Reference = 0, }

New Type: Vision.VNHumanBodyPose3DObservationJointName

[Serializable] public enum VNHumanBodyPose3DObservationJointName { CenterHead = 11, CenterShoulder = 10, LeftAnkle = 8, LeftElbow = 14, LeftHip = 6, LeftKnee = 7, LeftShoulder = 13, LeftWrist = 15, None = 0, RightAnkle = 4, RightElbow = 16, RightHip = 2, RightKnee = 3, RightShoulder = 5, RightWrist = 17, Root = 1, Spine = 9, TopHead = 12, }

New Type: Vision.VNHumanBodyPose3DObservationJointNameExtensions

public static class VNHumanBodyPose3DObservationJointNameExtensions { // methods public static Foundation.NSString GetConstant (this VNHumanBodyPose3DObservationJointName self); public static VNHumanBodyPose3DObservationJointName GetValue (Foundation.NSString constant); }

New Type: Vision.VNHumanBodyPose3DObservationJointsGroupName

[Serializable] public enum VNHumanBodyPose3DObservationJointsGroupName { All = 7, Head = 1, LeftArm = 3, LeftLeg = 5, None = 0, RightArm = 4, RightLeg = 6, Torso = 2, }

New Type: Vision.VNHumanBodyPose3DObservationJointsGroupNameExtensions

public static class VNHumanBodyPose3DObservationJointsGroupNameExtensions { // methods public static Foundation.NSString GetConstant (this VNHumanBodyPose3DObservationJointsGroupName self); public static VNHumanBodyPose3DObservationJointsGroupName GetValue (Foundation.NSString constant); }

New Type: Vision.VNHumanBodyRecognizedPoint3D

public class VNHumanBodyRecognizedPoint3D : Vision.VNRecognizedPoint3D { // constructors public VNHumanBodyRecognizedPoint3D (Foundation.NSCoder coder); protected VNHumanBodyRecognizedPoint3D (Foundation.NSObjectFlag t); protected VNHumanBodyRecognizedPoint3D (ObjCRuntime.NativeHandle handle); public VNHumanBodyRecognizedPoint3D (System.Numerics.Vector4 position); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual System.Numerics.Vector4 LocalPosition { get; } public virtual VNHumanBodyPose3DObservationJointName ParentJoint { get; } }

New Type: Vision.VNInstanceMaskObservation

public class VNInstanceMaskObservation : Vision.VNObservation { // constructors public VNInstanceMaskObservation (Foundation.NSCoder coder); protected VNInstanceMaskObservation (Foundation.NSObjectFlag t); protected VNInstanceMaskObservation (ObjCRuntime.NativeHandle handle); // properties public virtual Foundation.NSIndexSet AllInstances { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CoreVideo.CVPixelBuffer InstanceMask { get; } // methods public virtual CoreVideo.CVPixelBuffer GenerateMask (Foundation.NSIndexSet instances, out Foundation.NSError error); public virtual CoreVideo.CVPixelBuffer GenerateMaskedImage (Foundation.NSIndexSet instances, VNImageRequestHandler requestHandler, bool cropResult, out Foundation.NSError error); public virtual CoreVideo.CVPixelBuffer GenerateScaledMask (Foundation.NSIndexSet instances, VNImageRequestHandler requestHandler, out Foundation.NSError error); }

New Type: Vision.VNPoint3D

public class VNPoint3D : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public VNPoint3D (Foundation.NSCoder coder); protected VNPoint3D (Foundation.NSObjectFlag t); protected VNPoint3D (ObjCRuntime.NativeHandle handle); public VNPoint3D (System.Numerics.Vector4 position); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual System.Numerics.Vector4 Position { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: Vision.VNRecognizedPoint3D

public class VNRecognizedPoint3D : Vision.VNPoint3D { // constructors public VNRecognizedPoint3D (Foundation.NSCoder coder); protected VNRecognizedPoint3D (Foundation.NSObjectFlag t); protected VNRecognizedPoint3D (ObjCRuntime.NativeHandle handle); public VNRecognizedPoint3D (System.Numerics.Vector4 position); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public static Foundation.NSString GroupKeyAll { get; } public virtual string Identifier { get; } }

New Type: Vision.VNRecognizedPoints3DObservation

public class VNRecognizedPoints3DObservation : Vision.VNObservation { // constructors public VNRecognizedPoints3DObservation (Foundation.NSCoder coder); protected VNRecognizedPoints3DObservation (Foundation.NSObjectFlag t); protected VNRecognizedPoints3DObservation (ObjCRuntime.NativeHandle handle); // properties public virtual Foundation.NSString[] AvailableGroupKeys { get; } public virtual Foundation.NSString[] AvailableKeys { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual VNRecognizedPoint3D GetRecognizedPoint (Foundation.NSString pointKey, out Foundation.NSError error); public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint3D> GetRecognizedPoints (Foundation.NSString groupKey, out Foundation.NSError error); }

New Type: Vision.VNTrackHomographicImageRegistrationRequest

public class VNTrackHomographicImageRegistrationRequest : Vision.VNStatefulRequest { // constructors public VNTrackHomographicImageRegistrationRequest (); protected VNTrackHomographicImageRegistrationRequest (Foundation.NSObjectFlag t); protected VNTrackHomographicImageRegistrationRequest (ObjCRuntime.NativeHandle handle); public VNTrackHomographicImageRegistrationRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNImageHomographicAlignmentObservation[] Results { get; } }

New Type: Vision.VNTrackOpticalFlowRequest

public class VNTrackOpticalFlowRequest : Vision.VNStatefulRequest { // constructors public VNTrackOpticalFlowRequest (); protected VNTrackOpticalFlowRequest (Foundation.NSObjectFlag t); protected VNTrackOpticalFlowRequest (ObjCRuntime.NativeHandle handle); public VNTrackOpticalFlowRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNTrackOpticalFlowRequestComputationAccuracy ComputationAccuracy { get; set; } public virtual bool KeepNetworkOutput { get; set; } public virtual uint OutputPixelFormat { get; set; } public virtual VNPixelBufferObservation[] Results { get; } }

New Type: Vision.VNTrackOpticalFlowRequestComputationAccuracy

[Serializable] public enum VNTrackOpticalFlowRequestComputationAccuracy { High = 2, Low = 0, Medium = 1, VeryHigh = 3, }

New Type: Vision.VNTrackTranslationalImageRegistrationRequest

public class VNTrackTranslationalImageRegistrationRequest : Vision.VNStatefulRequest { // constructors public VNTrackTranslationalImageRegistrationRequest (); protected VNTrackTranslationalImageRegistrationRequest (Foundation.NSObjectFlag t); protected VNTrackTranslationalImageRegistrationRequest (ObjCRuntime.NativeHandle handle); public VNTrackTranslationalImageRegistrationRequest (VNRequestCompletionHandler completionHandler); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual VNImageTranslationAlignmentObservation[] Results { get; } }

Namespace WebKit

Type Changed: WebKit.WKHttpCookieStore

Added methods:

public virtual void GetCookiePolicy (System.Action completionHandler); public virtual System.Threading.Tasks.Task GetCookiePolicyAsync (); public virtual void SetCookiePolicy (WKCookiePolicy policy, System.Action completionHandler); public virtual System.Threading.Tasks.Task SetCookiePolicyAsync (WKCookiePolicy policy);

Type Changed: WebKit.WKPdfConfiguration

Added property:

public virtual bool AllowTransparentBackground { get; set; }

Type Changed: WebKit.WKPreferences

Added property:

public virtual WKInactiveSchedulingPolicy InactiveSchedulingPolicy { get; set; }

Type Changed: WebKit.WKWebView

Added methods:

public virtual void GoBack (Foundation.NSObject sender); public virtual void GoForward (Foundation.NSObject sender); public virtual void Reload (Foundation.NSObject sender); public virtual void ReloadFromOrigin (Foundation.NSObject sender); public virtual void StopLoading (Foundation.NSObject sender);

Type Changed: WebKit.WKWebViewConfiguration

Added properties:

public virtual bool AllowsInlinePredictions { get; set; } public virtual WKUserInterfaceDirectionPolicy UserInterfaceDirectionPolicy { get; set; }

Type Changed: WebKit.WKWebsiteDataStore

Added property:

public virtual Foundation.NSUuid Identifier { get; }

Added methods:

public static WKWebsiteDataStore Create (Foundation.NSUuid identifier); public static void FetchAllDataStoreIdentifiers (System.Action<Foundation.NSArray<Foundation.NSUuid>> completionHandler); public static System.Threading.Tasks.Task<Foundation.NSArray<Foundation.NSUuid>> FetchAllDataStoreIdentifiersAsync (); public static void Remove (Foundation.NSUuid identifier, System.Action<Foundation.NSError> completionHandler); public static System.Threading.Tasks.Task RemoveAsync (Foundation.NSUuid identifier);

Type Changed: WebKit.WKWebsiteDataType

Added properties:

public static Foundation.NSString HashSalt { get; } public static Foundation.NSString MediaKeys { get; } public static Foundation.NSString SearchFieldRecentSearches { get; }

New Type: WebKit.WKCookiePolicy

[Serializable] public enum WKCookiePolicy { Allow = 0, Disallow = 1, }

New Type: WebKit.WKInactiveSchedulingPolicy

[Serializable] public enum WKInactiveSchedulingPolicy { None = 2, Suspend = 0, Throttle = 1, }

New Type: WebKit.WKUserInterfaceDirectionPolicy

[Serializable] public enum WKUserInterfaceDirectionPolicy { Content = 0, System = 1, }

New Type: WebKit.WebViewNotification

public static class WebViewNotification { // properties public static Foundation.NSString DidBeginEditing { get; } public static Foundation.NSString DidChange { get; } public static Foundation.NSString DidChangeSelection { get; } public static Foundation.NSString DidChangeTypingStyle { get; } public static Foundation.NSString DidEndEditing { get; }

// inner types
public static class Notifications {
    // methods
    public static Foundation.NSObject ObserveDidBeginEditing (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidBeginEditing (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChangeSelection (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChangeSelection (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChangeTypingStyle (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidChangeTypingStyle (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidEndEditing (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
    public static Foundation.NSObject ObserveDidEndEditing (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
}

}