xamarinios
namespace Metal
{
[Introduced(PlatformName.iOS, 10, 0, PlatformArchitecture.All, null)]
[Introduced(PlatformName.TvOS, 10, 0, PlatformArchitecture.All, null)]
[Introduced(PlatformName.MacOSX, 10, 13, PlatformArchitecture.All, null)]
[Protocol(Name = "MTLHeap", WrapperType = typeof(MTLHeapWrapper))]
[ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetMaxAvailableSize", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(nuint) }, ReturnType = typeof(nuint), Selector = "maxAvailableSizeWithAlignment:")]
[ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "CreateBuffer", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(nuint), typeof(MTLResourceOptions) }, ReturnType = typeof(IMTLBuffer), Selector = "newBufferWithLength:options:")]
[ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "CreateTexture", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(MTLTextureDescriptor) }, ReturnType = typeof(IMTLTexture), Selector = "newTextureWithDescriptor:")]
[ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "SetPurgeableState", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(MTLPurgeableState) }, ReturnType = typeof(MTLPurgeableState), Selector = "setPurgeableState:")]
[ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "CreateBuffer", ParameterByRef = new[] { false, false, false }, ParameterType = new[] { typeof(nuint), typeof(MTLResourceOptions), typeof(nuint) }, ReturnType = typeof(IMTLBuffer), Selector = "newBufferWithLength:options:offset:")]
[ProtocolMember(IsProperty = false, IsRequired = false, IsStatic = false, Name = "CreateTexture", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(MTLTextureDescriptor), typeof(nuint) }, ReturnType = typeof(IMTLTexture), Selector = "newTextureWithDescriptor:offset:")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "device", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Device", PropertyType = typeof(IMTLDevice), Selector = "device")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "storageMode", IsProperty = true, IsRequired = true, IsStatic = false, Name = "StorageMode", PropertyType = typeof(MTLStorageMode), Selector = "storageMode")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "cpuCacheMode", IsProperty = true, IsRequired = true, IsStatic = false, Name = "CpuCacheMode", PropertyType = typeof(MTLCpuCacheMode), Selector = "cpuCacheMode")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "size", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Size", PropertyType = typeof(nuint), Selector = "size")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "usedSize", IsProperty = true, IsRequired = true, IsStatic = false, Name = "UsedSize", PropertyType = typeof(nuint), Selector = "usedSize")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "currentAllocatedSize", IsProperty = true, IsRequired = false, IsStatic = false, Name = "CurrentAllocatedSize", PropertyType = typeof(nuint), Selector = "currentAllocatedSize")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "hazardTrackingMode", IsProperty = true, IsRequired = false, IsStatic = false, Name = "HazardTrackingMode", PropertyType = typeof(MTLHazardTrackingMode), Selector = "hazardTrackingMode")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "resourceOptions", IsProperty = true, IsRequired = false, IsStatic = false, Name = "ResourceOptions", PropertyType = typeof(MTLResourceOptions), Selector = "resourceOptions")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "type", IsProperty = true, IsRequired = false, IsStatic = false, Name = "Type", PropertyType = typeof(MTLHeapType), Selector = "type")]
[ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "label", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Label", PropertyType = typeof(string), Selector = "label", SetterSelector = "setLabel:")]
[Unavailable(PlatformName.WatchOS, PlatformArchitecture.All, null)]
public interface IMTLHeap : INativeObject, IDisposable
{
[BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
[Export("newBufferWithLength:options:")]
[Preserve(Conditional = true)]
[return: Release]
IMTLBuffer? CreateBuffer(nuint length, MTLResourceOptions options);
}
}
Xamarin iOS | 0.0 |
---|---|
Xamarin macOS | 0.0 |
Xamarin tvOS | 0.0 |
Information specific to xamarinios | |
Assembly | Xamarin.iOS , Version=0.0.0.0, PublicKeyToken=84e04ff9cfb79065 |
Referencing | The API is automatically referenced. |
Platform Restrictions | This framework does not have platform annotations. |