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

◆ buffer_barrier()

void MayaFlux::Portal::Graphics::ShaderFoundry::buffer_barrier ( CommandBufferID  cmd_id,
vk::Buffer  buffer,
vk::AccessFlags  src_access,
vk::AccessFlags  dst_access,
vk::PipelineStageFlags  src_stage,
vk::PipelineStageFlags  dst_stage 
)

Insert buffer memory barrier.

Definition at line 1317 of file ShaderFoundry.cpp.

1324{
1325 auto it = m_command_buffers.find(cmd_id);
1326 if (it == m_command_buffers.end()) {
1327 return;
1328 }
1329
1330 vk::BufferMemoryBarrier barrier;
1331 barrier.srcAccessMask = src_access;
1332 barrier.dstAccessMask = dst_access;
1333 barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
1334 barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
1335 barrier.buffer = buffer;
1336 barrier.offset = 0;
1337 barrier.size = VK_WHOLE_SIZE;
1338
1339 it->second.cmd.pipelineBarrier(
1340 src_stage,
1341 dst_stage,
1342 vk::DependencyFlags {},
1343 0, nullptr,
1344 1, &barrier,
1345 0, nullptr);
1346}
std::shared_ptr< NetworkGeometryBuffer > buffer
std::unordered_map< CommandBufferID, CommandBufferState > m_command_buffers

References buffer, and m_command_buffers.

Referenced by MayaFlux::Buffers::ComputeProcessor::on_iteration_barrier(), MayaFlux::Buffers::ClaimFlattenProcessor::on_iteration_barrier(), and MayaFlux::Portal::Graphics::ComputePress::record_sequence().

+ Here is the caller graph for this function: