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

◆ bind_all_descriptors()

void MayaFlux::Yantra::GpuDispatchCore::bind_all_descriptors ( )
private

Definition at line 578 of file GpuDispatchCore.cpp.

579{
580 for (auto& m_binding : m_bindings) {
581 const auto et = m_binding.element_type;
584 continue;
585
586 const auto key = std::make_pair(m_binding.set, static_cast<size_t>(m_binding.binding));
587 if (m_shared_bindings.contains(key)) {
588 m_resources.bind_shared_descriptor(dispatch_key(), m_binding.set, m_binding.binding, m_binding);
589 continue;
590 }
591
592 m_resources.bind_descriptor(dispatch_key(), static_cast<size_t>(m_binding.binding), m_binding);
593 }
594}
std::set< std::pair< uint32_t, size_t > > m_shared_bindings
const std::string & dispatch_key() const
The key used for this context's GpuResourceManager unit.
std::vector< GpuBufferBinding > m_bindings
void bind_descriptor(const std::string &key, size_t index, const GpuBufferBinding &spec)
void bind_shared_descriptor(const std::string &key, uint32_t set, size_t binding_index, const GpuBufferBinding &spec)

References MayaFlux::Yantra::GpuResourceManager::bind_descriptor(), MayaFlux::Yantra::GpuResourceManager::bind_shared_descriptor(), dispatch_key(), MayaFlux::Portal::Graphics::GpuBufferBinding::IMAGE_SAMPLED, MayaFlux::Portal::Graphics::GpuBufferBinding::IMAGE_STORAGE, m_bindings, m_resources, and m_shared_bindings.

Referenced by dispatch_core(), dispatch_core_async(), dispatch_core_chained(), dispatch_core_chained_indirect(), and dispatch_core_dependency().

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