|
MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
|
Final processor that executes render operations after all buffer processing. More...
#include <RootGraphicsBuffer.hpp>
Inheritance diagram for MayaFlux::Buffers::PresentProcessor:
Collaboration diagram for MayaFlux::Buffers::PresentProcessor:Public Types | |
| using | RenderCallback = std::function< void(const std::shared_ptr< RootGraphicsBuffer > &root)> |
| Callback signature for render operations. | |
Public Member Functions | |
| PresentProcessor (RenderCallback callback) | |
| Creates a render processor with a callback function. | |
| PresentProcessor () | |
| Default constructor (no callback set) | |
| ~PresentProcessor () override=default | |
| void | processing_function (std::shared_ptr< Buffer > buffer) override |
| Executes the render callback. | |
| void | on_attach (std::shared_ptr< Buffer > buffer) override |
| Called when processor is attached to a buffer. | |
| void | on_detach (std::shared_ptr< Buffer > buffer) override |
| Called when processor is detached from a buffer. | |
| bool | is_compatible_with (std::shared_ptr< Buffer > buffer) const override |
| Checks compatibility with a specific buffer type. | |
| void | set_callback (RenderCallback callback) |
| Sets or updates the render callback. | |
| bool | has_callback () const |
| Checks if a callback is configured. | |
| void | clear_callback () |
| Clears the current callback. | |
Public Member Functions inherited from MayaFlux::Buffers::BufferProcessor | |
| virtual | ~BufferProcessor ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
| void | process (std::shared_ptr< Buffer > buffer) |
| Applies a computational transformation to the data in the provided buffer. | |
| virtual void | set_processing_token (ProcessingToken token) |
| Gets the preferred processing backend for this processor. | |
| virtual ProcessingToken | get_processing_token () const |
| Gets the current processing token for this buffer. | |
Private Member Functions | |
| void | fallback_renderer (const std::shared_ptr< RootGraphicsBuffer > &root) |
Private Attributes | |
| RenderCallback | m_callback |
| User-provided render callback. | |
| std::shared_ptr< RootGraphicsBuffer > | m_root_buffer |
| Reference to root buffer (for validation and callbacks) | |
Additional Inherited Members | |
Protected Attributes inherited from MayaFlux::Buffers::BufferProcessor | |
| ProcessingToken | m_processing_token { ProcessingToken::AUDIO_BACKEND } |
Final processor that executes render operations after all buffer processing.
PresentProcessor is designed to be set as the final processor of RootGraphicsBuffer. It's invoked after all child buffer processing chains have completed, making it the ideal point to:
Design Philosophy:
Usage Pattern:
Token Compatibility:
Definition at line 319 of file RootGraphicsBuffer.hpp.