diff --git a/CMakeLists.txt b/CMakeLists.txt index ad59286..c74bb48 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,3 +1,4 @@ cmake_minimum_required(VERSION 3.10) project(yaw-audio) +add_subdirectory("lib") add_subdirectory("src") \ No newline at end of file diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt new file mode 100644 index 0000000..e491019 --- /dev/null +++ b/lib/CMakeLists.txt @@ -0,0 +1,2 @@ +cmake_minimum_required(VERSION 3.10) +add_subdirectory(DPF) \ No newline at end of file diff --git a/src/yaw-tab/CMakeLists.txt b/src/yaw-tab/CMakeLists.txt index e8feac6..cb6f58f 100644 --- a/src/yaw-tab/CMakeLists.txt +++ b/src/yaw-tab/CMakeLists.txt @@ -1,3 +1,9 @@ -cmake_minimum_required(VERSION 3.10) +dpf_add_plugin(yaw-tab + TARGETS vst2 + FILES_DSP + dsp.cpp + FILES_UI + ui.cpp) -project(yaw-tab) \ No newline at end of file +target_include_directories( + yaw-tab PUBLIC ".") diff --git a/src/yaw-tab/DistrhoPluginInfo.h b/src/yaw-tab/DistrhoPluginInfo.h new file mode 100644 index 0000000..4c22069 --- /dev/null +++ b/src/yaw-tab/DistrhoPluginInfo.h @@ -0,0 +1,56 @@ +/* + * DISTRHO Plugin Framework (DPF) + * Copyright (C) 2012-2021 Filipe Coelho + * + * Permission to use, copy, modify, and/or distribute this software for any purpose with + * or without fee is hereby granted, provided that the above copyright notice and this + * permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD + * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN + * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER + * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef DISTRHO_PLUGIN_INFO_H_INCLUDED +#define DISTRHO_PLUGIN_INFO_H_INCLUDED + +#define DISTRHO_PLUGIN_BRAND "DISTRHO" +#define DISTRHO_PLUGIN_NAME "Info" +#define DISTRHO_PLUGIN_URI "http://distrho.sf.net/examples/Info" + +#define DISTRHO_PLUGIN_HAS_UI 1 +#define DISTRHO_PLUGIN_IS_RT_SAFE 1 +#define DISTRHO_PLUGIN_NUM_INPUTS 2 +#define DISTRHO_PLUGIN_NUM_OUTPUTS 2 +#define DISTRHO_PLUGIN_WANT_TIMEPOS 1 +#define DISTRHO_UI_USER_RESIZABLE 1 +#define DISTRHO_UI_USE_NANOVG 1 + +// only checking if supported, not actually used +#define DISTRHO_PLUGIN_WANT_PARAMETER_VALUE_CHANGE_REQUEST 1 + +#ifdef __MOD_DEVICES__ +#define DISTRHO_PLUGIN_USES_MODGUI 1 +#endif + +enum Parameters { + kParameterBufferSize = 0, + kParameterCanRequestParameterValueChanges, + kParameterTimePlaying, + kParameterTimeFrame, + kParameterTimeValidBBT, + kParameterTimeBar, + kParameterTimeBeat, + kParameterTimeTick, + kParameterTimeBarStartTick, + kParameterTimeBeatsPerBar, + kParameterTimeBeatType, + kParameterTimeTicksPerBeat, + kParameterTimeBeatsPerMinute, + kParameterCount +}; + +#endif // DISTRHO_PLUGIN_INFO_H_INCLUDED diff --git a/src/yaw-tab/main.cpp b/src/yaw-tab/dsp.cpp similarity index 100% rename from src/yaw-tab/main.cpp rename to src/yaw-tab/dsp.cpp diff --git a/src/yaw-tab/ui.cpp b/src/yaw-tab/ui.cpp new file mode 100644 index 0000000..e69de29