Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
editor_prewarm.hpp
Go to the documentation of this file.
1#pragma once
2
3// Editor prewarm at instantiation: the format-core half.
4//
5// Format adapters call request_editor_prewarm() right after a host has
6// instantiated the plug-in's Processor. It asks the processor what its editor
7// evaluates on every open (Processor::editor_prewarm()) and hands that to the
8// scheduler the view layer installs, which compiles and verifies it on a
9// background worker (view::prewarm_scripted_ui). Format-core cannot link the
10// view layer, so the scheduler is a function pointer: until a view-capable
11// target installs one (pulp-format-view does, at static initialization), a
12// request is a no-op.
13
15
16namespace pulp::format {
17
19
22
29bool request_editor_prewarm(const Processor& processor);
30
31namespace detail {
34} // namespace detail
35
36} // namespace pulp::format
Definition processor.hpp:174
The plugin processor interface.
Definition device_quotas.hpp:67
void reset_editor_prewarm_requests_for_tests()
Forget which bundles were requested (tests only).
What the product grants a device: the quota table indexed by capability tier and live thermal state.
Definition aax_editor.hpp:31
void set_editor_prewarm_scheduler(EditorPrewarmScheduler scheduler) noexcept
Installed by the view layer. Passing nullptr uninstalls (tests).
void(*)(const Processor::EditorPrewarm &) EditorPrewarmScheduler
Definition editor_prewarm.hpp:18
bool request_editor_prewarm(const Processor &processor)
Called by format adapters once a host has instantiated processor.
What a scripted editor evaluates every time it opens and that does not depend on the instance: the te...
Definition processor.hpp:593