// AUTOGENERATED — do not edit. Source: schemas/modes/elysiamorf.json. Run `bun run codegen/generate.ts` to regenerate. #ifndef NISPS_GENERATED_ELYSIAMORF_SCHEMA_HPP #define NISPS_GENERATED_ELYSIAMORF_SCHEMA_HPP #include "schema_types.hpp" namespace nisps::modes::generated { inline constexpr std::string_view kElysiamorfModeId = "elysiamorf"; inline constexpr std::string_view kElysiamorfEngineId = "elysiamorf"; inline constexpr std::array kElysiamorfInputChannels = {{ "joy_x", "joy_y", "joy_z", "joy_w", }}; inline constexpr std::array kElysiamorfHiddenLayers = {{ 10u, 14u, 18u, }}; inline constexpr MLConfig kElysiamorfMLConfig = { 4u, 40u, 0.6f, 1.0f, 1000u, }; inline constexpr std::size_t kElysiamorfParamCount = 40u; inline constexpr std::array kElysiamorfParams = {{ Param{ "fm0_carrier", "FM0 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm0", }, Param{ "fm0_mod_freq", "FM0 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm0", }, Param{ "fm0_mod_index", "FM0 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm0", }, Param{ "fm0_phasor_mul", "FM0 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm0", }, Param{ "fm0_phase_off", "FM0 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm0", }, Param{ "fm1_carrier", "FM1 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm1", }, Param{ "fm1_mod_freq", "FM1 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm1", }, Param{ "fm1_mod_index", "FM1 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm1", }, Param{ "fm1_phasor_mul", "FM1 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm1", }, Param{ "fm1_phase_off", "FM1 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm1", }, Param{ "fm2_carrier", "FM2 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm2", }, Param{ "fm2_mod_freq", "FM2 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm2", }, Param{ "fm2_mod_index", "FM2 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm2", }, Param{ "fm2_phasor_mul", "FM2 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm2", }, Param{ "fm2_phase_off", "FM2 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm2", }, Param{ "fm3_carrier", "FM3 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm3", }, Param{ "fm3_mod_freq", "FM3 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm3", }, Param{ "fm3_mod_index", "FM3 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm3", }, Param{ "fm3_phasor_mul", "FM3 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm3", }, Param{ "fm3_phase_off", "FM3 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm3", }, Param{ "fm4_carrier", "FM4 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm4", }, Param{ "fm4_mod_freq", "FM4 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm4", }, Param{ "fm4_mod_index", "FM4 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm4", }, Param{ "fm4_phasor_mul", "FM4 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm4", }, Param{ "fm4_phase_off", "FM4 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm4", }, Param{ "fm5_carrier", "FM5 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm5", }, Param{ "fm5_mod_freq", "FM5 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm5", }, Param{ "fm5_mod_index", "FM5 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm5", }, Param{ "fm5_phasor_mul", "FM5 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm5", }, Param{ "fm5_phase_off", "FM5 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm5", }, Param{ "fm6_carrier", "FM6 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm6", }, Param{ "fm6_mod_freq", "FM6 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm6", }, Param{ "fm6_mod_index", "FM6 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm6", }, Param{ "fm6_phasor_mul", "FM6 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm6", }, Param{ "fm6_phase_off", "FM6 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm6", }, Param{ "fm7_carrier", "FM7 Carrier", 0.0f, 1.0f, 0.5f, Curve::linear, "fm7", }, Param{ "fm7_mod_freq", "FM7 Mod Freq", 0.0f, 1.0f, 0.5f, Curve::linear, "fm7", }, Param{ "fm7_mod_index", "FM7 Mod Index", 0.0f, 1.0f, 0.0f, Curve::linear, "fm7", }, Param{ "fm7_phasor_mul", "FM7 Phasor Mul", 0.0f, 1.0f, 0.0f, Curve::linear, "fm7", }, Param{ "fm7_phase_off", "FM7 Phase Off", 0.0f, 1.0f, 0.0f, Curve::linear, "fm7", }, }}; inline constexpr std::size_t kElysiamorfVoiceSpaceCount = 0u; inline constexpr std::array kElysiamorfVoiceSpaces = {}; inline constexpr UIConfig kElysiamorfUI = { PrimaryInput::XYPad, false, false, }; } // namespace nisps::modes::generated #endif // NISPS_GENERATED_ELYSIAMORF_SCHEMA_HPP