// AUTOGENERATED — do not edit. Source: schemas/modes/xiasri.json. Run `bun run codegen/generate.ts` to regenerate. #ifndef NISPS_GENERATED_XIASRI_SCHEMA_HPP #define NISPS_GENERATED_XIASRI_SCHEMA_HPP #include "schema_types.hpp" #include "../../ml/mlp.hpp" namespace nisps::modes::generated { inline constexpr std::string_view kXiasriModeId = "xiasri"; inline constexpr std::string_view kXiasriEngineId = "xiasri"; inline constexpr std::array kXiasriInputChannels = {{ "joy_x", "joy_y", "joy_z", "joy_w", }}; inline constexpr std::array kXiasriHiddenLayers = {{ 10u, 10u, 14u, }}; inline constexpr MLConfig kXiasriMLConfig = { 4u, 24u, 0.6f, }; inline constexpr std::size_t kXiasriParamCount = 24u; inline constexpr std::array kXiasriParams = {{ Param{ "dl1_mix", "Delay 1 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "dl2_mix", "Delay 2 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "dl3_mix", "Delay 3 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "p03", "Param 03", 0.0f, 1.0f, 0.5f, Curve::linear, "general", }, Param{ "allp1_fb", "Allpass 1 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp2_fb", "Allpass 2 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "comb1_fb", "Comb 1 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "comb2_fb", "Comb 2 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "dl1_fb", "Delay 1 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "dl2_fb", "Delay 2 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "dl3_fb", "Delay 3 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, Param{ "wetdry_mix", "Wet/Dry Mix", 0.0f, 1.0f, 0.5f, Curve::linear, "mix", }, Param{ "pitch_transp", "Pitch Transpose", 0.0f, 1.0f, 0.5f, Curve::linear, "pitch", }, Param{ "pitch_mix", "Pitch Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "pitch", }, Param{ "allp3_fb", "Allpass 3 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp4_fb", "Allpass 4 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp5_fb", "Allpass 5 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp6_fb", "Allpass 6 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp3_mix", "Allpass 3 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp4_mix", "Allpass 4 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp5_mix", "Allpass 5 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "allp6_mix", "Allpass 6 Mix", 0.0f, 1.0f, 0.0f, Curve::linear, "verb", }, Param{ "dl4_mix", "Delay 4 Mix", 0.0f, 1.0f, 0.0f, Curve::square, "delays", }, Param{ "dl4_fb", "Delay 4 Feedback", 0.0f, 1.0f, 0.0f, Curve::linear, "delays", }, }}; inline constexpr std::size_t kXiasriVoiceSpaceCount = 1u; inline constexpr std::array kXiasriVoiceSpaces = {{ "Direct", }}; inline constexpr UIConfig kXiasriUI = { PrimaryInput::Joystick, false, false, }; using XiasriMLP = ::nisps::ml::MLP; inline constexpr ::nisps::ParamSchema kXiasriSchema = { kXiasriModeId, kXiasriEngineId, std::span(kXiasriInputChannels), kXiasriMLConfig.input_size, std::span(kXiasriHiddenLayers), kXiasriMLConfig.output_size, kXiasriMLConfig.default_spread, std::span(kXiasriParams), std::span(kXiasriVoiceSpaces), kXiasriUI, }; } // namespace nisps::modes::generated #endif // NISPS_GENERATED_XIASRI_SCHEMA_HPP