@@ -31,7 +31,7 @@ | |||||
# include <X11/Xlib.h> | # include <X11/Xlib.h> | ||||
#endif | #endif | ||||
#include "../native-plugins/_data.cpp" | |||||
#include "../native-plugins/_data.all.cpp" | |||||
namespace CB = CarlaBackend; | namespace CB = CarlaBackend; | ||||
@@ -28,7 +28,7 @@ STANDALONE_LIBS += $(MODULEDIR)/jackbridge.a | |||||
STANDALONE_LIBS += $(MODULEDIR)/audio_decoder.a | STANDALONE_LIBS += $(MODULEDIR)/audio_decoder.a | ||||
STANDALONE_LIBS += $(MODULEDIR)/lilv.a | STANDALONE_LIBS += $(MODULEDIR)/lilv.a | ||||
STANDALONE_LIBS += $(MODULEDIR)/native-plugins.a | |||||
STANDALONE_LIBS += $(MODULEDIR)/native-plugins.all.a | |||||
STANDALONE_LIBS += $(MODULEDIR)/rtmempool.a | STANDALONE_LIBS += $(MODULEDIR)/rtmempool.a | ||||
STANDALONE_LIBS += $(MODULEDIR)/water.a | STANDALONE_LIBS += $(MODULEDIR)/water.a | ||||
@@ -85,19 +85,17 @@ endif | |||||
NATIVE_BUILD_FLAGS = $(NATIVE_PLUGINS_FLAGS) | NATIVE_BUILD_FLAGS = $(NATIVE_PLUGINS_FLAGS) | ||||
NATIVE_LINK_FLAGS = | NATIVE_LINK_FLAGS = | ||||
ifeq ($(HAVE_FLUIDSYNTH),true) | |||||
NATIVE_BUILD_FLAGS += $(FLUIDSYNTH_FLAGS) | NATIVE_BUILD_FLAGS += $(FLUIDSYNTH_FLAGS) | ||||
NATIVE_LINK_FLAGS += $(FLUIDSYNTH_LIBS) | NATIVE_LINK_FLAGS += $(FLUIDSYNTH_LIBS) | ||||
endif | |||||
ifeq ($(HAVE_LINUXSAMPLER),true) | |||||
NATIVE_BUILD_FLAGS += $(LINUXSAMPLER_FLAGS) | NATIVE_BUILD_FLAGS += $(LINUXSAMPLER_FLAGS) | ||||
NATIVE_LINK_FLAGS += $(LINUXSAMPLER_LIBS) | NATIVE_LINK_FLAGS += $(LINUXSAMPLER_LIBS) | ||||
endif | |||||
NATIVE_LINK_FLAGS += $(FFMPEG_LIBS) | |||||
NATIVE_LINK_FLAGS += $(SNDFILE_LIBS) | |||||
LIBS_native += $(MODULEDIR)/audio_decoder.a | LIBS_native += $(MODULEDIR)/audio_decoder.a | ||||
LIBS_native += $(MODULEDIR)/native-plugins.a | |||||
NATIVE_LINK_FLAGS += $(NATIVE_PLUGINS_LIBS) | |||||
LIBS_native += $(MODULEDIR)/native-plugins.base.a | |||||
ifeq ($(HAVE_DGL),true) | ifeq ($(HAVE_DGL),true) | ||||
LIBS_native += $(MODULEDIR)/dgl.a | LIBS_native += $(MODULEDIR)/dgl.a | ||||
@@ -18,19 +18,17 @@ BUILD_CXX_FLAGS += -I.. -I$(CWD)/modules | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Set targets | # Set targets | ||||
TARGETS = $(MODULEDIR)/$(MODULENAME).a | |||||
TARGETS = \ | |||||
$(MODULEDIR)/$(MODULENAME).all.a \ | |||||
$(MODULEDIR)/$(MODULENAME).base.a | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Set objects | # Set objects | ||||
OBJS = \ | |||||
$(OBJDIR)/_all.c.o \ | |||||
$(OBJDIR)/_data.cpp.o | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Simple plugins | # Simple plugins | ||||
OBJS += \ | |||||
OBJS = \ | |||||
$(OBJDIR)/bypass.c.o \ | $(OBJDIR)/bypass.c.o \ | ||||
$(OBJDIR)/lfo.c.o \ | $(OBJDIR)/lfo.c.o \ | ||||
$(OBJDIR)/midi-channel-filter.c.o \ | $(OBJDIR)/midi-channel-filter.c.o \ | ||||
@@ -38,15 +36,23 @@ OBJS += \ | |||||
$(OBJDIR)/midi-join.c.o \ | $(OBJDIR)/midi-join.c.o \ | ||||
$(OBJDIR)/midi-split.c.o \ | $(OBJDIR)/midi-split.c.o \ | ||||
$(OBJDIR)/midi-through.c.o \ | $(OBJDIR)/midi-through.c.o \ | ||||
$(OBJDIR)/midi-transpose.c.o | |||||
OBJS += \ | |||||
$(OBJDIR)/midi-transpose.c.o \ | |||||
$(OBJDIR)/audio-file.cpp.o \ | $(OBJDIR)/audio-file.cpp.o \ | ||||
$(OBJDIR)/bigmeter.cpp.o \ | $(OBJDIR)/bigmeter.cpp.o \ | ||||
$(OBJDIR)/midi-file.cpp.o \ | $(OBJDIR)/midi-file.cpp.o \ | ||||
$(OBJDIR)/midi-pattern.cpp.o \ | $(OBJDIR)/midi-pattern.cpp.o \ | ||||
$(OBJDIR)/notes.cpp.o | $(OBJDIR)/notes.cpp.o | ||||
OBJS_base = \ | |||||
$(OBJDIR)/_all.base.c.o \ | |||||
$(OBJDIR)/_data.base.cpp.o \ | |||||
$(OBJS) | |||||
OBJS_all = \ | |||||
$(OBJDIR)/_all.all.c.o \ | |||||
$(OBJDIR)/_data.all.cpp.o \ | |||||
$(OBJS) | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Include external plugins, if present | # Include external plugins, if present | ||||
@@ -68,9 +74,15 @@ debug: | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
$(MODULEDIR)/$(MODULENAME).a: $(OBJS) | |||||
$(MODULEDIR)/$(MODULENAME).all.a: $(OBJS_all) | |||||
-@mkdir -p $(MODULEDIR) | |||||
@echo "Creating $(MODULENAME).all.a" | |||||
@rm -f $@ | |||||
@$(AR) crs $@ $^ | |||||
$(MODULEDIR)/$(MODULENAME).base.a: $(OBJS_base) | |||||
-@mkdir -p $(MODULEDIR) | -@mkdir -p $(MODULEDIR) | ||||
@echo "Creating $(MODULENAME).a" | |||||
@echo "Creating $(MODULENAME).base.a" | |||||
@rm -f $@ | @rm -f $@ | ||||
@$(AR) crs $@ $^ | @$(AR) crs $@ $^ | ||||
@@ -0,0 +1,75 @@ | |||||
/* | |||||
* Carla Native Plugins | |||||
* Copyright (C) 2012-2017 Filipe Coelho <falktx@falktx.com> | |||||
* | |||||
* This program is free software; you can redistribute it and/or | |||||
* modify it under the terms of the GNU General Public License as | |||||
* published by the Free Software Foundation; either version 2 of | |||||
* the License, or any later version. | |||||
* | |||||
* This program is distributed in the hope that it will be useful, | |||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||||
* GNU General Public License for more details. | |||||
* | |||||
* For a full copy of the GNU General Public License see the doc/GPL.txt file. | |||||
*/ | |||||
#include "CarlaDefines.h" | |||||
#include "CarlaNative.h" | |||||
#ifdef CARLA_OS_WIN | |||||
# define DISABLE_PLUGINS_FOR_WINDOWS_BUILD | |||||
# undef HAVE_PYQT | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Simple plugins | |||||
extern void carla_register_native_plugin_bypass(void); | |||||
extern void carla_register_native_plugin_lfo(void); | |||||
extern void carla_register_native_plugin_midichanfilter(void); | |||||
extern void carla_register_native_plugin_midigain(void); | |||||
extern void carla_register_native_plugin_midijoin(void); | |||||
extern void carla_register_native_plugin_midisplit(void); | |||||
extern void carla_register_native_plugin_midithrough(void); | |||||
extern void carla_register_native_plugin_miditranspose(void); | |||||
// MIDI sequencer | |||||
extern void carla_register_native_plugin_midipattern(void); | |||||
// Carla | |||||
extern void carla_register_native_plugin_carla(void); | |||||
// External-UI plugins | |||||
extern void carla_register_native_plugin_bigmeter(void); | |||||
extern void carla_register_native_plugin_notes(void); | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
void carla_register_all_native_plugins(void) | |||||
{ | |||||
// Simple plugins | |||||
carla_register_native_plugin_bypass(); | |||||
carla_register_native_plugin_lfo(); | |||||
carla_register_native_plugin_midichanfilter(); | |||||
carla_register_native_plugin_midigain(); | |||||
carla_register_native_plugin_midijoin(); | |||||
carla_register_native_plugin_midisplit(); | |||||
carla_register_native_plugin_midithrough(); | |||||
carla_register_native_plugin_miditranspose(); | |||||
#ifdef HAVE_PYQT | |||||
// MIDI sequencer | |||||
carla_register_native_plugin_midipattern(); | |||||
// Carla | |||||
carla_register_native_plugin_carla(); | |||||
#endif | |||||
// External-UI plugins | |||||
carla_register_native_plugin_bigmeter(); | |||||
carla_register_native_plugin_notes(); | |||||
} | |||||
// -------------------------------------------------------------------------------------------------------------------- |
@@ -165,15 +165,15 @@ static const NativePluginDescriptor sNativePluginDescriptors[] = { | |||||
DESCFUNCS | DESCFUNCS | ||||
}, | }, | ||||
#if 0 | |||||
// -------------------------------------------------------------------------------------------------------------------- | // -------------------------------------------------------------------------------------------------------------------- | ||||
// Audio file | // Audio file | ||||
{ | { | ||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | /* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | ||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_HAS_UI | |||||
|NATIVE_PLUGIN_NEEDS_UI_OPEN_SAVE), | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
|NATIVE_PLUGIN_NEEDS_UI_OPEN_SAVE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | /* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | ||||
/* audioIns */ 0, | /* audioIns */ 0, | ||||
/* audioOuts */ 2, | /* audioOuts */ 2, | ||||
@@ -187,7 +187,6 @@ static const NativePluginDescriptor sNativePluginDescriptors[] = { | |||||
/* copyright */ "GNU GPL v2+", | /* copyright */ "GNU GPL v2+", | ||||
DESCFUNCS | DESCFUNCS | ||||
}, | }, | ||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | // -------------------------------------------------------------------------------------------------------------------- | ||||
// MIDI file and sequencer | // MIDI file and sequencer |
@@ -0,0 +1,364 @@ | |||||
/* | |||||
* Carla Native Plugins | |||||
* Copyright (C) 2012-2017 Filipe Coelho <falktx@falktx.com> | |||||
* | |||||
* This program is free software; you can redistribute it and/or | |||||
* modify it under the terms of the GNU General Public License as | |||||
* published by the Free Software Foundation; either version 2 of | |||||
* the License, or any later version. | |||||
* | |||||
* This program is distributed in the hope that it will be useful, | |||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||||
* GNU General Public License for more details. | |||||
* | |||||
* For a full copy of the GNU General Public License see the doc/GPL.txt file. | |||||
*/ | |||||
#include "CarlaNative.h" | |||||
#include "CarlaMIDI.h" | |||||
#include "CarlaUtils.hpp" | |||||
#ifdef CARLA_OS_WIN | |||||
# define DISABLE_PLUGINS_FOR_WINDOWS_BUILD | |||||
# undef HAVE_PYQT | |||||
#endif | |||||
#undef DESCFUNCS | |||||
#define DESCFUNCS \ | |||||
nullptr, nullptr, nullptr, nullptr, nullptr, \ | |||||
nullptr, nullptr, nullptr, nullptr, nullptr, \ | |||||
nullptr, nullptr, nullptr, nullptr, nullptr, \ | |||||
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr | |||||
static const NativePluginDescriptor sNativePluginDescriptors[] = { | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Simple plugins | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 0, | |||||
/* midiOuts */ 0, | |||||
/* paramIns */ 5-1, | |||||
/* paramOuts */ 1, | |||||
/* name */ "LFO", | |||||
/* label */ "lfo", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Channel Filter", | |||||
/* label */ "midichanfilter", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Gain", | |||||
/* label */ "midigain", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ MAX_MIDI_CHANNELS, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Join", | |||||
/* label */ "midijoin", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ MAX_MIDI_CHANNELS, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Split", | |||||
/* label */ "midisplit", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Through", | |||||
/* label */ "midithrough", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ NATIVE_PLUGIN_IS_RTSAFE, | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_EVERYTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 1, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Transpose", | |||||
/* label */ "miditranspose", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// MIDI sequencer | |||||
#ifdef HAVE_PYQT | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 0, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 4, | |||||
/* paramOuts */ 0, | |||||
/* name */ "MIDI Pattern", | |||||
/* label */ "midipattern", | |||||
/* maker */ "falkTX, tatch", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// Carla | |||||
#ifdef HAVE_PYQT | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 2, | |||||
/* audioOuts */ 2, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Rack", | |||||
/* label */ "carlarack", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 2, | |||||
/* audioOuts */ 2, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 0, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Rack (no midi out)", | |||||
/* label */ "carlarack-nomidiout", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 2, | |||||
/* audioOuts */ 2, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Patchbay", | |||||
/* label */ "carlapatchbay", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 3, | |||||
/* audioOuts */ 2, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Patchbay (sidechain)", | |||||
/* label */ "carlapatchbay3s", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 16, | |||||
/* audioOuts */ 16, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Patchbay (16chan)", | |||||
/* label */ "carlapatchbay16", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_OTHER, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_SYNTH | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
//|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS | |||||
|NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD | |||||
|NATIVE_PLUGIN_USES_STATE | |||||
|NATIVE_PLUGIN_USES_TIME), | |||||
/* supports */ static_cast<NativePluginSupports>(NATIVE_PLUGIN_SUPPORTS_EVERYTHING), | |||||
/* audioIns */ 32, | |||||
/* audioOuts */ 32, | |||||
/* midiIns */ 1, | |||||
/* midiOuts */ 1, | |||||
/* paramIns */ 0, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Carla-Patchbay (32chan)", | |||||
/* label */ "carlapatchbay32", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
#endif | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
// External-UI plugins | |||||
#ifdef HAVE_PYQT | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE | |||||
|NATIVE_PLUGIN_HAS_UI | |||||
|NATIVE_PLUGIN_NEEDS_FIXED_BUFFERS), | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | |||||
/* audioIns */ 2, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 0, | |||||
/* midiOuts */ 0, | |||||
/* paramIns */ 2, | |||||
/* paramOuts */ 2, | |||||
/* name */ "Big Meter", | |||||
/* label */ "bigmeter", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
{ | |||||
/* category */ NATIVE_PLUGIN_CATEGORY_UTILITY, | |||||
/* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE | |||||
|NATIVE_PLUGIN_HAS_UI), | |||||
/* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING, | |||||
/* audioIns */ 0, | |||||
/* audioOuts */ 0, | |||||
/* midiIns */ 0, | |||||
/* midiOuts */ 0, | |||||
/* paramIns */ 1, | |||||
/* paramOuts */ 0, | |||||
/* name */ "Notes", | |||||
/* label */ "notes", | |||||
/* maker */ "falkTX", | |||||
/* copyright */ "GNU GPL v2+", | |||||
DESCFUNCS | |||||
}, | |||||
#endif | |||||
}; | |||||
#undef DESCFUNCS | |||||
// -------------------------------------------------------------------------------------------------------------------- | |||||
const NativePluginDescriptor* carla_get_native_plugins_data(uint32_t* count) | |||||
{ | |||||
CARLA_SAFE_ASSERT_RETURN(count != nullptr, nullptr); | |||||
*count = static_cast<uint32_t>(sizeof(sNativePluginDescriptors)/sizeof(NativePluginDescriptor)); | |||||
return sNativePluginDescriptors; | |||||
} | |||||
// -------------------------------------------------------------------------------------------------------------------- |
@@ -9,7 +9,7 @@ | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# DPF plugins | # DPF plugins | ||||
OBJS += \ | |||||
OBJS_all += \ | |||||
$(OBJDIR)/distrho-3bandeq.cpp.o \ | $(OBJDIR)/distrho-3bandeq.cpp.o \ | ||||
$(OBJDIR)/distrho-3bandsplitter.cpp.o \ | $(OBJDIR)/distrho-3bandsplitter.cpp.o \ | ||||
$(OBJDIR)/distrho-kars.cpp.o \ | $(OBJDIR)/distrho-kars.cpp.o \ | ||||
@@ -25,7 +25,7 @@ endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# DPF plugins (Juice) | # DPF plugins (Juice) | ||||
OBJS += \ | |||||
OBJS_all += \ | |||||
$(OBJDIR)/distrho-vectorjuice.cpp.o \ | $(OBJDIR)/distrho-vectorjuice.cpp.o \ | ||||
$(OBJDIR)/distrho-wobblejuice.cpp.o | $(OBJDIR)/distrho-wobblejuice.cpp.o | ||||
@@ -33,7 +33,7 @@ OBJS += \ | |||||
# ZynAddSubFX | # ZynAddSubFX | ||||
ifeq ($(HAVE_ZYN_DEPS),true) | ifeq ($(HAVE_ZYN_DEPS),true) | ||||
OBJS += \ | |||||
OBJS_all += \ | |||||
$(OBJDIR)/zynaddsubfx-fx.cpp.o \ | $(OBJDIR)/zynaddsubfx-fx.cpp.o \ | ||||
$(OBJDIR)/zynaddsubfx-src.cpp.o \ | $(OBJDIR)/zynaddsubfx-src.cpp.o \ | ||||
$(OBJDIR)/zynaddsubfx-synth.cpp.o | $(OBJDIR)/zynaddsubfx-synth.cpp.o | ||||
@@ -83,7 +83,7 @@ endif | |||||
# Experimental plugins | # Experimental plugins | ||||
ifeq ($(EXPERIMENTAL_PLUGINS),true) | ifeq ($(EXPERIMENTAL_PLUGINS),true) | ||||
OBJS += \ | |||||
OBJS_all += \ | |||||
$(OBJDIR)/zita-at1.cpp.o \ | $(OBJDIR)/zita-at1.cpp.o \ | ||||
$(OBJDIR)/zita-bls1.cpp.o \ | $(OBJDIR)/zita-bls1.cpp.o \ | ||||
$(OBJDIR)/zita-rev1.cpp.o | $(OBJDIR)/zita-rev1.cpp.o | ||||
@@ -56,7 +56,7 @@ LIBS += $(MODULEDIR)/rtmempool.a | |||||
LIBS += $(MODULEDIR)/water.a | LIBS += $(MODULEDIR)/water.a | ||||
LIBS += $(MODULEDIR)/audio_decoder.a | LIBS += $(MODULEDIR)/audio_decoder.a | ||||
LIBS += $(MODULEDIR)/native-plugins.a | |||||
LIBS += $(MODULEDIR)/native-plugins.all.a | |||||
ifeq ($(HAVE_DGL),true) | ifeq ($(HAVE_DGL),true) | ||||
LIBS += $(MODULEDIR)/dgl.a | LIBS += $(MODULEDIR)/dgl.a | ||||
@@ -71,14 +71,14 @@ endif | |||||
LINK_FLAGS += $(JACKBRIDGE_LIBS) | LINK_FLAGS += $(JACKBRIDGE_LIBS) | ||||
LINK_FLAGS += $(LILV_LIBS) | LINK_FLAGS += $(LILV_LIBS) | ||||
LINK_FLAGS += $(NATIVE_PLUGINS_LIBS) | |||||
LINK_FLAGS += $(RTMEMPOOL_LIBS) | LINK_FLAGS += $(RTMEMPOOL_LIBS) | ||||
LINK_FLAGS += $(WATER_LIBS) | LINK_FLAGS += $(WATER_LIBS) | ||||
LINK_FLAGS += $(NATIVE_PLUGINS_LIBS) | |||||
LINK_FLAGS += $(LIBLO_LIBS) | |||||
LINK_FLAGS += $(MAGIC_LIBS) | |||||
LINK_FLAGS += $(FLUIDSYNTH_LIBS) | LINK_FLAGS += $(FLUIDSYNTH_LIBS) | ||||
LINK_FLAGS += $(LIBLO_LIBS) | |||||
LINK_FLAGS += $(LINUXSAMPLER_LIBS) | LINK_FLAGS += $(LINUXSAMPLER_LIBS) | ||||
LINK_FLAGS += $(MAGIC_LIBS) | |||||
LINK_FLAGS += $(X11_LIBS) | LINK_FLAGS += $(X11_LIBS) | ||||
# ---------------------------------------------------------------------------------------------------------------------------- | # ---------------------------------------------------------------------------------------------------------------------------- | ||||