Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::host::character_delay Namespace Reference

Namespaces

namespace  detail
 Stepped controls fail closed on malformed host automation.

Classes

struct  CharacterDelayInstance

Typedefs

using Character = signal::CharacterDelay::Character
using TapeTier = signal::CharacterDelay::TapeTier

Functions

const char * character_delay_type_id (Character character, TapeTier tier=TapeTier::standard)
 Stable type id for a (character, tier) pair.
const char * character_delay_default_name (Character character, TapeTier tier)
CustomNodeType make_character_delay_node (Character character, TapeTier tier=TapeTier::standard, float tape_speed_ips=7.5f)
 One factory, six registered realizations.
ForgeNodeDescriptor character_delay_descriptor ()

Variables

constexpr const char * kCleanTypeId = "delay.clean"
constexpr const char * kVintageTypeId = "delay.vintage"
constexpr const char * kTapeTypeId = "delay.tape"
constexpr const char * kBbdTypeId = "delay.bbd"
constexpr const char * kDiffusionTypeId = "delay.diffusion"
constexpr const char * kTapePhysicalTypeId = "delay.tape_physical"
 The physical tape tier is its own realization of the same factory: the tier is a construction-time config choice, not a baked param, because switching it swaps the saturation and loss STAGES rather than a coefficient.
constexpr state::ParamID kTimeMs = 1
constexpr state::ParamID kTimeOffset = 2
constexpr state::ParamID kFeedback = 3
constexpr state::ParamID kCrossfeed = 4
constexpr state::ParamID kCharacter = 5
constexpr state::ParamID kModRate = 6
constexpr state::ParamID kModDepth = 7
constexpr state::ParamID kDuck = 8
constexpr state::ParamID kFreeze = 9
constexpr state::ParamID kReverse = 10
constexpr float kMaxTimeMs = 2000.0f
 Longest addressable delay, in ms. Matches the DSP's own maximum.

Typedef Documentation

◆ Character

◆ TapeTier

Function Documentation

◆ character_delay_default_name()

const char * pulp::host::character_delay::character_delay_default_name ( Character character,
TapeTier tier )
inline

◆ character_delay_descriptor()

ForgeNodeDescriptor pulp::host::character_delay::character_delay_descriptor ( )
inline

◆ character_delay_type_id()

const char * pulp::host::character_delay::character_delay_type_id ( Character character,
TapeTier tier = TapeTier::standard )
inline

Stable type id for a (character, tier) pair.

◆ make_character_delay_node()

CustomNodeType pulp::host::character_delay::make_character_delay_node ( Character character,
TapeTier tier = TapeTier::standard,
float tape_speed_ips = 7.5f )
inline

One factory, six registered realizations.

tape_speed_ips only matters for the physical tier, where it drives the Wallace loss geometry and the head-bump centre; like the tier itself it is a construction-time config choice, because changing it redesigns a bank of FIRs and that is not audio-thread work.

Variable Documentation

◆ kBbdTypeId

const char* pulp::host::character_delay::kBbdTypeId = "delay.bbd"
inlineconstexpr

◆ kCharacter

state::ParamID pulp::host::character_delay::kCharacter = 5
inlineconstexpr

◆ kCleanTypeId

const char* pulp::host::character_delay::kCleanTypeId = "delay.clean"
inlineconstexpr

◆ kCrossfeed

state::ParamID pulp::host::character_delay::kCrossfeed = 4
inlineconstexpr

◆ kDiffusionTypeId

const char* pulp::host::character_delay::kDiffusionTypeId = "delay.diffusion"
inlineconstexpr

◆ kDuck

state::ParamID pulp::host::character_delay::kDuck = 8
inlineconstexpr

◆ kFeedback

state::ParamID pulp::host::character_delay::kFeedback = 3
inlineconstexpr

◆ kFreeze

state::ParamID pulp::host::character_delay::kFreeze = 9
inlineconstexpr

◆ kMaxTimeMs

float pulp::host::character_delay::kMaxTimeMs = 2000.0f
inlineconstexpr

Longest addressable delay, in ms. Matches the DSP's own maximum.

◆ kModDepth

state::ParamID pulp::host::character_delay::kModDepth = 7
inlineconstexpr

◆ kModRate

state::ParamID pulp::host::character_delay::kModRate = 6
inlineconstexpr

◆ kReverse

state::ParamID pulp::host::character_delay::kReverse = 10
inlineconstexpr

◆ kTapePhysicalTypeId

const char* pulp::host::character_delay::kTapePhysicalTypeId = "delay.tape_physical"
inlineconstexpr

The physical tape tier is its own realization of the same factory: the tier is a construction-time config choice, not a baked param, because switching it swaps the saturation and loss STAGES rather than a coefficient.

◆ kTapeTypeId

const char* pulp::host::character_delay::kTapeTypeId = "delay.tape"
inlineconstexpr

◆ kTimeMs

state::ParamID pulp::host::character_delay::kTimeMs = 1
inlineconstexpr

◆ kTimeOffset

state::ParamID pulp::host::character_delay::kTimeOffset = 2
inlineconstexpr

◆ kVintageTypeId

const char* pulp::host::character_delay::kVintageTypeId = "delay.vintage"
inlineconstexpr