Share via


IMDLMeshBufferAllocator Interface

Definition

This interface represents the Objective-C protocol MDLMeshBufferAllocator.

[Foundation.Protocol(Name="MDLMeshBufferAllocator", WrapperType=typeof(ModelIO.MDLMeshBufferAllocatorWrapper))]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateZone", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.UIntPtr) }, ReturnType=typeof(ModelIO.IMDLMeshBufferZone), Selector="newZone:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateZone", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSNumber[]), typeof(Foundation.NSNumber[]) }, ReturnType=typeof(ModelIO.IMDLMeshBufferZone), Selector="newZoneForBuffersWithSize:andType:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.UIntPtr), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBuffer:type:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSData), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferWithData:type:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(ModelIO.IMDLMeshBufferZone), typeof(System.UIntPtr), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferFromZone:length:type:")]
[Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(ModelIO.IMDLMeshBufferZone), typeof(Foundation.NSData), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferFromZone:data:type:")]
public interface IMDLMeshBufferAllocator : IDisposable, ObjCRuntime.INativeObject
[<Foundation.Protocol(Name="MDLMeshBufferAllocator", WrapperType=typeof(ModelIO.MDLMeshBufferAllocatorWrapper))>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateZone", ParameterByRef=new System.Boolean[] { false }, ParameterType=new System.Type[] { typeof(System.UIntPtr) }, ReturnType=typeof(ModelIO.IMDLMeshBufferZone), Selector="newZone:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateZone", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSNumber[]), typeof(Foundation.NSNumber[]) }, ReturnType=typeof(ModelIO.IMDLMeshBufferZone), Selector="newZoneForBuffersWithSize:andType:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(System.UIntPtr), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBuffer:type:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false }, ParameterType=new System.Type[] { typeof(Foundation.NSData), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferWithData:type:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(ModelIO.IMDLMeshBufferZone), typeof(System.UIntPtr), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferFromZone:length:type:")>]
[<Foundation.ProtocolMember(IsProperty=false, IsRequired=true, IsStatic=false, Name="CreateBuffer", ParameterByRef=new System.Boolean[] { false, false, false }, ParameterType=new System.Type[] { typeof(ModelIO.IMDLMeshBufferZone), typeof(Foundation.NSData), typeof(ModelIO.MDLMeshBufferType) }, ReturnType=typeof(ModelIO.IMDLMeshBuffer), Selector="newBufferFromZone:data:type:")>]
type IMDLMeshBufferAllocator = interface
    interface INativeObject
    interface IDisposable
Derived
Attributes
Implements

Remarks

A class that implements this interface (and subclasses NSObject) will be exported to Objective-C as implementing the Objective-C protocol this interface represents.

A class may also implement members from this interface to implement members from the protocol.

Properties

Name Description
Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from INativeObject)

Methods

Name Description
CreateBuffer(IMDLMeshBufferZone, NSData, MDLMeshBufferType)

Creates a new buffer from the specified data, of the specified type, in the specified zone.

CreateBuffer(IMDLMeshBufferZone, UIntPtr, MDLMeshBufferType)
CreateBuffer(NSData, MDLMeshBufferType)

Creates a new buffer from the specified data, of the specified type, in the default zone of the implementor.

CreateBuffer(UIntPtr, MDLMeshBufferType)
CreateZone(NSNumber[], NSNumber[])

Creates a new zone that is large enough to contain buffers from the list of sizes and corresponding types.

CreateZone(UIntPtr)

Creates and returns a new mesh buffer zone with the specified capacity.

Extension Methods

Name Description
GetHandle(INativeObject)
GetNonNullHandle(INativeObject, String)

Applies to