net9.0-ios17.2
namespace Metal
{
    [Protocol(Name = "MTLRenderPipelineState", WrapperType = typeof(MTLRenderPipelineStateWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetImageblockMemoryLength", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(MTLSize) }, ReturnType = typeof(UIntPtr), Selector = "imageblockMemoryLengthForDimensions:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "FunctionHandleWithFunction", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(IMTLFunction), typeof(MTLRenderStages) }, ReturnType = typeof(IMTLFunctionHandle), Selector = "functionHandleWithFunction:stage:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "NewVisibleFunctionTableWithDescriptor", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(MTLVisibleFunctionTableDescriptor), typeof(MTLRenderStages) }, ReturnType = typeof(IMTLVisibleFunctionTable), Selector = "newVisibleFunctionTableWithDescriptor:stage:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "NewIntersectionFunctionTableWithDescriptor", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(MTLIntersectionFunctionTableDescriptor), typeof(MTLRenderStages) }, ReturnType = typeof(IMTLIntersectionFunctionTable), Selector = "newIntersectionFunctionTableWithDescriptor:stage:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "NewRenderPipelineStateWithAdditionalBinaryFunctions", ParameterByRef = new[] { false, true }, ParameterType = new[] { typeof(MTLRenderPipelineFunctionsDescriptor), typeof(NSError) }, ReturnType = typeof(IMTLRenderPipelineState), Selector = "newRenderPipelineStateWithAdditionalBinaryFunctions:error:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "label", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Label", PropertyType = typeof(string), Selector = "label")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "device", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Device", PropertyType = typeof(IMTLDevice), Selector = "device")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "maxTotalThreadsPerThreadgroup", IsProperty = true, IsRequired = true, IsStatic = false, Name = "MaxTotalThreadsPerThreadgroup", PropertyType = typeof(UIntPtr), Selector = "maxTotalThreadsPerThreadgroup")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "threadgroupSizeMatchesTileSize", IsProperty = true, IsRequired = true, IsStatic = false, Name = "ThreadgroupSizeMatchesTileSize", PropertyType = typeof(bool), Selector = "threadgroupSizeMatchesTileSize")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "imageblockSampleLength", IsProperty = true, IsRequired = true, IsStatic = false, Name = "ImageblockSampleLength", PropertyType = typeof(UIntPtr), Selector = "imageblockSampleLength")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "supportIndirectCommandBuffers", IsProperty = true, IsRequired = true, IsStatic = false, Name = "SupportIndirectCommandBuffers", PropertyType = typeof(bool), Selector = "supportIndirectCommandBuffers")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "meshThreadExecutionWidth", IsProperty = true, IsRequired = true, IsStatic = false, Name = "MeshThreadExecutionWidth", PropertyType = typeof(UIntPtr), Selector = "meshThreadExecutionWidth")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "maxTotalThreadgroupsPerMeshGrid", IsProperty = true, IsRequired = true, IsStatic = false, Name = "MaxTotalThreadgroupsPerMeshGrid", PropertyType = typeof(UIntPtr), Selector = "maxTotalThreadgroupsPerMeshGrid")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "gpuResourceID", IsProperty = true, IsRequired = true, IsStatic = false, Name = "GpuResourceId", PropertyType = typeof(MTLResourceId), Selector = "gpuResourceID")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "maxTotalThreadsPerMeshThreadgroup", IsProperty = true, IsRequired = false, IsStatic = false, Name = "MaxTotalThreadsPerMeshThreadgroup", PropertyType = typeof(UIntPtr), Selector = "maxTotalThreadsPerMeshThreadgroup")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "maxTotalThreadsPerObjectThreadgroup", IsProperty = true, IsRequired = false, IsStatic = false, Name = "MaxTotalThreadsPerObjectThreadgroup", PropertyType = typeof(UIntPtr), Selector = "maxTotalThreadsPerObjectThreadgroup")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "objectThreadExecutionWidth", IsProperty = true, IsRequired = false, IsStatic = false, Name = "ObjectThreadExecutionWidth", PropertyType = typeof(UIntPtr), Selector = "objectThreadExecutionWidth")]
    [SupportedOSPlatform("maccatalyst")]
    [SupportedOSPlatform("ios")]
    [SupportedOSPlatform("macos")]
    [SupportedOSPlatform("tvos")]
    public interface IMTLRenderPipelineState : INativeObject, IDisposable
    {
        [BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
        [Export("newVisibleFunctionTableWithDescriptor:stage:")]
        [Preserve(Conditional = true)]
        [SupportedOSPlatform("macos12.0")]
        [SupportedOSPlatform("ios15.0")]
        [SupportedOSPlatform("maccatalyst15.0")]
        [UnsupportedOSPlatform("tvos")]
        [return: Release]
        IMTLVisibleFunctionTable? NewVisibleFunctionTableWithDescriptor(MTLVisibleFunctionTableDescriptor! descriptor, MTLRenderStages stage);
    }
}
.NET 6.07.08.09.0
Information specific to net9.0
Platforms This API is only available when you target a specific platform:
iOS 10.010.110.210.311.011.111.211.311.412.012.112.212.312.413.013.113.213.313.413.513.614.014.114.214.314.414.515.015.215.416.016.116.216.417.017.2
Mac Catalyst 13.113.213.313.413.514.214.314.414.515.015.215.416.116.216.417.017.2
macOS 10.1410.1510.1611.011.111.211.312.012.112.313.013.113.314.014.2
Information specific to net9.0-ios17.2
Assembly

Microsoft.iOS , Version=17.2.0.0, PublicKeyToken=84e04ff9cfb79065

Referencing

The API is automatically referenced.

Platform Restrictions

This API is only supported on the following platforms:

  • iOS >= 15
  • Mac Catalyst >= 15
  • macOS >= 12
  • tvOS
  • Built-in API
  • Package-provided API

11/26/2024
An error has occurred. This application may no longer respond until reloaded. Reload 🗙