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

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

Microsoft.tvOS.dll

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 properties:

public static NSString DirectoryEntryCountKey { get; } public static NSString FileProtectionCompleteWhenUserInactive { 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 UIKit.UIViewController 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 UIKit.UIViewController result);

Type Changed: GameKit.GKAchievementDescription

Added property:

public virtual Foundation.NSNumber RarityPercent { get; }

Type Changed: GameKit.GKLeaderboardEntry

Added methods:

public virtual UIKit.UIViewController 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 UIKit.UIViewController 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 (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers); // properties public UIKit.UIViewController 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 (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers, System.AsyncCallback callback, object object); public virtual void EndInvoke (System.IAsyncResult result); public virtual void Invoke (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers); }

Namespace Metal

Type Changed: Metal.IMTLDevice

Added properties:

public virtual ulong RecommendedMaxWorkingSetSize { get; } public virtual bool SupportsBCTextureCompression { 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 UIntPtr FirstMipmapInTail { get; }

Type Changed: Metal.MTLArgumentEncoder_Extensions

Added methods:

public static void SetAccelerationStructure (this IMTLArgumentEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr index); public static void SetIntersectionFunctionTable (this IMTLArgumentEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr index); public static void SetIntersectionFunctionTables (this IMTLArgumentEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range); public static void SetVisibleFunctionTable (this IMTLArgumentEncoder This, IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr index); public static void SetVisibleFunctionTables (this IMTLArgumentEncoder This, IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range);

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.MTLComputePipelineDescriptor

Added properties:

public virtual UIntPtr MaxCallStackDepth { get; set; } public virtual bool SupportAddingBinaryFunctions { 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 void ConvertSparsePixelRegions (this IMTLDevice This, IntPtr pixelRegions, IntPtr tileRegions, MTLSize tileSize, MTLSparseTextureRegionAlignmentMode mode, UIntPtr numRegions); public static void ConvertSparseTileRegions (this IMTLDevice This, IntPtr tileRegions, IntPtr pixelRegions, MTLSize tileSize, UIntPtr numRegions); public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor); public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, UIntPtr size); public static MTLAccelerationStructureSizes CreateAccelerationStructureSizes (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor); public static IMTLArgumentEncoder CreateArgumentEncoder (this IMTLDevice This, IMTLBufferBinding bufferBinding); public static IMTLRasterizationRateMap CreateRasterizationRateMap (this IMTLDevice This, MTLRasterizationRateMapDescriptor descriptor); 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 MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount); public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize); public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This); public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This, MTLSparsePageSize sparsePageSize); public static bool GetSupports32BitFloatFiltering (this IMTLDevice This); public static bool GetSupports32BitMsaa (this IMTLDevice This); public static bool GetSupportsFunctionPointers (this IMTLDevice This); public static bool GetSupportsFunctionPointersFromRender (this IMTLDevice This); public static bool GetSupportsPrimitiveMotionBlur (this IMTLDevice This); public static bool GetSupportsQueryTextureLod (this IMTLDevice This); public static bool GetSupportsRaytracing (this IMTLDevice This); public static bool GetSupportsRaytracingFromRender (this IMTLDevice This); public static bool GetSupportsShaderBarycentricCoordinates (this IMTLDevice This); public static bool SupportsRasterizationRateMap (this IMTLDevice This, UIntPtr layerCount); public static bool SupportsVertexAmplification (this IMTLDevice This, UIntPtr count);

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.MTLLanguageVersion

Added values:

v3_0 = 196608, v3_1 = 196609,

Type Changed: Metal.MTLLibrary_Extensions

Added methods:

public static void CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, System.Action<IMTLFunction,Foundation.NSError> completionHandler); public static IMTLFunction CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error);

Type Changed: Metal.MTLLinkedFunctions

Added property:

public virtual IMTLFunction[] BinaryFunctions { get; set; }

Type Changed: Metal.MTLRenderPassDescriptor

Added property:

public virtual IMTLRasterizationRateMap RasterizationRateMap { get; set; }

