|
MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
|
| MAYAFLUX_API TransferHandle MayaFlux::Buffers::upload_back_buffer_async | ( | const VKBufferResources::GenerationSlot & | slot, |
| const void * | data, | ||
| size_t | size, | ||
| std::shared_ptr< VKBuffer > & | staging | ||
| ) |
Upload to a back_buffers slot without waiting for completion.
| slot | Destination slot, typically from VKBuffer::get_back_buffer(). |
| data | Source pointer, at least size bytes. Copied into staging before returning, so the caller may free it immediately. |
| size | Byte count to copy. |
| staging | Persistent staging buffer, grown if too small. |
The staging buffer is in use until the returned handle is resolved. Any further transfer through the same staging buffer must resolve this one first, or the copy source is overwritten mid-flight.
Definition at line 133 of file StagingUtils.cpp.
References MayaFlux::Buffers::VKBufferResources::GenerationSlot::buffer, MayaFlux::Journal::BufferProcessing, MayaFlux::Journal::Buffers, create_staging_buffer(), MayaFlux::Registry::BackendRegistry::get_service(), MayaFlux::Registry::BackendRegistry::instance(), MayaFlux::Buffers::VKBufferResources::GenerationSlot::mapped_ptr, and ptr.
Referenced by MayaFlux::Buffers::VolumeGridBuffer::seed_raw(), and upload_back_buffer().
Here is the call graph for this function:
Here is the caller graph for this function: