|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| MAYAFLUX_API void MayaFlux::Buffers::download_back_buffer | ( | const VKBufferResources::GenerationSlot & | slot, |
| void * | data, | ||
| size_t | size, | ||
| std::shared_ptr< VKBuffer > & | staging | ||
| ) |
Download a raw back_buffers slot to host memory.
| slot | Source slot, typically from VKBuffer::get_back_buffer(). |
| size | Byte count to copy. |
| data | Destination pointer, at least size bytes. |
| staging | Persistent staging buffer for device-local slots. Ignored, and may be null, when slot.mapped_ptr is already valid. |
Reads slot.mapped_ptr directly when present (host-visible slot, no transfer). Otherwise records a fenced copy into staging exactly as download_from_gpu_async does, using slot.buffer as the copy source.
Definition at line 364 of file StagingUtils.cpp.
References download_back_buffer_async(), resolve_back_buffer_read(), and size.
Referenced by MayaFlux::Buffers::BufferDownloadProcessor::download_back_buffers(), MayaFlux::Buffers::ClaimAccumulateProcessor::processing_function(), MayaFlux::Buffers::VolumeGridBuffer::read_field(), and MayaFlux::Buffers::RelaxationStepProcessor::serve_snapshot().
Here is the call graph for this function:
Here is the caller graph for this function: