Trait objc2_metal::MTLIndirectRenderCommand

source ·
pub unsafe trait MTLIndirectRenderCommand: NSObjectProtocol + IsRetainable {
Show 16 methods // Provided methods unsafe fn setRenderPipelineState( &self, pipeline_state: &ProtocolObject<dyn MTLRenderPipelineState> ) where Self: Sized + Message { ... } unsafe fn setVertexBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn setFragmentBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn setVertexBuffer_offset_attributeStride_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, stride: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn drawPatches_patchStart_patchCount_patchIndexBuffer_patchIndexBufferOffset_instanceCount_baseInstance_tessellationFactorBuffer_tessellationFactorBufferOffset_tessellationFactorBufferInstanceStride( &self, number_of_patch_control_points: NSUInteger, patch_start: NSUInteger, patch_count: NSUInteger, patch_index_buffer: Option<&ProtocolObject<dyn MTLBuffer>>, patch_index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, instance_stride: NSUInteger ) where Self: Sized + Message { ... } unsafe fn drawIndexedPatches_patchStart_patchCount_patchIndexBuffer_patchIndexBufferOffset_controlPointIndexBuffer_controlPointIndexBufferOffset_instanceCount_baseInstance_tessellationFactorBuffer_tessellationFactorBufferOffset_tessellationFactorBufferInstanceStride( &self, number_of_patch_control_points: NSUInteger, patch_start: NSUInteger, patch_count: NSUInteger, patch_index_buffer: Option<&ProtocolObject<dyn MTLBuffer>>, patch_index_buffer_offset: NSUInteger, control_point_index_buffer: &ProtocolObject<dyn MTLBuffer>, control_point_index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, instance_stride: NSUInteger ) where Self: Sized + Message { ... } unsafe fn drawPrimitives_vertexStart_vertexCount_instanceCount_baseInstance( &self, primitive_type: MTLPrimitiveType, vertex_start: NSUInteger, vertex_count: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger ) where Self: Sized + Message { ... } unsafe fn drawIndexedPrimitives_indexCount_indexType_indexBuffer_indexBufferOffset_instanceCount_baseVertex_baseInstance( &self, primitive_type: MTLPrimitiveType, index_count: NSUInteger, index_type: MTLIndexType, index_buffer: &ProtocolObject<dyn MTLBuffer>, index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_vertex: NSInteger, base_instance: NSUInteger ) where Self: Sized + Message { ... } unsafe fn setObjectThreadgroupMemoryLength_atIndex( &self, length: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn setObjectBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn setMeshBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger ) where Self: Sized + Message { ... } unsafe fn drawMeshThreadgroups_threadsPerObjectThreadgroup_threadsPerMeshThreadgroup( &self, threadgroups_per_grid: MTLSize, threads_per_object_threadgroup: MTLSize, threads_per_mesh_threadgroup: MTLSize ) where Self: Sized + Message { ... } unsafe fn drawMeshThreads_threadsPerObjectThreadgroup_threadsPerMeshThreadgroup( &self, threads_per_grid: MTLSize, threads_per_object_threadgroup: MTLSize, threads_per_mesh_threadgroup: MTLSize ) where Self: Sized + Message { ... } unsafe fn setBarrier(&self) where Self: Sized + Message { ... } unsafe fn clearBarrier(&self) where Self: Sized + Message { ... } unsafe fn reset(&self) where Self: Sized + Message { ... }
}
Available on crate feature MTLIndirectCommandEncoder only.

Provided Methods§

source

unsafe fn setRenderPipelineState( &self, pipeline_state: &ProtocolObject<dyn MTLRenderPipelineState> )
where Self: Sized + Message,

Available on crate feature MTLRenderPipeline only.
source

unsafe fn setVertexBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn setFragmentBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn setVertexBuffer_offset_attributeStride_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, stride: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn drawPatches_patchStart_patchCount_patchIndexBuffer_patchIndexBufferOffset_instanceCount_baseInstance_tessellationFactorBuffer_tessellationFactorBufferOffset_tessellationFactorBufferInstanceStride( &self, number_of_patch_control_points: NSUInteger, patch_start: NSUInteger, patch_count: NSUInteger, patch_index_buffer: Option<&ProtocolObject<dyn MTLBuffer>>, patch_index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, instance_stride: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn drawIndexedPatches_patchStart_patchCount_patchIndexBuffer_patchIndexBufferOffset_controlPointIndexBuffer_controlPointIndexBufferOffset_instanceCount_baseInstance_tessellationFactorBuffer_tessellationFactorBufferOffset_tessellationFactorBufferInstanceStride( &self, number_of_patch_control_points: NSUInteger, patch_start: NSUInteger, patch_count: NSUInteger, patch_index_buffer: Option<&ProtocolObject<dyn MTLBuffer>>, patch_index_buffer_offset: NSUInteger, control_point_index_buffer: &ProtocolObject<dyn MTLBuffer>, control_point_index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, instance_stride: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn drawPrimitives_vertexStart_vertexCount_instanceCount_baseInstance( &self, primitive_type: MTLPrimitiveType, vertex_start: NSUInteger, vertex_count: NSUInteger, instance_count: NSUInteger, base_instance: NSUInteger )
where Self: Sized + Message,

Available on crate feature MTLRenderCommandEncoder only.
source

unsafe fn drawIndexedPrimitives_indexCount_indexType_indexBuffer_indexBufferOffset_instanceCount_baseVertex_baseInstance( &self, primitive_type: MTLPrimitiveType, index_count: NSUInteger, index_type: MTLIndexType, index_buffer: &ProtocolObject<dyn MTLBuffer>, index_buffer_offset: NSUInteger, instance_count: NSUInteger, base_vertex: NSInteger, base_instance: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLRenderCommandEncoder and MTLResource and MTLStageInputOutputDescriptor only.
source

unsafe fn setObjectThreadgroupMemoryLength_atIndex( &self, length: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

source

unsafe fn setObjectBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn setMeshBuffer_offset_atIndex( &self, buffer: &ProtocolObject<dyn MTLBuffer>, offset: NSUInteger, index: NSUInteger )
where Self: Sized + Message,

Available on crate features MTLBuffer and MTLResource only.
source

unsafe fn drawMeshThreadgroups_threadsPerObjectThreadgroup_threadsPerMeshThreadgroup( &self, threadgroups_per_grid: MTLSize, threads_per_object_threadgroup: MTLSize, threads_per_mesh_threadgroup: MTLSize )
where Self: Sized + Message,

Available on crate feature MTLTypes only.
source

unsafe fn drawMeshThreads_threadsPerObjectThreadgroup_threadsPerMeshThreadgroup( &self, threads_per_grid: MTLSize, threads_per_object_threadgroup: MTLSize, threads_per_mesh_threadgroup: MTLSize )
where Self: Sized + Message,

Available on crate feature MTLTypes only.
source

unsafe fn setBarrier(&self)
where Self: Sized + Message,

source

unsafe fn clearBarrier(&self)
where Self: Sized + Message,

source

unsafe fn reset(&self)
where Self: Sized + Message,

Trait Implementations§

source§

impl ProtocolType for dyn MTLIndirectRenderCommand

source§

const NAME: &'static str = "MTLIndirectRenderCommand"

The name of the Objective-C protocol that this type represents.
source§

fn protocol() -> Option<&'static AnyProtocol>

Get a reference to the Objective-C protocol object that this type represents. Read more
source§

impl<T> ImplementedBy<T> for dyn MTLIndirectRenderCommand

Implementations on Foreign Types§

source§

impl<T> MTLIndirectRenderCommand for ProtocolObject<T>

Implementors§