|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Backend buffer management service interface. More...
#include <BufferService.hpp>
Collaboration diagram for MayaFlux::Registry::Service::BufferService:Public Attributes | |
| std::function< void(const std::shared_ptr< void > &)> | destroy_buffer |
| Destroy a buffer and free its associated memory. | |
| std::function< std::shared_ptr< void >(std::function< void(void *)>)> | execute_fenced |
| Submit commands with a fence. | |
| std::function< void(std::function< void(void *)>)> | execute_immediate |
| Execute commands immediately with synchronization. | |
| std::function< void(void *, size_t, size_t)> | flush_range |
| Flush mapped memory range (make host writes visible to device) | |
| std::function< uint64_t(const std::shared_ptr< void > &)> | get_buffer_device_address |
| Query the device address of a buffer. | |
| std::function< void(const std::shared_ptr< void > &)> | initialize_buffer |
| Initialize a buffer object. | |
| std::function< void(void *, size_t, size_t)> | invalidate_range |
| Invalidate mapped memory range (make device writes visible to host) | |
| std::function< void *(void *, size_t, size_t)> | map_buffer |
| Map buffer memory to host-visible pointer. | |
| std::function< void(std::function< void(void *)>)> | record_deferred |
| Record commands for deferred execution. | |
| std::function< void(const std::shared_ptr< void > &)> | release_fenced |
| Release resources associated with a fenced submission. | |
| std::function< void(void *)> | unmap_buffer |
| Unmap previously mapped buffer memory. | |
| std::function< void(const std::shared_ptr< void > &)> | wait_fenced |
| Wait for a fenced submission to complete. | |
Backend buffer management service interface.
Defines GPU/backend buffer operations that any graphics backend must provide. Implementations are backend-specific (Vulkan, OpenGL, Metal, DirectX, etc.). All handles are opaque to maintain backend independence while providing type safety.
Definition at line 12 of file BufferService.hpp.