MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Portal::Forma::Link Struct Reference

A directed coupling between Forma participants. More...

#include <Link.hpp>

+ Collaboration diagram for MayaFlux::Portal::Forma::Link:

Public Member Functions

 Link (const Link &)=delete
 
 Link (Link &&) noexcept=default
 
 Link (std::function< void()> est, std::function< void()> t=[] { })
 Construct and immediately run establish.
 
Linkoperator= (const Link &)=delete
 
Linkoperator= (Link &&) noexcept=default
 

Public Attributes

std::function< void()> establish
 
std::function< void()> tap { [] { } }
 

Detailed Description

A directed coupling between Forma participants.

A Link has two distinct moments:

establish - runs once at construction. This is where the coupling is formed: attaching a processor to a buffer, setting initial state, registering a relation. For some links this is the entire effect.

activate - the repeatable body of the coupling. Closed over whatever source and target participants are relevant. Expresses the full transfer: read, transform, apply, any gating. When the link has no repeatable behavior, activate is []{}. It is always callable.

Who calls activate and when is entirely the caller's concern. A Context callback, a version-gating wrapper, a Lila script, another Link's activate body - all are valid drivers.

Definition at line 23 of file Link.hpp.


The documentation for this struct was generated from the following file: