|
MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
|
| void MayaFlux::Core::BackendResourceManager::allocate_raw_buffer | ( | size_t | size_bytes, |
| vk::BufferUsageFlags | usage, | ||
| vk::MemoryPropertyFlags | memory_properties, | ||
| bool | host_visible, | ||
| vk::Buffer & | out_buffer, | ||
| vk::DeviceMemory & | out_memory, | ||
| void *& | out_mapped_ptr | ||
| ) |
Allocate a raw VkBuffer/VkDeviceMemory pair without an owning VKBuffer object.
| size_bytes | Buffer capacity in bytes. |
| usage | Vulkan buffer usage flags. |
| memory_properties | Vulkan memory property flags. |
| host_visible | When true, the allocation is mapped and out_mapped_ptr is populated; when false, out_mapped_ptr is left null. |
| out_buffer | Receives the created vk::Buffer. |
| out_memory | Receives the bound vk::DeviceMemory. |
| out_mapped_ptr | Receives the mapped host pointer, or nullptr if host_visible is false. |
Same allocation sequence as initialize_buffer() (createBuffer, getBufferMemoryRequirements, allocateMemory, bindBufferMemory, optional mapMemory), without requiring or populating a VKBuffer. Intended for VKBuffer subclasses that own secondary raw handle pairs directly in VKBufferResources::back_buffers rather than as separate VKBuffer objects.
Definition at line 189 of file BackendResoureManager.cpp.
References MayaFlux::Journal::Core, find_memory_type(), MayaFlux::Core::VKContext::get_device(), MayaFlux::Journal::GraphicsBackend, and m_context.
Referenced by initialize_buffer(), and setup_backend_service().
Here is the call graph for this function:
Here is the caller graph for this function: