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

Determines routing for buffers based on type + token combination. More...

#include <BufferTokenDistributor.hpp>

+ Collaboration diagram for MayaFlux::Buffers::BufferTokenDistributor:

Static Public Member Functions

static DistributionDecision distribute (const std::shared_ptr< Buffer > &buffer, ProcessingToken requested_token)
 Distribute a buffer based on its type and requested token.
 
static DistributionDecision distribute_with_transfer (const std::shared_ptr< Buffer > &buffer, ProcessingToken requested_token, const std::shared_ptr< Buffer > &transfer_target, ProcessingToken transfer_target_token)
 Distribute with optional transfer target (for cross-domain routing)
 

Static Private Member Functions

static bool is_valid_audio_token (ProcessingToken token)
 
static bool is_valid_vk_token (ProcessingToken token)
 
static bool has_sample_rate (ProcessingToken token)
 
static bool has_frame_rate (ProcessingToken token)
 
static bool has_cpu (ProcessingToken token)
 
static bool has_gpu (ProcessingToken token)
 
static DistributionDecision decide_audio_buffer (const std::shared_ptr< AudioBuffer > &audio, ProcessingToken token)
 
static DistributionDecision decide_vk_buffer (const std::shared_ptr< VKBuffer > &vk, ProcessingToken token)
 
static DistributionDecision decide_transfer (const std::shared_ptr< Buffer > &source, ProcessingToken src_token, const std::shared_ptr< Buffer > &target, ProcessingToken tgt_token)
 
static bool can_transfer (const std::shared_ptr< Buffer > &source, ProcessingToken src_token, const std::shared_ptr< Buffer > &target, ProcessingToken tgt_token)
 

Detailed Description

Determines routing for buffers based on type + token combination.

Decision tree: 1) DIRECT_ROOT - Buffer goes to normal root aggregation 2) TRANSFER_ONLY - Create transfer processor, attach to target, no root 3) INTERNAL_ONLY - Mark internal, no root aggregation 4) REJECTED - Invalid combination

Definition at line 49 of file BufferTokenDistributor.hpp.


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