Struct vulkano::image::sys::LinearLayout [−][src]
pub struct LinearLayout { pub offset: usize, pub size: usize, pub row_pitch: usize, pub array_pitch: usize, pub depth_pitch: usize, }
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: usize
Number of bytes from the start of the memory and the start of the queried subresource.
size: usize
Total number of bytes for the queried subresource. Can be used for a safety check.
row_pitch: usize
Number of bytes between two texels or two blocks in adjacent rows.
array_pitch: usize
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: usize
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
impl Clone for LinearLayout
[src]
impl Clone for LinearLayout
[src]fn clone(&self) -> LinearLayout
[src]
fn clone(&self) -> LinearLayout
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for LinearLayout
[src]
impl Debug for LinearLayout
[src]impl PartialEq<LinearLayout> for LinearLayout
[src]
impl PartialEq<LinearLayout> for LinearLayout
[src]fn eq(&self, other: &LinearLayout) -> bool
[src]
fn eq(&self, other: &LinearLayout) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &LinearLayout) -> bool
[src]
fn ne(&self, other: &LinearLayout) -> bool
[src]This method tests for !=
.
impl Copy for LinearLayout
[src]
impl Eq for LinearLayout
[src]
impl StructuralEq for LinearLayout
[src]
impl StructuralPartialEq for LinearLayout
[src]
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
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Content for T
[src]
impl<T> Content for T
[src]pub fn ref_from_ptr(*mut c_void, usize) -> Option<*mut T>
[src]
pub fn ref_from_ptr(*mut c_void, usize) -> Option<*mut T>
[src]Builds a pointer to this type from a raw pointer.
pub fn is_size_suitable(usize) -> bool
[src]
pub fn is_size_suitable(usize) -> bool
[src]Returns true if the size is suitable to store a type like this.
pub fn indiv_size() -> usize
[src]
pub fn indiv_size() -> usize
[src]Returns the size of an individual element.
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more