Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::host::ProcessorSignalGraphBinding Class Referencefinal

Lifetime-bound access from a Processor instance to the SignalGraph it owns. More...

#include <processor_signal_graph_binding.hpp>

Classes

struct  Lease

Public Member Functions

 ~ProcessorSignalGraphBinding ()
 ProcessorSignalGraphBinding (const ProcessorSignalGraphBinding &)=delete
ProcessorSignalGraphBinding & operator= (const ProcessorSignalGraphBinding &)=delete
SignalGraphControlAuthority & authority () noexcept
const SignalGraphControlAuthority & authority () const noexcept
Lease lease () noexcept

Static Public Member Functions

static std::unique_ptr< ProcessorSignalGraphBinding > install (format::Processor &processor, SignalGraph &graph, double sample_rate, int maximum_block_size) noexcept

Detailed Description

Lifetime-bound access from a Processor instance to the SignalGraph it owns.

This is a host-side side table, so adding the binding does not change the public Processor ABI. The returned token must be owned by the Processor (or by an object whose lifetime is strictly inside the Processor lifetime), and it must be created after the graph is prepared and destroyed before the graph is released. A second binding for the same Processor is refused.

Constructor & Destructor Documentation

◆ ~ProcessorSignalGraphBinding()

pulp::host::ProcessorSignalGraphBinding::~ProcessorSignalGraphBinding ( )

◆ ProcessorSignalGraphBinding()

pulp::host::ProcessorSignalGraphBinding::ProcessorSignalGraphBinding ( const ProcessorSignalGraphBinding & )
delete

Member Function Documentation

◆ authority() [1/2]

const SignalGraphControlAuthority & pulp::host::ProcessorSignalGraphBinding::authority ( ) const
inlinenoexcept

◆ authority() [2/2]

SignalGraphControlAuthority & pulp::host::ProcessorSignalGraphBinding::authority ( )
inlinenoexcept

◆ install()

std::unique_ptr< ProcessorSignalGraphBinding > pulp::host::ProcessorSignalGraphBinding::install ( format::Processor & processor,
SignalGraph & graph,
double sample_rate,
int maximum_block_size )
staticnoexcept

◆ lease()

Lease pulp::host::ProcessorSignalGraphBinding::lease ( )
inlinenoexcept

◆ operator=()

ProcessorSignalGraphBinding & pulp::host::ProcessorSignalGraphBinding::operator= ( const ProcessorSignalGraphBinding & )
delete

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