pub struct Blitter<B: Backend> { /* private fields */ }
Expand description
Manages blitting images across families and queues.
Implementations§
Source§impl<B> Blitter<B>where
B: Backend,
impl<B> Blitter<B>where
B: Backend,
Sourcepub unsafe fn fill_mips(
&self,
device: &Device<B>,
image: Handle<Image<B>>,
filter: Filter,
last: impl IntoIterator<Item = ImageState>,
next: impl IntoIterator<Item = ImageState>,
) -> Result<(), OutOfMemory>
pub unsafe fn fill_mips( &self, device: &Device<B>, image: Handle<Image<B>>, filter: Filter, last: impl IntoIterator<Item = ImageState>, next: impl IntoIterator<Item = ImageState>, ) -> Result<(), OutOfMemory>
Fill all mip levels from the first level of provided image.
§Safety
device
must be the same that was used to create this Blitter
.
image
must belong to the device
.
last
state must be valid for corresponding image layer at the time of command execution (after memory transfers).
last
and next
should contain at least image.levels()
elements.
image.levels()
must be greater than 1
Sourcepub unsafe fn blit_image(
&self,
device: &Device<B>,
queue_id: QueueId,
src_image: &Handle<Image<B>>,
dst_image: &Handle<Image<B>>,
filter: Filter,
regions: impl IntoIterator<Item = BlitRegion>,
) -> Result<(), OutOfMemory>
pub unsafe fn blit_image( &self, device: &Device<B>, queue_id: QueueId, src_image: &Handle<Image<B>>, dst_image: &Handle<Image<B>>, filter: Filter, regions: impl IntoIterator<Item = BlitRegion>, ) -> Result<(), OutOfMemory>
Blit provided regions of src_image
to dst_image
.
§Safety
device
must be the same that was used to create this Blitter
.
src
and dst
must belong to the device
.
regions’ last_*
states must be valid at the time of command execution (after memory transfers).
All regions must have distinct subresource layer and level combination.
Trait Implementations§
Auto Trait Implementations§
impl<B> Freeze for Blitter<B>
impl<B> !RefUnwindSafe for Blitter<B>
impl<B> Send for Blitter<B>
impl<B> Sync for Blitter<B>
impl<B> Unpin for Blitter<B>
impl<B> UnwindSafe for Blitter<B>where
<B as Backend>::CommandPool: UnwindSafe,
<B as Backend>::Fence: UnwindSafe,
<B as Backend>::CommandBuffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
<B as Backend>::Memory: RefUnwindSafe,
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