pub struct LinearLayout {
pub offset: DeviceSize,
pub size: DeviceSize,
pub row_pitch: DeviceSize,
pub array_pitch: DeviceSize,
pub depth_pitch: DeviceSize,
}
Expand description
Describes the memory layout of an image with linear tiling.
Obtained by calling *_linear_layout
on the image.
The address of a texel at (x, y, z, layer)
is layer * array_pitch + z * depth_pitch + y * row_pitch + x * size_of_each_texel + offset
. size_of_each_texel
must be determined
depending on the format. The same formula applies for compressed formats, except that the
coordinates must be in number of blocks.
Fields
offset: DeviceSize
Number of bytes from the start of the memory and the start of the queried subresource.
size: DeviceSize
Total number of bytes for the queried subresource. Can be used for a safety check.
row_pitch: DeviceSize
Number of bytes between two texels or two blocks in adjacent rows.
array_pitch: DeviceSize
Number of bytes between two texels or two blocks in adjacent array layers. This value is undefined for images with only one array layer.
depth_pitch: DeviceSize
Number of bytes between two texels or two blocks in adjacent depth layers. This value is undefined for images that are not three-dimensional.
Trait Implementations
sourceimpl Clone for LinearLayout
impl Clone for LinearLayout
sourcefn clone(&self) -> LinearLayout
fn clone(&self) -> LinearLayout
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for LinearLayout
impl Debug for LinearLayout
sourceimpl PartialEq<LinearLayout> for LinearLayout
impl PartialEq<LinearLayout> for LinearLayout
sourcefn eq(&self, other: &LinearLayout) -> bool
fn eq(&self, other: &LinearLayout) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &LinearLayout) -> bool
fn ne(&self, other: &LinearLayout) -> bool
This method tests for !=
.
impl Copy for LinearLayout
impl Eq for LinearLayout
impl StructuralEq for LinearLayout
impl StructuralPartialEq for LinearLayout
Auto Trait Implementations
impl RefUnwindSafe for LinearLayout
impl Send for LinearLayout
impl Sync for LinearLayout
impl Unpin for LinearLayout
impl UnwindSafe for LinearLayout
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more