Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
signal_graph_control.hpp
Go to the documentation of this file.
1#pragma once
2
5
6#include <cstddef>
7#include <cstdint>
8#include <span>
9
10namespace pulp::host {
11
30
39
52
57 public:
58 static constexpr std::size_t kMaxDenseCommands = 64;
59
61 int maximum_block_size) noexcept;
62
63 SignalGraphRouteResult apply(std::span<const SignalGraphRouteCommand> commands);
64 void reset() noexcept;
65 std::uint64_t generation() const noexcept {
66 return generation_;
67 }
68
69 private:
70 SignalGraph& graph_;
71 double sample_rate_ = 0.0;
72 int maximum_block_size_ = 0;
73 std::uint64_t generation_ = 0;
74};
75
76} // namespace pulp::host
SignalGraphControlAuthority(SignalGraph &graph, double sample_rate, int maximum_block_size) noexcept
std::uint64_t generation() const noexcept
Definition signal_graph_control.hpp:65
SignalGraphRouteResult apply(std::span< const SignalGraphRouteCommand > commands)
static constexpr std::size_t kMaxDenseCommands
Definition signal_graph_control.hpp:58
Result
Definition signal_graph_prepared_topology_edit.hpp:29
@ NotPrepared
Definition signal_graph_prepared_topology_edit.hpp:47
Definition signal_graph_runtime.hpp:83
Definition graph_runtime_buffer_assignment.hpp:8
std::uint32_t NodeId
Definition graph_types.hpp:7
std::uint32_t PortIndex
Definition graph_types.hpp:8
Bounded event contracts shared by host ingress and graph-authored nodes.
Definition anticipation_eligibility.hpp:9
AutomationMix
Definition signal_graph_connection.hpp:13
@ Replace
Definition signal_graph_connection.hpp:14
SignalGraphRouteResultCode
Definition signal_graph_control.hpp:31
@ CommitFailed
Definition signal_graph_control.hpp:37
@ Applied
Definition signal_graph_control.hpp:32
@ DenseQueueOverflow
Definition signal_graph_control.hpp:34
@ EmptyBatch
Definition signal_graph_control.hpp:33
@ InvalidCommand
Definition signal_graph_control.hpp:35
@ PrepareFailed
Definition sample_region_proof.hpp:131
STL namespace.
One typed mutation accepted by the host's canonical graph authority.
Definition signal_graph_control.hpp:15
PortIndex previous_source_port
Definition signal_graph_control.hpp:28
PortIndex source_port
Definition signal_graph_control.hpp:20
NodeId previous_source
Definition signal_graph_control.hpp:27
float range_lo
Definition signal_graph_control.hpp:23
NodeId destination
Definition signal_graph_control.hpp:21
float range_hi
Definition signal_graph_control.hpp:24
float smoothing_ms
Definition signal_graph_control.hpp:25
Kind kind
Definition signal_graph_control.hpp:17
Kind
Definition signal_graph_control.hpp:16
@ Remove
Definition signal_graph_control.hpp:16
@ Insert
Definition signal_graph_control.hpp:16
@ Rewire
Definition signal_graph_control.hpp:16
AutomationMix mix
Definition signal_graph_control.hpp:26
bool audio_rate
Definition signal_graph_control.hpp:18
NodeId source
Definition signal_graph_control.hpp:19
std::uint32_t parameter_id
Definition signal_graph_control.hpp:22
Definition signal_graph_control.hpp:40
SignalGraph::PreparedTopologyEdit::Result topology_result
Definition signal_graph_control.hpp:45
std::uint64_t generation
Definition signal_graph_control.hpp:44
std::size_t applied
Definition signal_graph_control.hpp:42
SignalGraphRouteResultCode code
Definition signal_graph_control.hpp:41
std::size_t capacity
Definition signal_graph_control.hpp:43