Type Changed: Metal.MTLRenderPipelineDescriptor

Added property:

public virtual UIntPtr MaxVertexAmplificationCount { get; set; }

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.MTLSamplerDescriptor

Added property:

public virtual MTLSamplerBorderColor BorderColor { get; set; }

Type Changed: Metal.MTLTextureDescriptor

Added property:

public virtual MTLTextureCompressionType CompressionType { get; set; }

Type Changed: Metal.MTLTextureUsage

Added value:

Type Changed: Metal.MTLTileRenderPipelineDescriptor

Added properties:

public virtual UIntPtr MaxCallStackDepth { get; set; } public virtual bool SupportAddingBinaryFunctions { get; set; }

Type Changed: Metal.MTLVertexFormat

Added values:

FloatRG11B10 = 54, FloatRgb9E5 = 55,

New Type: Metal.IMTLAccelerationStructure

public interface IMTLAccelerationStructure : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual MTLResourceId GpuResourceId { get; } public virtual UIntPtr Size { get; } }

New Type: Metal.IMTLAccelerationStructureCommandEncoder

public interface IMTLAccelerationStructureCommandEncoder : IMTLCommandEncoder, ObjCRuntime.INativeObject, System.IDisposable { // methods public abstract void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset); public abstract void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure); public abstract void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure); public abstract void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset); public abstract void SampleCountersInBuffer (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier); public abstract void UpdateFence (IMTLFence fence); public abstract void UseHeap (IMTLHeap heap); public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count); public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage); public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage); public abstract void WaitForFence (IMTLFence fence); public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset); public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset, MTLDataType sizeDataType); }

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.IMTLFunctionHandle

public interface IMTLFunctionHandle : ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual IMTLDevice Device { get; } public virtual MTLFunctionType FunctionType { get; } public virtual string Name { get; } }

New Type: Metal.IMTLIntersectionFunctionTable

