pub struct PackedPayload<'a> {
pub data: &'a [u8],
pub width: u32,
pub height: u32,
pub bits: u32,
pub order: PackOrder,
pub row_stride: usize,
}Expand description
A uniformly bit-packed payload that can be unpacked without entropy decoding (directly on the GPU, or with SIMD kernels).
Fields§
§data: &'a [u8]Packed bytes, starting at the first row.
width: u32Width in samples.
height: u32Height in rows.
bits: u32Bits per sample.
order: PackOrderBit packing order.
row_stride: usizeBytes from the start of one row to the next.
Implementations§
Source§impl PackedPayload<'_>
impl PackedPayload<'_>
Sourcepub fn is_complete(&self) -> bool
pub fn is_complete(&self) -> bool
True when data holds every sample (only complete payloads take the GPU unpack
path; truncated ones are decoded on the CPU under the corruption policy).
Trait Implementations§
Source§impl<'a> Clone for PackedPayload<'a>
impl<'a> Clone for PackedPayload<'a>
impl<'a> Copy for PackedPayload<'a>
Auto Trait Implementations§
impl<'a> Freeze for PackedPayload<'a>
impl<'a> RefUnwindSafe for PackedPayload<'a>
impl<'a> Send for PackedPayload<'a>
impl<'a> Sync for PackedPayload<'a>
impl<'a> Unpin for PackedPayload<'a>
impl<'a> UnsafeUnpin for PackedPayload<'a>
impl<'a> UnwindSafe for PackedPayload<'a>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more