net9.0-ios
namespace Metal
{
    [Protocol(Name = "MTLAccelerationStructureCommandEncoder", WrapperType = typeof(MTLAccelerationStructureCommandEncoderWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "BuildAccelerationStructure", ParameterByRef = new[] { false, false, false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(MTLAccelerationStructureDescriptor), typeof(IMTLBuffer), typeof(UIntPtr) }, Selector = "buildAccelerationStructure:descriptor:scratchBuffer:scratchBufferOffset:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "RefitAccelerationStructure", ParameterByRef = new[] { false, false, false, false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(MTLAccelerationStructureDescriptor), typeof(IMTLAccelerationStructure), typeof(IMTLBuffer), typeof(UIntPtr) }, Selector = "refitAccelerationStructure:descriptor:destination:scratchBuffer:scratchBufferOffset:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "CopyAccelerationStructure", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(IMTLAccelerationStructure) }, Selector = "copyAccelerationStructure:toAccelerationStructure:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "WriteCompactedAccelerationStructureSize", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(IMTLBuffer), typeof(UIntPtr) }, Selector = "writeCompactedAccelerationStructureSize:toBuffer:offset:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "CopyAndCompactAccelerationStructure", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(IMTLAccelerationStructure) }, Selector = "copyAndCompactAccelerationStructure:toAccelerationStructure:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UpdateFence", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(IMTLFence) }, Selector = "updateFence:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "WaitForFence", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(IMTLFence) }, Selector = "waitForFence:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UseResource", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(IMTLResource), typeof(MTLResourceUsage) }, Selector = "useResource:usage:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UseResources", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(IMTLResource[]), typeof(UIntPtr), typeof(MTLResourceUsage) }, Selector = "useResources:count:usage:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UseHeap", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(IMTLHeap) }, Selector = "useHeap:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UseHeaps", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(IMTLHeap[]), typeof(UIntPtr) }, Selector = "useHeaps:count:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "SampleCountersInBuffer", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(IMTLCounterSampleBuffer), typeof(UIntPtr), typeof(bool) }, Selector = "sampleCountersInBuffer:atSampleIndex:withBarrier:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "WriteCompactedAccelerationStructureSize", ParameterByRef = new[] { false, false, false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(IMTLBuffer), typeof(UIntPtr), typeof(MTLDataType) }, Selector = "writeCompactedAccelerationStructureSize:toBuffer:offset:sizeDataType:")]
    [ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "RefitAccelerationStructure", ParameterByRef = new[] { false, false, false, false, false, false }, ParameterType = new[] { typeof(IMTLAccelerationStructure), typeof(MTLAccelerationStructureDescriptor), typeof(IMTLAccelerationStructure), typeof(IMTLBuffer), typeof(UIntPtr), typeof(MTLAccelerationStructureRefitOptions) }, Selector = "refitAccelerationStructure:descriptor:destination:scratchBuffer:scratchBufferOffset:options:")]
    [SupportedOSPlatform("macos11.0")]
    [SupportedOSPlatform("ios14.0")]
    [SupportedOSPlatform("tvos16.0")]
    [SupportedOSPlatform("maccatalyst14.0")]
    public interface IMTLAccelerationStructureCommandEncoder : IMTLCommandEncoder, INativeObject, IDisposable
}
Assembly Microsoft.iOS , Version=17.0.0.0, PublicKeyToken=84e04ff9cfb79065
.NET 6.0-ios6.0-maccatalyst6.0-macos7.0-ios7.0-maccatalyst7.0-macos8.0-ios8.0-maccatalyst8.0-macos8.0-tvos9.0-ios9.0-maccatalyst9.0-macos9.0-tvos
OS Platforms

For the selected framework this API is only supported on the following OS platforms:

  • iOS >= 14
  • Mac Catalyst >= 14
  • macOS >= 11
  • tvOS >= 16
  • Built-in API
  • Package-provided API

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