Idioma

IMTL4CommandBuffer Interface

Definição

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

[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
Atributos
Implementações

Observações

Uma classe que implementa esta interface (e subclasses NSObject) será exportada para Objective-C como implementando o protocolo Objective-C que esta interface representa.

Uma classe pode também implementar membros desta interface para implementar membros do protocolo.

Propriedades

Nome Descrição
Device

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

Handle

Handle (apontador) para a representação do objeto não gerido.

(Herdado de INativeObject)
Label

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

Métodos

Nome Descrição
BeginCommandBuffer(IMTL4CommandAllocator, MTL4CommandBufferOptions)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

BeginCommandBuffer(IMTL4CommandAllocator)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

CreateComputeCommandEncoder()

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

CreateMachineLearningCommandEncoder()

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

CreateRenderCommandEncoder(MTL4RenderPassDescriptor, MTL4RenderEncoderOptions)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

CreateRenderCommandEncoder(MTL4RenderPassDescriptor)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

EndCommandBuffer()

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

PopDebugGroup()

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

PushDebugGroup(String)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

ResolveCounterHeap(IMTL4CounterHeap, NSRange, MTL4BufferRange, IMTLFence, IMTLFence)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

UseResidencySet(IMTLResidencySet)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

UseResidencySets(IMTLResidencySet[])

Marca os conjuntos de residência especificados como parte da execução atual do buffer de comandos.

UseResidencySets(IntPtr, UIntPtr)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

WriteTimestamp(IMTL4CounterHeap, UIntPtr)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

Métodos da Extensão

Nome Descrição
GetHandle(INativeObject)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

GetNonNullHandle(INativeObject, String)

Esta interface representa o protocolo MTL4CommandBufferObjective-C .

Aplica-se a