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§
Sourceunsafe fn setBuffer_offset_atIndex(
&self,
buffer: Option<&ProtocolObject<dyn MTLBuffer>>,
offset: NSUInteger,
index: NSUInteger,
)
Available on crate feature MTLBuffer only.
unsafe fn setBuffer_offset_atIndex( &self, buffer: Option<&ProtocolObject<dyn MTLBuffer>>, offset: NSUInteger, index: NSUInteger, )
MTLBuffer only.§Safety
buffermay need to be synchronized.buffermay be unretained, you must ensure it is kept alive while in use.buffercontents should be of the correct type.offsetmight not be bounds-checked.indexmight not be bounds-checked.
Sourceunsafe fn setBuffers_offsets_withRange(
&self,
buffers: NonNull<*const ProtocolObject<dyn MTLBuffer>>,
offsets: NonNull<NSUInteger>,
range: NSRange,
)
Available on crate feature MTLBuffer only.
unsafe fn setBuffers_offsets_withRange( &self, buffers: NonNull<*const ProtocolObject<dyn MTLBuffer>>, offsets: NonNull<NSUInteger>, range: NSRange, )
MTLBuffer only.§Safety
buffersmust be a valid pointer.offsetsmight not be bounds-checked.offsetsmust be a valid pointer.rangemight not be bounds-checked.
Sourcefn gpuResourceID(&self) -> MTLResourceID
Available on crate feature MTLTypes only.
fn gpuResourceID(&self) -> MTLResourceID
MTLTypes only.Handle of the GPU resource suitable for storing in an Argument Buffer
fn setFunction_atIndex( &self, function: Option<&ProtocolObject<dyn MTLFunctionHandle>>, index: NSUInteger, )
Available on crate feature
MTLFunctionHandle only.Sourceunsafe fn setFunctions_withRange(
&self,
functions: NonNull<*const ProtocolObject<dyn MTLFunctionHandle>>,
range: NSRange,
)
Available on crate feature MTLFunctionHandle only.
unsafe fn setFunctions_withRange( &self, functions: NonNull<*const ProtocolObject<dyn MTLFunctionHandle>>, range: NSRange, )
MTLFunctionHandle only.§Safety
functionsmust be a valid pointer.rangemight not be bounds-checked.
Sourceunsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_atIndex(
&self,
signature: MTLIntersectionFunctionSignature,
index: NSUInteger,
)
unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_atIndex( &self, signature: MTLIntersectionFunctionSignature, index: NSUInteger, )
§Safety
index might not be bounds-checked.
Sourceunsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_withRange(
&self,
signature: MTLIntersectionFunctionSignature,
range: NSRange,
)
unsafe fn setOpaqueTriangleIntersectionFunctionWithSignature_withRange( &self, signature: MTLIntersectionFunctionSignature, range: NSRange, )
§Safety
range might not be bounds-checked.
Sourceunsafe fn setOpaqueCurveIntersectionFunctionWithSignature_atIndex(
&self,
signature: MTLIntersectionFunctionSignature,
index: NSUInteger,
)
unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_atIndex( &self, signature: MTLIntersectionFunctionSignature, index: NSUInteger, )
§Safety
index might not be bounds-checked.
Sourceunsafe fn setOpaqueCurveIntersectionFunctionWithSignature_withRange(
&self,
signature: MTLIntersectionFunctionSignature,
range: NSRange,
)
unsafe fn setOpaqueCurveIntersectionFunctionWithSignature_withRange( &self, signature: MTLIntersectionFunctionSignature, range: NSRange, )
§Safety
range might not be bounds-checked.
Sourceunsafe fn setVisibleFunctionTable_atBufferIndex(
&self,
function_table: Option<&ProtocolObject<dyn MTLVisibleFunctionTable>>,
buffer_index: NSUInteger,
)
Available on crate feature MTLVisibleFunctionTable only.
unsafe fn setVisibleFunctionTable_atBufferIndex( &self, function_table: Option<&ProtocolObject<dyn MTLVisibleFunctionTable>>, buffer_index: NSUInteger, )
MTLVisibleFunctionTable only.§Safety
function_tablemay need to be synchronized.function_tablemay be unretained, you must ensure it is kept alive while in use.bufferIndexmight not be bounds-checked.
Sourceunsafe fn setVisibleFunctionTables_withBufferRange(
&self,
function_tables: NonNull<*const ProtocolObject<dyn MTLVisibleFunctionTable>>,
buffer_range: NSRange,
)
Available on crate feature MTLVisibleFunctionTable only.
unsafe fn setVisibleFunctionTables_withBufferRange( &self, function_tables: NonNull<*const ProtocolObject<dyn MTLVisibleFunctionTable>>, buffer_range: NSRange, )
MTLVisibleFunctionTable only.§Safety
function_tablesmust be a valid pointer.bufferRangemight not be bounds-checked.
Trait Implementations§
impl<T> ImplementedBy<T> for dyn MTLIntersectionFunctionTable
Source§impl ProtocolType for dyn MTLIntersectionFunctionTable
impl ProtocolType for dyn MTLIntersectionFunctionTable
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".