diff --git a/source/backend/engine/CarlaEngineNative.cpp b/source/backend/engine/CarlaEngineNative.cpp index 04b0c1faf..2043ac415 100644 --- a/source/backend/engine/CarlaEngineNative.cpp +++ b/source/backend/engine/CarlaEngineNative.cpp @@ -1603,6 +1603,11 @@ public: return new CarlaEngineNative(host, true, true, 2, 2, 5, 5); } + static NativePluginHandle _instantiatePatchbayCV8(const NativeHostDescriptor* host) + { + return new CarlaEngineNative(host, true, true, 2, 2, 8, 8); + } + static void _cleanup(NativePluginHandle handle) { delete handlePtr; @@ -2809,6 +2814,56 @@ static const NativePluginDescriptor carlaPatchbayCVDesc = { /* ui_height */ kUiHeight }; +static const NativePluginDescriptor carlaPatchbayCV8Desc = { + /* category */ NATIVE_PLUGIN_CATEGORY_OTHER, + /* hints */ static_cast(NATIVE_PLUGIN_IS_SYNTH + |NATIVE_PLUGIN_HAS_UI + |NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD + |NATIVE_PLUGIN_USES_CONTROL_VOLTAGE + |NATIVE_PLUGIN_USES_STATE + |NATIVE_PLUGIN_USES_TIME + |NATIVE_PLUGIN_USES_UI_SIZE), + /* supports */ static_cast(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), + /* audioIns */ 2, + /* audioOuts */ 2, + /* midiIns */ 1, + /* midiOuts */ 1, + /* paramIns */ kNumInParams, + /* paramOuts */ kNumOutParams, + /* name */ "Carla-Patchbay (CV8)", + /* label */ "carlapatchbaycv", + /* maker */ "falkTX", + /* copyright */ "GNU GPL v2+", + CarlaEngineNative::_instantiatePatchbayCV8, + CarlaEngineNative::_cleanup, + CarlaEngineNative::_get_parameter_count, + CarlaEngineNative::_get_parameter_info, + CarlaEngineNative::_get_parameter_value, + /* _get_midi_program_count */ nullptr, + /* _get_midi_program_info */ nullptr, + CarlaEngineNative::_set_parameter_value, + /* _set_midi_program */ nullptr, + /* _set_custom_data */ nullptr, + CarlaEngineNative::_ui_show, + CarlaEngineNative::_ui_idle, + CarlaEngineNative::_ui_set_parameter_value, + /* _ui_set_midi_program */ nullptr, + /* _ui_set_custom_data */ nullptr, + CarlaEngineNative::_activate, + CarlaEngineNative::_deactivate, + CarlaEngineNative::_process, + CarlaEngineNative::_get_state, + CarlaEngineNative::_set_state, + CarlaEngineNative::_dispatcher, + /* _render_inline_dsplay */ nullptr, + /* cvIns */ 8, + /* cvOuts */ 8, + /* _get_buffer_port_name */ nullptr, + /* _get_buffer_port_range */ nullptr, + /* ui_width */ kUiWidth, + /* ui_height */ kUiHeight +}; + CARLA_BACKEND_END_NAMESPACE // ----------------------------------------------------------------------- @@ -2867,6 +2922,12 @@ const NativePluginDescriptor* carla_get_native_patchbay_cv_plugin() return &carlaPatchbayCVDesc; } +const NativePluginDescriptor* carla_get_native_patchbay_cv8_plugin() +{ + CARLA_BACKEND_USE_NAMESPACE; + return &carlaPatchbayCV8Desc; +} + // ----------------------------------------------------------------------- // Extra stuff for linking purposes diff --git a/source/includes/CarlaNativePlugin.h b/source/includes/CarlaNativePlugin.h index 86b070db1..3dcc5dc28 100644 --- a/source/includes/CarlaNativePlugin.h +++ b/source/includes/CarlaNativePlugin.h @@ -52,6 +52,11 @@ CARLA_EXPORT const NativePluginDescriptor* carla_get_native_patchbay64_plugin(vo */ CARLA_EXPORT const NativePluginDescriptor* carla_get_native_patchbay_cv_plugin(void); +/*! + * Get the native plugin descriptor for the carla-patchbay-cv8 plugin. + */ +CARLA_EXPORT const NativePluginDescriptor* carla_get_native_patchbay_cv8_plugin(void); + /*! * Create a CarlaHostHandle suitable for CarlaHost API calls. * Returned value must be freed by the caller when no longer needed.