Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
timeline_device_resolver.hpp File Reference
#include <cstddef>
#include <cstdint>
#include <memory>
#include <span>
#include <string_view>

Go to the source code of this file.

Classes

struct  pulp::host::BuiltInDeviceDescriptor
 One instantiable Pulp-owned device. More...

Namespaces

namespace  pulp
namespace  pulp::host
 Bounded event contracts shared by host ingress and graph-authored nodes.

Typedefs

using pulp::host::TimelineDeviceSlotFactory = std::unique_ptr<PluginSlot> (*)(const PluginInfo&)
 Factory signature used by Timeline's disposable graph-lowering transaction.

Enumerations

enum class  pulp::host::BuiltInDeviceDomain { pulp::host::EventToEvent , pulp::host::EventToAudio }
 The domain a built-in Timeline device occupies in a track's device chain. More...

Functions

std::span< const BuiltInDeviceDescriptor > pulp::host::builtin_device_catalog () noexcept
 Every device load_builtin_plugin can instantiate, in chain order: an event-to-event device may precede an event-to-audio one, never follow it.
const BuiltInDeviceDescriptor * pulp::host::find_builtin_device (std::string_view binding_key) noexcept
 The descriptor for binding_key, or nullptr when no built-in owns it.
std::unique_ptr< PluginSlot > pulp::host::load_builtin_plugin (const PluginInfo &info)
 Loads a pathless Pulp-owned device. Unknown keys and non-empty paths fail closed.
int pulp::host::event_device_latency_ceiling_samples () noexcept
 The per-chain event-compensation ceiling, in samples.
PluginInfo pulp::host::builtin_device_plugin_info (const BuiltInDeviceDescriptor &descriptor)
 The PluginInfo the host uses to instantiate descriptor through the device factory.

Variables

constexpr std::string_view pulp::host::kBasicInstrumentBindingKey = "pulp.instrument.basic"
 Durable Timeline binding key for Pulp's pathless basic instrument.
constexpr std::string_view pulp::host::kEventHumaniserBindingKey = "pulp.device.event.humanise"
 Durable Timeline binding key for Pulp's pathless look-ahead note humaniser.
constexpr int pulp::host::kEventHumaniserWindowSamples = 512
 The humaniser's look-ahead window, in samples, and therefore the latency it reports.
constexpr std::uint32_t pulp::host::kEventHumaniserTimingDepthParamId = 1
 Stable parameter IDs exposed by the built-in humaniser.
constexpr std::uint32_t pulp::host::kEventHumaniserVelocityDepthParamId = 2
constexpr std::size_t pulp::host::kAdmittedDeviceChainLength = 2
 The longest device chain the host binding lowers today.