MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Buffers::GraphicsBatchProcessor Class Reference

Default processor for coordinating batch GPU buffer processing. More...

#include <RootGraphicsBuffer.hpp>

+ Inheritance diagram for MayaFlux::Buffers::GraphicsBatchProcessor:
+ Collaboration diagram for MayaFlux::Buffers::GraphicsBatchProcessor:

Public Member Functions

 GraphicsBatchProcessor (std::shared_ptr< Buffer > root_buffer)
 Creates a new graphics batch processor.
 
void processing_function (std::shared_ptr< Buffer > buffer) override
 Processes a buffer by coordinating child buffer operations.
 
void on_attach (std::shared_ptr< Buffer > buffer) override
 Called when processor is attached to a buffer.
 
bool is_compatible_with (std::shared_ptr< Buffer > buffer) const override
 Checks compatibility with a specific buffer type.
 
- 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 on_detach (std::shared_ptr< Buffer >)
 Called when this processor is detached from a 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 Attributes

std::shared_ptr< RootGraphicsBufferm_root_buffer
 Shared pointer to the root buffer this processor manages.
 

Additional Inherited Members

- Protected Attributes inherited from MayaFlux::Buffers::BufferProcessor
ProcessingToken m_processing_token { ProcessingToken::AUDIO_BACKEND }
 

Detailed Description

Default processor for coordinating batch GPU buffer processing.

GraphicsBatchProcessor manages the execution of processing chains across multiple GPU buffers in a coordinated manner. Unlike ChannelProcessor which accumulates audio data, GraphicsBatchProcessor focuses on:

  • Coordinating buffer uploads (CPU -> GPU)
  • Dispatching compute shader operations
  • Managing resource transitions and barriers
  • Ensuring proper synchronization between operations

Token Compatibility:

  • Primary Token: GRAPHICS_BACKEND (frame-rate, GPU, parallel processing)
  • Compatible with GPU_PROCESS tokens for compute operations
  • Handles parallel batch operations on GPU resources

Definition at line 233 of file RootGraphicsBuffer.hpp.


The documentation for this class was generated from the following files: