71#include <pulp/host/detail/forge_realization_identity.hpp>
120 case Archetype::studer_a800:
121 return {Curve::nab, Curve::iec_ccir};
122 case Archetype::cassette_deck:
123 return {Curve::cassette_type1, Curve::cassette_type2};
124 case Archetype::ampex_350_440:
126 return {Curve::nab, Curve::nab};
132 case Archetype::studer_a800:
134 case Archetype::cassette_deck:
136 case Archetype::ampex_350_440:
144 case Archetype::studer_a800:
145 return "Tape Machine (Studer A800-class)";
146 case Archetype::cassette_deck:
147 return "Tape Machine (Cassette Deck)";
148 case Archetype::ampex_350_440:
150 return "Tape Machine (Ampex 350/440-class)";
156 case Archetype::ampex_350_440:
157 case Archetype::studer_a800:
158 case Archetype::cassette_deck:
161 return Archetype::ampex_350_440;
216 bool pre_echo_enabled =
false);
Definition forge_tape_catalog.hpp:82
constexpr bool kWorstCaseGainApplicable
worst_case_gain does not apply to this design — there is no feedback path.
Definition forge_tape_catalog.hpp:106
CustomNodeType make_tape_machine_node(Archetype archetype, double speed_ips=0.0, bool pre_echo_enabled=false)
One factory, three registered realizations.
constexpr state::ParamID kDrive
Definition forge_tape_catalog.hpp:96
ForgeNodeDescriptor descriptor()
float tape_machine_insertion_gain_bound(Archetype archetype, double sample_rate)
The largest gain any single stage of this insert can present, at the realization's own speed and the ...
constexpr state::ParamID kMix
Definition forge_tape_catalog.hpp:102
constexpr state::ParamID kEqCurve
Definition forge_tape_catalog.hpp:94
constexpr state::ParamID kPrintOffsetMs
Definition forge_tape_catalog.hpp:101
constexpr const char * kStuderTypeId
Definition forge_tape_catalog.hpp:89
constexpr state::ParamID kCompanding
Definition forge_tape_catalog.hpp:99
signal::TapeCurve Curve
Definition forge_tape_catalog.hpp:85
const char * tape_default_name(Archetype archetype) noexcept
Definition forge_tape_catalog.hpp:142
constexpr const char * kAmpexTypeId
Definition forge_tape_catalog.hpp:88
constexpr state::ParamID kBias
Definition forge_tape_catalog.hpp:95
const char * tape_type_id(Archetype archetype) noexcept
Definition forge_tape_catalog.hpp:130
signal::TapeArchetype Archetype
Definition forge_tape_catalog.hpp:84
Archetype normalized_archetype(Archetype archetype) noexcept
Definition forge_tape_catalog.hpp:154
constexpr state::ParamID kCrosstalkDb
Definition forge_tape_catalog.hpp:98
constexpr state::ParamID kAge
Definition forge_tape_catalog.hpp:97
constexpr const char * kCassetteTypeId
Definition forge_tape_catalog.hpp:90
constexpr state::ParamID kPrintThroughDb
Definition forge_tape_catalog.hpp:100
CurveRange curve_range(Archetype archetype) noexcept
Definition forge_tape_catalog.hpp:118
TapeCurve
Which recording standard's record/playback network pair is in force.
Definition tape_machine_components.hpp:25
TapeMachineT< float > TapeMachine
Definition tape_machine.hpp:910
TapeArchetype
Which machine's full preset a fresh instance starts from.
Definition tape_machine_components.hpp:33
uint32_t ParamID
Unique parameter identifier, stable across plugin versions.
Definition parameter.hpp:55
Definition custom_node_type.hpp:90
Definition forge_param_descriptor.hpp:127
The EQ curves an archetype's front panel exposes, as the inclusive [min, max] of the stepped kEqCurve...
Definition forge_tape_catalog.hpp:113
Curve max_curve
Definition forge_tape_catalog.hpp:115
Curve min_curve
Definition forge_tape_catalog.hpp:114
Definition forge_tape_catalog.hpp:178
float mix
Definition forge_tape_catalog.hpp:193
float bias
Definition forge_tape_catalog.hpp:186
float print_db
Definition forge_tape_catalog.hpp:191
float companding
Definition forge_tape_catalog.hpp:190
float crosstalk_db
Definition forge_tape_catalog.hpp:189
float drive
Definition forge_tape_catalog.hpp:187
float print_offset_ms
Definition forge_tape_catalog.hpp:192
void invalidate_cache() noexcept
Force the next block to apply every parameter.
Definition forge_tape_catalog.hpp:197
float age
Definition forge_tape_catalog.hpp:188
signal::TapeMachine machine
Definition forge_tape_catalog.hpp:179
float curve
Definition forge_tape_catalog.hpp:185
A tape machine as an INSERT — record chain in, playback chain out, no delay and no feedback anywhere ...