public interface IMTLIntersectionFunctionTable : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable { // methods public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index); public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range); public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index); public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range); public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range); public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index); public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex); public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange); }

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.IMTLRasterizationRateMap

public interface IMTLRasterizationRateMap : ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual IMTLDevice Device { get; } public virtual string Label { get; } public virtual UIntPtr LayerCount { get; } public virtual MTLSizeAndAlign ParameterBufferSizeAndAlign { get; } public virtual MTLSize PhysicalGranularity { get; } public virtual MTLSize ScreenSize { get; } // methods public abstract void CopyParameterData (IMTLBuffer buffer, UIntPtr offset); public abstract MTLSize GetPhysicalSize (UIntPtr layerIndex); public abstract MTLCoordinate2D MapPhysicalToScreenCoordinates (MTLCoordinate2D physicalCoordinates, UIntPtr layerIndex); public abstract MTLCoordinate2D MapScreenToPhysicalCoordinates (MTLCoordinate2D screenCoordinates, UIntPtr layerIndex); }

New Type: Metal.IMTLResourceStateCommandEncoder

public interface IMTLResourceStateCommandEncoder : IMTLCommandEncoder, ObjCRuntime.INativeObject, System.IDisposable { // methods public abstract void Update (IMTLFence fence); public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset); public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, MTLRegion region, UIntPtr mipLevel, UIntPtr slice); public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IntPtr regions, IntPtr mipLevels, IntPtr slices, UIntPtr numRegions); public abstract void Wait (IMTLFence fence); }

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.IMTLVisibleFunctionTable

public interface IMTLVisibleFunctionTable : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable { // methods public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index); public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range); }

New Type: Metal.MTLAccelerationStructureBoundingBoxGeometryDescriptor

public class MTLAccelerationStructureBoundingBoxGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors protected MTLAccelerationStructureBoundingBoxGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureBoundingBoxGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public virtual IMTLBuffer BoundingBoxBuffer { get; set; } public virtual UIntPtr BoundingBoxBufferOffset { get; set; } public virtual UIntPtr BoundingBoxCount { get; set; } public virtual UIntPtr BoundingBoxStride { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public static MTLAccelerationStructureBoundingBoxGeometryDescriptor Create (); }

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.MTLAccelerationStructureDescriptor

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

New Type: Metal.MTLAccelerationStructureGeometryDescriptor

public class MTLAccelerationStructureGeometryDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLAccelerationStructureGeometryDescriptor (); protected MTLAccelerationStructureGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public virtual bool AllowDuplicateIntersectionFunctionInvocation { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr IntersectionFunctionTableOffset { get; set; } public virtual string Label { get; set; } public virtual bool Opaque { get; set; } public virtual IMTLBuffer PrimitiveDataBuffer { get; set; } public virtual UIntPtr PrimitiveDataBufferOffset { get; set; } public virtual UIntPtr PrimitiveDataElementSize { get; set; } public virtual UIntPtr PrimitiveDataStride { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLAccelerationStructureInstanceDescriptorType

[Serializable] public enum MTLAccelerationStructureInstanceDescriptorType { Default = 0, Indirect = 3, IndirectMotion = 4, Motion = 2, UserID = 1, }

New Type: Metal.MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor

public class MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors public MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor (); protected MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public virtual MTLMotionKeyframeData[] BoundingBoxBuffers { get; set; } public virtual UIntPtr BoundingBoxCount { get; set; } public virtual UIntPtr BoundingBoxStride { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public static MTLAccelerationStructureMotionBoundingBoxGeometryDescriptor Create (); }

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.MTLAccelerationStructureMotionTriangleGeometryDescriptor

public class MTLAccelerationStructureMotionTriangleGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors public MTLAccelerationStructureMotionTriangleGeometryDescriptor (); protected MTLAccelerationStructureMotionTriangleGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureMotionTriangleGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IMTLBuffer IndexBuffer { get; set; } public virtual UIntPtr IndexBufferOffset { get; set; } public virtual MTLIndexType IndexType { get; set; } public virtual IMTLBuffer TransformationMatrixBuffer { get; set; } public virtual UIntPtr TransformationMatrixBufferOffset { get; set; } public virtual UIntPtr TriangleCount { get; set; } public virtual MTLMotionKeyframeData[] VertexBuffers { get; set; } public virtual MTLAttributeFormat VertexFormat { get; set; } public virtual UIntPtr VertexStride { get; set; } // methods public static MTLAccelerationStructureMotionTriangleGeometryDescriptor Create (); }

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.MTLAccelerationStructureSizes

public struct MTLAccelerationStructureSizes { // fields public UIntPtr AccelerationStructureSize; public UIntPtr BuildScratchBufferSize; public UIntPtr RefitScratchBufferSize; }

New Type: Metal.MTLAccelerationStructureTriangleGeometryDescriptor

public class MTLAccelerationStructureTriangleGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor { // constructors public MTLAccelerationStructureTriangleGeometryDescriptor (); protected MTLAccelerationStructureTriangleGeometryDescriptor (Foundation.NSObjectFlag t); protected MTLAccelerationStructureTriangleGeometryDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IMTLBuffer IndexBuffer { get; set; } public virtual UIntPtr IndexBufferOffset { get; set; } public virtual MTLIndexType IndexType { get; set; } public virtual IMTLBuffer TransformationMatrixBuffer { get; set; } public virtual UIntPtr TransformationMatrixBufferOffset { get; set; } public virtual UIntPtr TriangleCount { get; set; } public virtual IMTLBuffer VertexBuffer { get; set; } public virtual UIntPtr VertexBufferOffset { get; set; } public virtual MTLAttributeFormat VertexFormat { get; set; } public virtual UIntPtr VertexStride { get; set; } // methods public static MTLAccelerationStructureTriangleGeometryDescriptor Create (); }

New Type: Metal.MTLAccelerationStructureUsage

[Serializable] [Flags] public enum MTLAccelerationStructureUsage { ExtendedLimits = 4, None = 0, PreferFastBuild = 2, Refit = 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.MTLBlitCommandEncoder_Extensions

public static class MTLBlitCommandEncoder_Extensions { // methods public static void GetTextureAccessCounters (this IMTLBlitCommandEncoder This, IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice, bool resetCounters, IMTLBuffer countersBuffer, UIntPtr countersBufferOffset); public static void ResetTextureAccessCounters (this IMTLBlitCommandEncoder This, IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice); }

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); public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This, MTLAccelerationStructurePassDescriptor descriptor); public static IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (this IMTLCommandBuffer This, MTLResourceStatePassDescriptor resourceStatePassDescriptor); public static IMTLResourceStateCommandEncoder GetResourceStateCommandEncoder (this IMTLCommandBuffer This); }

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 SetAccelerationStructure (this IMTLComputeCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex); 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); public static void SetIntersectionFunctionTable (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex); public static void SetIntersectionFunctionTables (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range); public static void SetVisibleFunctionTable (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex); public static void SetVisibleFunctionTables (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range); }

New Type: Metal.MTLComputePipelineState_Extensions

public static class MTLComputePipelineState_Extensions { // methods public static IMTLComputePipelineState CreateComputePipelineState (this IMTLComputePipelineState This, IMTLFunction[] functions, out Foundation.NSError error); public static IMTLFunctionHandle CreateFunctionHandle (this IMTLComputePipelineState This, IMTLFunction function); public static IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (this IMTLComputePipelineState This, MTLIntersectionFunctionTableDescriptor descriptor); public static IMTLVisibleFunctionTable CreateVisibleFunctionTable (this IMTLComputePipelineState This, MTLVisibleFunctionTableDescriptor descriptor); public static MTLResourceId GetGpuResourceId (this IMTLComputePipelineState This); }

New Type: Metal.MTLCoordinate2D

public struct MTLCoordinate2D { // fields public float X; public float Y; }

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.MTLFunction_Extensions

public static class MTLFunction_Extensions { // methods public static MTLFunctionOptions GetOptions (this IMTLFunction This); }

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.MTLInstanceAccelerationStructureDescriptor

public class MTLInstanceAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor { // constructors protected MTLInstanceAccelerationStructureDescriptor (Foundation.NSObjectFlag t); protected MTLInstanceAccelerationStructureDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr InstanceCount { 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 IMTLAccelerationStructure[] InstancedAccelerationStructures { get; set; } public virtual IMTLBuffer MotionTransformBuffer { get; set; } public virtual UIntPtr MotionTransformBufferOffset { get; set; } public virtual UIntPtr MotionTransformCount { get; set; } // methods public static MTLInstanceAccelerationStructureDescriptor Create (); }

New Type: Metal.MTLIntersectionFunctionDescriptor

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

New Type: Metal.MTLIntersectionFunctionSignature

[Serializable] [Flags] public enum MTLIntersectionFunctionSignature { CurveData = 128, ExtendedLimits = 32, InstanceMotion = 8, Instancing = 1, MaxLevels = 64, None = 0, PrimitiveMotion = 16, TriangleData = 2, WorldSpaceData = 4, }

New Type: Metal.MTLIntersectionFunctionTableDescriptor

public class MTLIntersectionFunctionTableDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MTLIntersectionFunctionTableDescriptor (Foundation.NSObjectFlag t); protected MTLIntersectionFunctionTableDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr FunctionCount { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public static MTLIntersectionFunctionTableDescriptor Create (); }

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.MTLMotionBorderMode

[Serializable] public enum MTLMotionBorderMode { Clamp = 0, Vanish = 1, }

New Type: Metal.MTLMotionKeyframeData

public class MTLMotionKeyframeData : Foundation.NSObject { // constructors public MTLMotionKeyframeData (); protected MTLMotionKeyframeData (Foundation.NSObjectFlag t); protected MTLMotionKeyframeData (ObjCRuntime.NativeHandle handle); // properties public virtual IMTLBuffer Buffer { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr Offset { get; set; } // methods public static MTLMotionKeyframeData Create (); }

New Type: Metal.MTLPrimitiveAccelerationStructureDescriptor

public class MTLPrimitiveAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor { // constructors protected MTLPrimitiveAccelerationStructureDescriptor (Foundation.NSObjectFlag t); protected MTLPrimitiveAccelerationStructureDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual MTLAccelerationStructureGeometryDescriptor[] GeometryDescriptors { get; set; } public virtual MTLMotionBorderMode MotionEndBorderMode { get; set; } public virtual float MotionEndTime { get; set; } public virtual UIntPtr MotionKeyframeCount { get; set; } public virtual MTLMotionBorderMode MotionStartBorderMode { get; set; } public virtual float MotionStartTime { get; set; } // methods public static MTLPrimitiveAccelerationStructureDescriptor Create (); }

New Type: Metal.MTLRasterizationRateLayerArray

public class MTLRasterizationRateLayerArray : Foundation.NSObject { // constructors public MTLRasterizationRateLayerArray (); protected MTLRasterizationRateLayerArray (Foundation.NSObjectFlag t); protected MTLRasterizationRateLayerArray (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual MTLRasterizationRateLayerDescriptor GetObject (UIntPtr layerIndex); public virtual void SetObject (MTLRasterizationRateLayerDescriptor layer, UIntPtr layerIndex); }

New Type: Metal.MTLRasterizationRateLayerDescriptor

public class MTLRasterizationRateLayerDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MTLRasterizationRateLayerDescriptor (Foundation.NSObjectFlag t); public MTLRasterizationRateLayerDescriptor (MTLSize sampleCount); protected MTLRasterizationRateLayerDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual MTLRasterizationRateSampleArray Horizontal { get; } public virtual MTLSize MaxSampleCount { get; } public virtual MTLSize SampleCount { get; set; } public virtual MTLRasterizationRateSampleArray Vertical { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLRasterizationRateMapDescriptor

public class MTLRasterizationRateMapDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLRasterizationRateMapDescriptor (); protected MTLRasterizationRateMapDescriptor (Foundation.NSObjectFlag t); protected MTLRasterizationRateMapDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Label { get; set; } public virtual UIntPtr LayerCount { get; } public virtual MTLRasterizationRateLayerArray Layers { get; } public virtual MTLSize ScreenSize { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public static MTLRasterizationRateMapDescriptor Create (MTLSize screenSize); public static MTLRasterizationRateMapDescriptor Create (MTLSize screenSize, MTLRasterizationRateLayerDescriptor layer); public static MTLRasterizationRateMapDescriptor Create (MTLSize screenSize, UIntPtr layerCount, out MTLRasterizationRateLayerDescriptor layers); public virtual MTLRasterizationRateLayerDescriptor GetLayer (UIntPtr layerIndex); public virtual void SetLayer (MTLRasterizationRateLayerDescriptor layer, UIntPtr layerIndex); }

New Type: Metal.MTLRasterizationRateSampleArray

public class MTLRasterizationRateSampleArray : Foundation.NSObject { // constructors public MTLRasterizationRateSampleArray (); protected MTLRasterizationRateSampleArray (Foundation.NSObjectFlag t); protected MTLRasterizationRateSampleArray (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual Foundation.NSNumber GetObject (UIntPtr index); public virtual void SetObject (Foundation.NSNumber value, UIntPtr index); }

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 MemoryBarrier (this IMTLRenderCommandEncoder This, MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before); public static void MemoryBarrier (this IMTLRenderCommandEncoder This, IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before); public static void SetFragmentAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex); public static void SetFragmentIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex); public static void SetFragmentIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range); public static void SetFragmentVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex); public static void SetFragmentVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range); 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 SetTileAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex); public static void SetTileIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex); public static void SetTileIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range); public static void SetTileVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex); public static void SetTileVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range); public static void SetVertexAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex); public static void SetVertexAmplificationCount (this IMTLRenderCommandEncoder This, UIntPtr count, MTLVertexAmplificationViewMapping viewMappings); 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); public static void SetVertexIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex); public static void SetVertexIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range); public static void SetVertexVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex); public static void SetVertexVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range); }

