struct Load {
opcode: Op,
type_id: Word,
image_id: Word,
}
Expand description
Texel access information for an ImageLoad
expression.
Fields§
§opcode: Op
The specific opcode we’ll use to perform the fetch. Storage images
require OpImageRead
, while sampled images require OpImageFetch
.
type_id: Word
The type id produced by the actual image access instruction.
image_id: Word
The id of the image being accessed.
Implementations§
source§impl Load
impl Load
fn from_image_expr( ctx: &mut BlockContext<'_>, image_id: Word, image_class: ImageClass, result_type_id: Word, ) -> Result<Load, Error>
Trait Implementations§
source§impl Access for Load
impl Access for Load
source§fn generate(
&self,
id_gen: &mut IdGenerator,
coordinates_id: Word,
level_id: Option<Word>,
sample_id: Option<Word>,
block: &mut Block,
) -> Word
fn generate( &self, id_gen: &mut IdGenerator, coordinates_id: Word, level_id: Option<Word>, sample_id: Option<Word>, block: &mut Block, ) -> Word
Write an instruction to access a given texel of this image.
source§fn result_type(&self) -> Word
fn result_type(&self) -> Word
Return the SPIR-V type of the value produced by the code written by
generate
. If the access does not produce a value, Self::Output
should be ()
.source§fn out_of_bounds_value(&self, ctx: &mut BlockContext<'_>) -> Word
fn out_of_bounds_value(&self, ctx: &mut BlockContext<'_>) -> Word
Construct the SPIR-V ‘zero’ value to be returned for an out-of-bounds
access under the
ReadZeroSkipWrite
policy. If the access does not
produce a value, Self::Output
should be ()
.Auto Trait Implementations§
impl Freeze for Load
impl RefUnwindSafe for Load
impl Send for Load
impl Sync for Load
impl Unpin for Load
impl UnwindSafe for Load
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more