MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ distribute_with_transfer()

DistributionDecision MayaFlux::Buffers::BufferTokenDistributor::distribute_with_transfer ( const std::shared_ptr< Buffer > &  buffer,
ProcessingToken  requested_token,
const std::shared_ptr< Buffer > &  transfer_target,
ProcessingToken  transfer_target_token 
)
static

Distribute with optional transfer target (for cross-domain routing)

Parameters
bufferSource buffer
requested_tokenToken for the source buffer
transfer_targetOptional target for cross-domain transfer
transfer_target_tokenToken for the target (if transferring)
Returns
Distribution decision with transfer processor if applicable

Definition at line 43 of file BufferTokenDistributor.cpp.

48{
49 auto source_decision = distribute(buffer, requested_token);
50 if (source_decision.result == DistributionResult::REJECTED) {
51 return source_decision;
52 }
53
54 return decide_transfer(buffer, requested_token, transfer_target, transfer_target_token);
55}
static DistributionDecision decide_transfer(const std::shared_ptr< Buffer > &source, ProcessingToken src_token, const std::shared_ptr< Buffer > &target, ProcessingToken tgt_token)
static DistributionDecision distribute(const std::shared_ptr< Buffer > &buffer, ProcessingToken requested_token)
Distribute a buffer based on its type and requested token.

References decide_transfer(), distribute(), and MayaFlux::Buffers::REJECTED.

+ Here is the call graph for this function: