Pulp
1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
processor_block_adapter.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
pulp/format/process_block.hpp
>
4
#include <
pulp/format/processor.hpp
>
5
6
#include <array>
7
8
namespace
pulp::format
{
9
17
struct
ProcessorBlockAdapterScratch
{
18
midi::MidiBuffer
fallback_midi_in
;
19
midi::MidiBuffer
fallback_midi_out
;
20
state::ParameterEventQueue
empty_parameter_events
;
21
// Per-bus views handed to Processor::process(). Each call overwrites only
22
// the entries for the block's buses, so a graph node does not construct
23
// BusBufferSet::kMaxBuses views per direction on every block.
24
std::array<ProcessBusBufferView<const float>,
BusBufferSet::kMaxBuses
>
input_views
{};
25
std::array<ProcessBusBufferView<float>,
BusBufferSet::kMaxBuses
>
output_views
{};
26
};
27
35
bool
process_processor_block
(
Processor
& processor,
36
ProcessBlock
& block,
37
ProcessorBlockAdapterScratch
& scratch)
noexcept
;
38
39
}
// namespace pulp::format
pulp::format::BusBufferSet::kMaxBuses
static constexpr std::size_t kMaxBuses
Definition
process_block.hpp:148
pulp::format::Processor
Definition
processor.hpp:174
pulp::midi::MidiBuffer
Collection of timestamped MIDI events within a single audio buffer period.
Definition
buffer.hpp:31
pulp::state::ParameterEventQueue
Definition
parameter_event_queue.hpp:82
pulp::format
What the product grants a device: the quota table indexed by capability tier and live thermal state.
Definition
aax_editor.hpp:31
pulp::format::process_processor_block
bool process_processor_block(Processor &processor, ProcessBlock &block, ProcessorBlockAdapterScratch &scratch) noexcept
Invoke the legacy Processor::process() API from a ProcessBlock.
process_block.hpp
processor.hpp
pulp::format::ProcessBlock
Additive block-scoped process contract.
Definition
process_block.hpp:517
pulp::format::ProcessorBlockAdapterScratch
Caller-owned fallback storage for process_processor_block().
Definition
processor_block_adapter.hpp:17
pulp::format::ProcessorBlockAdapterScratch::fallback_midi_out
midi::MidiBuffer fallback_midi_out
Definition
processor_block_adapter.hpp:19
pulp::format::ProcessorBlockAdapterScratch::empty_parameter_events
state::ParameterEventQueue empty_parameter_events
Definition
processor_block_adapter.hpp:20
pulp::format::ProcessorBlockAdapterScratch::input_views
std::array< ProcessBusBufferView< const float >, BusBufferSet::kMaxBuses > input_views
Definition
processor_block_adapter.hpp:24
pulp::format::ProcessorBlockAdapterScratch::output_views
std::array< ProcessBusBufferView< float >, BusBufferSet::kMaxBuses > output_views
Definition
processor_block_adapter.hpp:25
pulp::format::ProcessorBlockAdapterScratch::fallback_midi_in
midi::MidiBuffer fallback_midi_in
Definition
processor_block_adapter.hpp:18
core
format
include
pulp
format
processor_block_adapter.hpp
Generated by
1.15.0