net9.0-ios17.2
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
{
[BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
[Export("useResources:count:usage:")]
[Preserve(Conditional = true)]
void UseResources(IMTLResource![]! resources, UIntPtr count, MTLResourceUsage usage);
}
}
.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 |
tvOS | 10.010.110.211.011.111.211.311.412.012.112.212.312.413.013.213.313.414.014.214.314.414.515.015.215.416.016.116.417.017.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:
|