Struct rafx_api::extra::upload::RafxTransferUpload [−][src]
pub struct RafxTransferUpload { /* fields omitted */ }
Expand description
A state machine and associated buffers/synchronization primitives to simplify uploading resources to the GPU via a transfer queue, and then submitting a memory barrier to the graphics queue
Implementations
impl RafxTransferUpload
[src]
impl RafxTransferUpload
[src]pub fn new(
device_context: &RafxDeviceContext,
transfer_queue: &RafxQueue,
dst_queue: &RafxQueue,
size: u64
) -> RafxResult<Self>
[src]
device_context: &RafxDeviceContext,
transfer_queue: &RafxQueue,
dst_queue: &RafxQueue,
size: u64
) -> RafxResult<Self>
pub fn has_space_available(
&self,
bytes_to_write: usize,
required_alignment: usize,
number_of_writes: usize
) -> bool
[src]
&self,
bytes_to_write: usize,
required_alignment: usize,
number_of_writes: usize
) -> bool
pub fn push(
&mut self,
data: &[u8],
required_alignment: usize
) -> Result<u64, RafxUploadError>
[src]
&mut self,
data: &[u8],
required_alignment: usize
) -> Result<u64, RafxUploadError>
pub fn buffer_size(&self) -> u64
[src]
pub fn bytes_written(&self) -> u64
[src]
pub fn bytes_free(&self) -> u64
[src]
pub fn staging_buffer(&self) -> &RafxBuffer
[src]
pub fn transfer_command_pool(&self) -> &RafxCommandPool
[src]
pub fn transfer_command_buffer(&self) -> &RafxCommandBuffer
[src]
pub fn dst_command_pool(&self) -> &RafxCommandPool
[src]
pub fn dst_command_buffer(&self) -> &RafxCommandBuffer
[src]
pub fn transfer_queue(&self) -> &RafxQueue
[src]
pub fn dst_queue(&self) -> &RafxQueue
[src]
pub fn submit_transfer(&mut self) -> RafxResult<()>
[src]
pub fn submit_dst(&mut self) -> RafxResult<()>
[src]
pub fn state(&self) -> RafxResult<RafxTransferUploadState>
[src]
pub fn block_until_upload_complete(&mut self) -> RafxResult<()>
[src]
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for RafxTransferUpload
impl Send for RafxTransferUpload
impl Sync for RafxTransferUpload
impl Unpin for RafxTransferUpload
impl UnwindSafe for RafxTransferUpload
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> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn as_any(&self) -> &(dyn Any + 'static)
pub fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> Resource for T where
T: Downcast + Send + Sync,
[src]
T: Downcast + Send + Sync,