New Type: Metal.MTLRenderPipelineFunctionsDescriptor

public class MTLRenderPipelineFunctionsDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLRenderPipelineFunctionsDescriptor (); protected MTLRenderPipelineFunctionsDescriptor (Foundation.NSObjectFlag t); protected MTLRenderPipelineFunctionsDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IMTLFunction[] FragmentAdditionalBinaryFunctions { get; set; } public virtual IMTLFunction[] TileAdditionalBinaryFunctions { get; set; } public virtual IMTLFunction[] VertexAdditionalBinaryFunctions { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Metal.MTLRenderPipelineState_Extensions

public static class MTLRenderPipelineState_Extensions { // methods public static IMTLFunctionHandle FunctionHandleWithFunction (this IMTLRenderPipelineState This, IMTLFunction function, MTLRenderStages stage); public static UIntPtr GetMaxTotalThreadsPerMeshThreadgroup (this IMTLRenderPipelineState This); public static UIntPtr GetMaxTotalThreadsPerObjectThreadgroup (this IMTLRenderPipelineState This); public static UIntPtr GetObjectThreadExecutionWidth (this IMTLRenderPipelineState This); public static IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (this IMTLRenderPipelineState This, MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage); public static IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (this IMTLRenderPipelineState This, MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error); public static IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (this IMTLRenderPipelineState This, MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage); }

New Type: Metal.MTLResourceId

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

New Type: Metal.MTLResourceStateCommandEncoder_Extensions

public static class MTLResourceStateCommandEncoder_Extensions { // methods 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); }

New Type: Metal.MTLResourceStatePassDescriptor

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

New Type: Metal.MTLResourceStatePassSampleBufferAttachmentDescriptor

public class MTLResourceStatePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public MTLResourceStatePassSampleBufferAttachmentDescriptor (); protected MTLResourceStatePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t); protected MTLResourceStatePassSampleBufferAttachmentDescriptor (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.MTLResourceStatePassSampleBufferAttachmentDescriptorArray

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

New Type: Metal.MTLSamplerBorderColor

[Serializable] public enum MTLSamplerBorderColor { OpaqueBlack = 1, OpaqueWhite = 2, TransparentBlack = 0, }

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.MTLSparseTextureMappingMode

[Serializable] [Flags] public enum MTLSparseTextureMappingMode { Map = 0, Unmap = 1, }

New Type: Metal.MTLSparseTextureRegionAlignmentMode

[Serializable] [Flags] public enum MTLSparseTextureRegionAlignmentMode { Inward = 1, Outward = 0, }

New Type: Metal.MTLTextureCompressionType

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

New Type: Metal.MTLTexture_Extensions

public static class MTLTexture_Extensions { // methods public static MTLTextureCompressionType GetCompressionType (this IMTLTexture This); public static MTLResourceId GetGpuResourceId (this IMTLTexture This); public static bool GetIsSparse (this IMTLTexture This); public static UIntPtr GetTailSizeInBytes (this IMTLTexture This); }

New Type: Metal.MTLVertexAmplificationViewMapping

public struct MTLVertexAmplificationViewMapping { // fields public uint RenderTargetArrayIndexOffset; public uint ViewportArrayIndexOffset; }

New Type: Metal.MTLVisibleFunctionTableDescriptor

public class MTLVisibleFunctionTableDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MTLVisibleFunctionTableDescriptor (Foundation.NSObjectFlag t); protected MTLVisibleFunctionTableDescriptor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr FunctionCount { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public static MTLVisibleFunctionTableDescriptor Create (); }

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 property:

public virtual Metal.IMTLResourceStateCommandEncoder ResourceStateCommandEncoder { get; }

Added methods:

public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (); public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (Metal.MTLAccelerationStructurePassDescriptor descriptor); public virtual Metal.IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (Metal.MTLResourceStatePassDescriptor resourceStatePassDescriptor);

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 = "17.0.0"; +public const string Version = "17.1.0";

Added field:

public static const string CoreMidiLibrary = "/System/Library/Frameworks/CoreMIDI.framework/CoreMIDI";

Type Changed: ObjCRuntime.DisposableObject

Added method:

protected void ClearHandle ();

Namespace UIKit

New Type: UIKit.NSAttributedStringDocumentReadingOptions

public class NSAttributedStringDocumentReadingOptions : Foundation.DictionaryContainer { // constructors public NSAttributedStringDocumentReadingOptions (); public NSAttributedStringDocumentReadingOptions (Foundation.NSDictionary dictionary); // properties public Foundation.NSStringEncoding? CharacterEncoding { get; set; } public Foundation.NSDictionary DefaultAttributes { get; set; } public NSAttributedStringDocumentType? DocumentType { get; set; } public NSTextScalingType? SourceTextScaling { get; set; } public NSTextScalingType? TargetTextScaling { get; set; } }

New Type: UIKit.NSAttributedStringDocumentType

[Serializable] public enum NSAttributedStringDocumentType { DocFormat = 5, Html = 3, MacSimple = 4, OfficeOpenXml = 7, OpenDocument = 9, Plain = 0, Rtf = 1, Rtfd = 2, Unknown = -1, WebArchive = 8, WordML = 6, }

New Type: UIKit.NSAttributedStringDocumentTypeExtensions

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

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; } }

New Namespace CoreMidi

New Type: CoreMidi.MidiCVStatus

[Serializable] public enum MidiCVStatus { AssignableControl = 3, AssignablePnc = 1, ChannelPressure = 13, ControlChange = 11, NoteOff = 8, NoteOn = 9, PerNoteMgmt = 15, PerNotePitchBend = 6, PitchBend = 14, PolyPressure = 10, ProgramChange = 12, RegisteredControl = 2, RegisteredPnc = 0, RelAssignableControl = 5, RelRegisteredControl = 4, }

New Type: CoreMidi.MidiMessageType

[Serializable] public enum MidiMessageType { ChannelVoice1 = 2, ChannelVoice2 = 4, Data128 = 5, SysEx = 3, System = 1, UnknownF = 15, Utility = 0, }

New Type: CoreMidi.MidiNetworkConnectionPolicy

[Serializable] public enum MidiNetworkConnectionPolicy { Anyone = 2, HostsInContactsList = 1, NoOne = 0, }

New Type: CoreMidi.MidiNoteAttribute

[Serializable] public enum MidiNoteAttribute { ManufacturerSpecific = 1, None = 0, Pitch = 3, ProfileSpecific = 2, }

New Type: CoreMidi.MidiPerNoteManagementOptions

[Serializable] [Flags] public enum MidiPerNoteManagementOptions { Detach = 2, Reset = 1, }

New Type: CoreMidi.MidiProgramChangeOptions

[Serializable] [Flags] public enum MidiProgramChangeOptions { BankValid = 1, }

New Type: CoreMidi.MidiProtocolId

[Serializable] public enum MidiProtocolId { Protocol_1_0 = 1, Protocol_2_0 = 2, }

New Type: CoreMidi.MidiSysExStatus

[Serializable] public enum MidiSysExStatus { Complete = 0, Continue = 2, End = 3, MixedDataSetHeader = 8, MixedDataSetPayload = 9, Start = 1, }

New Type: CoreMidi.MidiSystemStatus

[Serializable] public enum MidiSystemStatus { ActiveSending = 254, Continue = 251, EndOfExclusive = 247, Mtc = 241, SongPosPointer = 242, SongSelect = 243, Start = 250, StartOfExclusive = 240, Stop = 252, SystemReset = 255, TimingClock = 248, TuneRequest = 246, }

New Type: CoreMidi.MidiUtilityStatus

[Serializable] public enum MidiUtilityStatus { JitterReductionClock = 1, JitterReductionTimestamp = 2, Noop = 0, }