MTLIntersectionFunctionTable

Trait MTLIntersectionFunctionTable 

Source
pub unsafe trait MTLIntersectionFunctionTable: MTLResource {
    // Provided methods
    unsafe fn setBuffer_offset_atIndex(
        &self,
        buffer: Option<&ProtocolObject<dyn MTLBuffer>>,
        offset: NSUInteger,
        index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    unsafe fn setBuffers_offsets_withRange(
        &self,
        buffers: NonNull<*const ProtocolObject<dyn MTLBuffer>>,
        offsets: NonNull<NSUInteger>,
        range: NSRange,
    )
       where Self: Sized + Message { ... }
    fn gpuResourceID(&self) -> MTLResourceID
       where Self: Sized + Message { ... }
    fn setFunction_atIndex(
        &self,
        function: Option<&ProtocolObject<dyn MTLFunctionHandle>>,
        index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    unsafe fn setFunctions_withRange(
        &self,
        functions: NonNull<*const ProtocolObject<dyn MTLFunctionHandle>>,
        range: NSRange,
    )
       where Self: Sized + Message { ... }
    unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_atIndex(
        &self,
        signature: MTLIntersectionFunctionSignature,
        index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_withRange(
        &self,
        signature: MTLIntersectionFunctionSignature,
        range: NSRange,
    )
       where Self: Sized + Message { ... }
    unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_atIndex(
        &self,
        signature: MTLIntersectionFunctionSignature,
        index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_withRange(
        &self,
        signature: MTLIntersectionFunctionSignature,
        range: NSRange,
    )
       where Self: Sized + Message { ... }
    unsafe fn setVisibleFunctionTable_atBufferIndex(
        &self,
        function_table: Option<&ProtocolObject<dyn MTLVisibleFunctionTable>>,
        buffer_index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    unsafe fn setVisibleFunctionTables_withBufferRange(
        &self,
        function_tables: NonNull<*const ProtocolObject<dyn MTLVisibleFunctionTable>>,
        buffer_range: NSRange,
    )
       where Self: Sized + Message { ... }
}
Available on crate features MTLAllocation and MTLIntersectionFunctionTable and MTLResource only.
Expand description

Provided Methods§

Source

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

Available on crate feature MTLBuffer only.
§Safety
  • buffer may need to be synchronized.
  • buffer may be unretained, you must ensure it is kept alive while in use.
  • buffer contents should be of the correct type.
  • offset might not be bounds-checked.
  • index might not be bounds-checked.
Source

unsafe fn setBuffers_offsets_withRange( &self, buffers: NonNull<*const ProtocolObject<dyn MTLBuffer>>, offsets: NonNull<NSUInteger>, range: NSRange, )
where Self: Sized + Message,

Available on crate feature MTLBuffer only.
§Safety
  • buffers must be a valid pointer.
  • offsets might not be bounds-checked.
  • offsets must be a valid pointer.
  • range might not be bounds-checked.
Source

fn gpuResourceID(&self) -> MTLResourceID
where Self: Sized + Message,

Available on crate feature MTLTypes only.

Handle of the GPU resource suitable for storing in an Argument Buffer

Source

fn setFunction_atIndex( &self, function: Option<&ProtocolObject<dyn MTLFunctionHandle>>, index: NSUInteger, )
where Self: Sized + Message,

Available on crate feature MTLFunctionHandle only.
Source

unsafe fn setFunctions_withRange( &self, functions: NonNull<*const ProtocolObject<dyn MTLFunctionHandle>>, range: NSRange, )
where Self: Sized + Message,

Available on crate feature MTLFunctionHandle only.
§Safety
  • functions must be a valid pointer.
  • range might not be bounds-checked.
Source

unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_atIndex( &self, signature: MTLIntersectionFunctionSignature, index: NSUInteger, )
where Self: Sized + Message,

§Safety

index might not be bounds-checked.

Source

unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_withRange( &self, signature: MTLIntersectionFunctionSignature, range: NSRange, )
where Self: Sized + Message,

§Safety

range might not be bounds-checked.

Source

unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_atIndex( &self, signature: MTLIntersectionFunctionSignature, index: NSUInteger, )
where Self: Sized + Message,

§Safety

index might not be bounds-checked.

Source

unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_withRange( &self, signature: MTLIntersectionFunctionSignature, range: NSRange, )
where Self: Sized + Message,

§Safety

range might not be bounds-checked.

Source

unsafe fn setVisibleFunctionTable_atBufferIndex( &self, function_table: Option<&ProtocolObject<dyn MTLVisibleFunctionTable>>, buffer_index: NSUInteger, )
where Self: Sized + Message,

Available on crate feature MTLVisibleFunctionTable only.
§Safety
  • function_table may need to be synchronized.
  • function_table may be unretained, you must ensure it is kept alive while in use.
  • bufferIndex might not be bounds-checked.
Source

unsafe fn setVisibleFunctionTables_withBufferRange( &self, function_tables: NonNull<*const ProtocolObject<dyn MTLVisibleFunctionTable>>, buffer_range: NSRange, )
where Self: Sized + Message,

Available on crate feature MTLVisibleFunctionTable only.
§Safety
  • function_tables must be a valid pointer.
  • bufferRange might not be bounds-checked.

Trait Implementations§

Source§

impl ProtocolType for dyn MTLIntersectionFunctionTable

Source§

const NAME: &'static str = "MTLIntersectionFunctionTable"

The name of the Objective-C protocol that this type represents. Read more
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 MTLIntersectionFunctionTable

Implementations on Foreign Types§

Source§

impl<T> MTLIntersectionFunctionTable for ProtocolObject<T>

Implementors§