MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ readback_aux()

void MayaFlux::Yantra::GpuDispatchCore::readback_aux ( GpuChannelResult result)
protected

Read back all OUTPUT bindings that have explicit size overrides into the aux map of a GpuChannelResult.

Parameters
resultGpuChannelResult to write aux entries into.

Definition at line 323 of file GpuDispatchCore.cpp.

324{
325 for (size_t i = 0; i < m_bindings.size(); ++i) {
326 const auto dir = m_bindings[i].direction;
327 const auto et = m_bindings[i].element_type;
332 && !is_image
333 && i < m_output_size_overrides.size()
334 && m_output_size_overrides[i] > 0) {
335 const size_t sz = m_output_size_overrides[i];
336 std::vector<uint8_t> raw(sz);
337 m_resources.download(i, reinterpret_cast<float*>(raw.data()), sz);
338 result.aux[i] = std::move(raw);
339 }
340 }
341}
std::vector< GpuBufferBinding > m_bindings
std::vector< size_t > m_output_size_overrides
void download(size_t index, float *dest, size_t byte_size)
bool is_image(const fs::path &filepath)
Definition Depot.cpp:43

References MayaFlux::Yantra::GpuChannelResult::aux, MayaFlux::Yantra::GpuResourceManager::download(), MayaFlux::Yantra::GpuBufferBinding::IMAGE_SAMPLED, MayaFlux::Yantra::GpuBufferBinding::IMAGE_STORAGE, MayaFlux::Yantra::GpuBufferBinding::INPUT_OUTPUT, MayaFlux::is_image(), m_bindings, m_output_size_overrides, m_resources, and MayaFlux::Yantra::GpuBufferBinding::OUTPUT.

Referenced by dispatch_core(), and dispatch_core_chained().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: