Share via


IMTL4Compiler Interface

Definition

This interface represents the Objective-C protocol MTL4Compiler.

[Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4Compiler", WrapperType=typeof(Metal.MTL4CompilerWrapper))]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4LibraryDescriptor), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLLibrary), Selector="newLibraryWithDescriptor:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.IMTLLibrary), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLDynamicLibrary), Selector="newDynamicLibrary:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Foundation.NSUrl), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLDynamicLibrary), Selector="newDynamicLibraryWithURL:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLComputePipelineState), Selector="newComputePipelineStateWithDescriptor:compilerTaskOptions:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterByRef=new System.Boolean[] { false, false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4PipelineStageDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLComputePipelineState), Selector="newComputePipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateWithDescriptor:compilerTaskOptions:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterByRef=new System.Boolean[] { false, false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4RenderPipelineDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineStateBySpecialization", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.IMTLRenderPipelineState), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateBySpecializationWithDescriptor:pipeline:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBinaryFunction", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4BinaryFunctionDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTL4BinaryFunction), Selector="newBinaryFunctionWithDescriptor:compilerTaskOptions:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4LibraryDescriptor), typeof(Metal.MTLCreateLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newLibraryWithDescriptor:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateDynamicLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTLLibrary), typeof(Metal.MTLCreateDynamicLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newDynamicLibrary:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateDynamicLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSUrl), typeof(Metal.MTLCreateDynamicLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newDynamicLibraryWithURL:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateComputePipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateComputePipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newComputePipelineStateWithDescriptor:compilerTaskOptions:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterBlockProxy=new System.Type[] { null, null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateComputePipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4PipelineStageDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateComputePipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newComputePipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateWithDescriptor:compilerTaskOptions:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterBlockProxy=new System.Type[] { null, null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4RenderPipelineDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineStateBySpecialization", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.IMTLRenderPipelineState), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateBySpecializationWithDescriptor:pipeline:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBinaryFunction", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTL4CreateBinaryFunctionCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4BinaryFunctionDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTL4CreateBinaryFunctionCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newBinaryFunctionWithDescriptor:compilerTaskOptions:completionHandler:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningPipelineState", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4MachineLearningPipelineDescriptor), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTL4MachineLearningPipelineState), Selector="newMachineLearningPipelineStateWithDescriptor:error:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningPipelineState", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTL4CreateMachineLearningPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4MachineLearningPipelineDescriptor), typeof(Metal.MTL4CreateMachineLearningPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newMachineLearningPipelineStateWithDescriptor:completionHandler:")]
[Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.None, GetterSelector="device", IsProperty=true, IsRequired=true, IsStatic=false, Name="Device", PropertyType=typeof(Metal.IMTLDevice), Selector="device")]
[Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.None, GetterSelector="label", IsProperty=true, IsRequired=true, IsStatic=false, Name="Label", PropertyType=typeof(System.String), Selector="label")]
[Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.Strong, GetterSelector="pipelineDataSetSerializer", IsProperty=true, IsRequired=true, IsStatic=false, Name="PipelineDataSetSerializer", PropertyType=typeof(Metal.IMTL4PipelineDataSetSerializer), Selector="pipelineDataSetSerializer")]
public interface IMTL4Compiler : IDisposable, ObjCRuntime.INativeObject
[<Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4Compiler", WrapperType=typeof(Metal.MTL4CompilerWrapper))>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4LibraryDescriptor), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLLibrary), Selector="newLibraryWithDescriptor:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.IMTLLibrary), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLDynamicLibrary), Selector="newDynamicLibrary:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Foundation.NSUrl), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLDynamicLibrary), Selector="newDynamicLibraryWithURL:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLComputePipelineState), Selector="newComputePipelineStateWithDescriptor:compilerTaskOptions:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterByRef=new System.Boolean[] { false, false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4PipelineStageDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLComputePipelineState), Selector="newComputePipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateWithDescriptor:compilerTaskOptions:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterByRef=new System.Boolean[] { false, false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4RenderPipelineDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineStateBySpecialization", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.IMTLRenderPipelineState), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTLRenderPipelineState), Selector="newRenderPipelineStateBySpecializationWithDescriptor:pipeline:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBinaryFunction", ParameterByRef=new System.Boolean[] { false, false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4BinaryFunctionDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTL4BinaryFunction), Selector="newBinaryFunctionWithDescriptor:compilerTaskOptions:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4LibraryDescriptor), typeof(Metal.MTLCreateLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newLibraryWithDescriptor:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateDynamicLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTLLibrary), typeof(Metal.MTLCreateDynamicLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newDynamicLibrary:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateDynamicLibrary", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateDynamicLibraryCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSUrl), typeof(Metal.MTLCreateDynamicLibraryCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newDynamicLibraryWithURL:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateComputePipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateComputePipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newComputePipelineStateWithDescriptor:compilerTaskOptions:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputePipelineState", ParameterBlockProxy=new System.Type[] { null, null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateComputePipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4ComputePipelineDescriptor), typeof(Metal.MTL4PipelineStageDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateComputePipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newComputePipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateWithDescriptor:compilerTaskOptions:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineState", ParameterBlockProxy=new System.Type[] { null, null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.MTL4RenderPipelineDynamicLinkingDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateWithDescriptor:dynamicLinkingDescriptor:compilerTaskOptions:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderPipelineStateBySpecialization", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTLCreateRenderPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4PipelineDescriptor), typeof(Metal.IMTLRenderPipelineState), typeof(Metal.MTLCreateRenderPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newRenderPipelineStateBySpecializationWithDescriptor:pipeline:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBinaryFunction", ParameterBlockProxy=new System.Type[] { null, null, typeof(ObjCRuntime.Trampolines+NIDMTL4CreateBinaryFunctionCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4BinaryFunctionDescriptor), typeof(Metal.MTL4CompilerTaskOptions), typeof(Metal.MTL4CreateBinaryFunctionCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newBinaryFunctionWithDescriptor:compilerTaskOptions:completionHandler:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningPipelineState", ParameterByRef=new System.Boolean[] { false, true }, ParameterType=new System.Type[] { typeof(Metal.MTL4MachineLearningPipelineDescriptor), typeof(Foundation.NSError) }, ReturnType=typeof(Metal.IMTL4MachineLearningPipelineState), Selector="newMachineLearningPipelineStateWithDescriptor:error:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningPipelineState", ParameterBlockProxy=new System.Type[] { null, typeof(ObjCRuntime.Trampolines+NIDMTL4CreateMachineLearningPipelineStateCompletionHandler) }, ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4MachineLearningPipelineDescriptor), typeof(Metal.MTL4CreateMachineLearningPipelineStateCompletionHandler) }, ReturnType=typeof(Metal.IMTL4CompilerTask), Selector="newMachineLearningPipelineStateWithDescriptor:completionHandler:")>]
[<Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.None, GetterSelector="device", IsProperty=true, IsRequired=true, IsStatic=false, Name="Device", PropertyType=typeof(Metal.IMTLDevice), Selector="device")>]
[<Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.None, GetterSelector="label", IsProperty=true, IsRequired=true, IsStatic=false, Name="Label", PropertyType=typeof(System.String), Selector="label")>]
[<Foundation.ProtocolMember(ArgumentSemantic=ObjCRuntime.ArgumentSemantic.Strong, GetterSelector="pipelineDataSetSerializer", IsProperty=true, IsRequired=true, IsStatic=false, Name="PipelineDataSetSerializer", PropertyType=typeof(Metal.IMTL4PipelineDataSetSerializer), Selector="pipelineDataSetSerializer")>]
type IMTL4Compiler = interface
    interface INativeObject
    interface IDisposable
Attributes
Implements

Remarks

A class that implements this interface (and subclasses NSObject) will be exported to Objective-C as implementing the Objective-C protocol this interface represents.

A class may also implement members from this interface to implement members from the protocol.

Properties

Name Description
Device
Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from INativeObject)
Label
PipelineDataSetSerializer

Methods

Name Description
CreateBinaryFunction(MTL4BinaryFunctionDescriptor, MTL4CompilerTaskOptions, MTL4CreateBinaryFunctionCompletionHandler)
CreateBinaryFunction(MTL4BinaryFunctionDescriptor, MTL4CompilerTaskOptions, NSError)
CreateComputePipelineState(MTL4ComputePipelineDescriptor, MTL4CompilerTaskOptions, MTLCreateComputePipelineStateCompletionHandler)
CreateComputePipelineState(MTL4ComputePipelineDescriptor, MTL4CompilerTaskOptions, NSError)
CreateComputePipelineState(MTL4ComputePipelineDescriptor, MTL4PipelineStageDynamicLinkingDescriptor, MTL4CompilerTaskOptions, MTLCreateComputePipelineStateCompletionHandler)
CreateComputePipelineState(MTL4ComputePipelineDescriptor, MTL4PipelineStageDynamicLinkingDescriptor, MTL4CompilerTaskOptions, NSError)
CreateDynamicLibrary(IMTLLibrary, MTLCreateDynamicLibraryCompletionHandler)
CreateDynamicLibrary(IMTLLibrary, NSError)
CreateDynamicLibrary(NSUrl, MTLCreateDynamicLibraryCompletionHandler)
CreateDynamicLibrary(NSUrl, NSError)
CreateLibrary(MTL4LibraryDescriptor, MTLCreateLibraryCompletionHandler)
CreateLibrary(MTL4LibraryDescriptor, NSError)
CreateMachineLearningPipelineState(MTL4MachineLearningPipelineDescriptor, MTL4CreateMachineLearningPipelineStateCompletionHandler)
CreateMachineLearningPipelineState(MTL4MachineLearningPipelineDescriptor, NSError)
CreateRenderPipelineState(MTL4PipelineDescriptor, MTL4CompilerTaskOptions, MTLCreateRenderPipelineStateCompletionHandler)
CreateRenderPipelineState(MTL4PipelineDescriptor, MTL4CompilerTaskOptions, NSError)
CreateRenderPipelineState(MTL4PipelineDescriptor, MTL4RenderPipelineDynamicLinkingDescriptor, MTL4CompilerTaskOptions, MTLCreateRenderPipelineStateCompletionHandler)
CreateRenderPipelineState(MTL4PipelineDescriptor, MTL4RenderPipelineDynamicLinkingDescriptor, MTL4CompilerTaskOptions, NSError)
CreateRenderPipelineStateBySpecialization(MTL4PipelineDescriptor, IMTLRenderPipelineState, MTLCreateRenderPipelineStateCompletionHandler)
CreateRenderPipelineStateBySpecialization(MTL4PipelineDescriptor, IMTLRenderPipelineState, NSError)

Extension Methods

Name Description
GetHandle(INativeObject)
GetNonNullHandle(INativeObject, String)

Applies to