IMTL4CommandBuffer Interface
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Deze interface vertegenwoordigt het Objective-C-protocol MTL4CommandBuffer.
[Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")]
[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", SetterSelector="setLabel:")]
public interface IMTL4CommandBuffer : IDisposable, ObjCRuntime.INativeObject
[Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")]
[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", SetterSelector="setLabel:")]
[ObjCRuntime.UnsupportedSimulator("ios")]
public interface IMTL4CommandBuffer : IDisposable, ObjCRuntime.INativeObject
[Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")]
[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", SetterSelector="setLabel:")]
[ObjCRuntime.UnsupportedSimulator("tvos")]
public interface IMTL4CommandBuffer : IDisposable, ObjCRuntime.INativeObject
[<Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")>]
[<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", SetterSelector="setLabel:")>]
type IMTL4CommandBuffer = interface
interface INativeObject
interface IDisposable
[<Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")>]
[<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", SetterSelector="setLabel:")>]
[<ObjCRuntime.UnsupportedSimulator("ios")>]
type IMTL4CommandBuffer = interface
interface INativeObject
interface IDisposable
[<Foundation.Protocol(BackwardsCompatibleCodeGeneration=false, Name="MTL4CommandBuffer", WrapperType=typeof(Metal.MTL4CommandBufferWrapper))>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator) }, Selector="beginCommandBufferWithAllocator:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="BeginCommandBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CommandAllocator), typeof(Metal.MTL4CommandBufferOptions) }, Selector="beginCommandBufferWithAllocator:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="EndCommandBuffer", Selector="endCommandBuffer")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateRenderCommandEncoder", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.MTL4RenderPassDescriptor), typeof(Metal.MTL4RenderEncoderOptions) }, ReturnType=typeof(Metal.IMTL4RenderCommandEncoder), Selector="renderCommandEncoderWithDescriptor:options:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateComputeCommandEncoder", ReturnType=typeof(Metal.IMTL4ComputeCommandEncoder), Selector="computeCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateMachineLearningCommandEncoder", ReturnType=typeof(Metal.IMTL4MachineLearningCommandEncoder), Selector="machineLearningCommandEncoder")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySet", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(Metal.IMTLResidencySet) }, Selector="useResidencySet:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="UseResidencySets", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.IntPtr), typeof(System.UIntPtr) }, Selector="useResidencySets:count:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PushDebugGroup", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.String) }, Selector="pushDebugGroup:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="PopDebugGroup", Selector="popDebugGroup")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="WriteTimestamp", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(System.UIntPtr) }, Selector="writeTimestampIntoHeap:atIndex:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="ResolveCounterHeap", ParameterByRef=new System.Boolean[] { false, false, false, false, false }, ParameterType=new System.Type[] { typeof(Metal.IMTL4CounterHeap), typeof(Foundation.NSRange), typeof(Metal.MTL4BufferRange), typeof(Metal.IMTLFence), typeof(Metal.IMTLFence) }, Selector="resolveCounterHeap:withRange:intoBuffer:waitFence:updateFence:")>]
[<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", SetterSelector="setLabel:")>]
[<ObjCRuntime.UnsupportedSimulator("tvos")>]
type IMTL4CommandBuffer = interface
interface INativeObject
interface IDisposable
- Kenmerken
- Implementeringen
Opmerkingen
Een klasse die deze interface (en subklassen NSObject) implementeert, wordt geƫxporteerd naar Objective-C als het implementeren van het Objective-C protocol dat deze interface vertegenwoordigt.
Een klasse kan ook leden van deze interface implementeren om leden uit het protocol te implementeren.
Eigenschappen
| Name | Description |
|---|---|
| Device |
Deze interface vertegenwoordigt het Objective-C-protocol |
| Handle |
Handle (pointer) naar de onbeheerde objectweergave. (Overgenomen van INativeObject) |
| Label |
Deze interface vertegenwoordigt het Objective-C-protocol |
Methoden
| Name | Description |
|---|---|
| BeginCommandBuffer(IMTL4CommandAllocator, MTL4CommandBufferOptions) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| BeginCommandBuffer(IMTL4CommandAllocator) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| CreateComputeCommandEncoder() |
Deze interface vertegenwoordigt het Objective-C-protocol |
| CreateMachineLearningCommandEncoder() |
Deze interface vertegenwoordigt het Objective-C-protocol |
| CreateRenderCommandEncoder(MTL4RenderPassDescriptor, MTL4RenderEncoderOptions) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| CreateRenderCommandEncoder(MTL4RenderPassDescriptor) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| EndCommandBuffer() |
Deze interface vertegenwoordigt het Objective-C-protocol |
| PopDebugGroup() |
Deze interface vertegenwoordigt het Objective-C-protocol |
| PushDebugGroup(String) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| ResolveCounterHeap(IMTL4CounterHeap, NSRange, MTL4BufferRange, IMTLFence, IMTLFence) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| UseResidencySet(IMTLResidencySet) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| UseResidencySets(IMTLResidencySet[]) |
Markeert de opgegeven verblijfssets als onderdeel van de huidige opdrachtbufferuitvoering. |
| UseResidencySets(IntPtr, UIntPtr) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| WriteTimestamp(IMTL4CounterHeap, UIntPtr) |
Deze interface vertegenwoordigt het Objective-C-protocol |
Extensiemethoden
| Name | Description |
|---|---|
| GetHandle(INativeObject) |
Deze interface vertegenwoordigt het Objective-C-protocol |
| GetNonNullHandle(INativeObject, String) |
Deze interface vertegenwoordigt het Objective-C-protocol |