diff --git a/examples/fx_ap1/src/product.json b/examples/fx_ap1/src/product.json index 23dcc7f..37ba093 100644 --- a/examples/fx_ap1/src/product.json +++ b/examples/fx_ap1/src/product.json @@ -1,7 +1,7 @@ { "product": { - "name": "Brickworks 1st-order allpass example (C)", - "version": "1.0.1", + "name": "Brickworks 1st-order allpass example", + "version": "1.1.0", "buildVersion": "1", "bundleName": "bw_example_fx_ap1", "buses": [ diff --git a/examples/fx_ap2/src/product.json b/examples/fx_ap2/src/product.json index b585550..067633c 100644 --- a/examples/fx_ap2/src/product.json +++ b/examples/fx_ap2/src/product.json @@ -1,7 +1,7 @@ { "product": { - "name": "Brickworks 2nd-order allpass example (C)", - "version": "1.0.1", + "name": "Brickworks 2nd-order allpass example", + "version": "1.1.0", "buildVersion": "1", "bundleName": "bw_example_fx_ap2", "buses": [ diff --git a/examples/fx_balance/android/Makefile b/examples/fx_balance/android/Makefile deleted file mode 100644 index df6de27..0000000 --- a/examples/fx_balance/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fx_balance -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fx_balance.c - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fx_balance/daisy-seed/Makefile b/examples/fx_balance/daisy-seed/Makefile deleted file mode 100644 index f460ff8..0000000 --- a/examples/fx_balance/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fx_balance - -C_SOURCES += ${ROOT_DIR}/../src/bw_example_fx_balance.c - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fx_balance/daisy-seed/config_daisy_seed.h b/examples/fx_balance/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fx_balance/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fx_balance/ios/Makefile b/examples/fx_balance/ios/Makefile deleted file mode 100644 index 0aca644..0000000 --- a/examples/fx_balance/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fx_balance -SOURCE := ${NAME}.c - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fx_balance/src/android.json b/examples/fx_balance/src/android.json new file mode 100644 index 0000000..3d01082 --- /dev/null +++ b/examples/fx_balance/src/android.json @@ -0,0 +1,5 @@ +{ + "android": { + "javaPackageName": "com.orastron.bw_example_fx_balance" + } +} diff --git a/examples/fx_balance/src/bw_example_fx_balance.c b/examples/fx_balance/src/bw_example_fx_balance.c deleted file mode 100644 index 43745f6..0000000 --- a/examples/fx_balance/src/bw_example_fx_balance.c +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fx_balance.h" - -void bw_example_fx_balance_init(bw_example_fx_balance *instance) { - bw_balance_init(&instance->balance_coeffs); - bw_ppm_init(&instance->ppm_coeffs); -} - -void bw_example_fx_balance_set_sample_rate(bw_example_fx_balance *instance, float sample_rate) { - bw_balance_set_sample_rate(&instance->balance_coeffs, sample_rate); - bw_ppm_set_sample_rate(&instance->ppm_coeffs, sample_rate); -} - -void bw_example_fx_balance_reset(bw_example_fx_balance *instance) { - bw_balance_reset_coeffs(&instance->balance_coeffs); - bw_ppm_reset_coeffs(&instance->ppm_coeffs); - bw_ppm_reset_state(&instance->ppm_coeffs, &instance->ppm_l_state, 0.f); - bw_ppm_reset_state(&instance->ppm_coeffs, &instance->ppm_r_state, 0.f); -} - -void bw_example_fx_balance_process(bw_example_fx_balance *instance, const float** x, float** y, int n_samples) { - bw_balance_process(&instance->balance_coeffs, x[0], x[1], y[0], y[1], n_samples); - bw_ppm_state *ppm_states[2] = { &instance->ppm_l_state, &instance->ppm_r_state }; - bw_ppm_process_multi(&instance->ppm_coeffs, ppm_states, (const float **)y, NULL, 2, n_samples); -} - -void bw_example_fx_balance_set_parameter(bw_example_fx_balance *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_balance: - bw_balance_set_balance(&instance->balance_coeffs, value + value - 1.f); - break; - } -} - -float bw_example_fx_balance_get_parameter(bw_example_fx_balance *instance, int index) { - float r = 0.f; - switch (index) { - case p_balance: - r = instance->params[p_balance]; - break; - case p_balance + 1: - { - const float v = bw_ppm_get_y_z1(&instance->ppm_l_state); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - case p_balance + 2: - { - const float v = bw_ppm_get_y_z1(&instance->ppm_r_state); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - } - return r; -} diff --git a/examples/fx_balance/src/bw_example_fx_balance.h b/examples/fx_balance/src/bw_example_fx_balance.h deleted file mode 100644 index 7071c42..0000000 --- a/examples/fx_balance/src/bw_example_fx_balance.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FX_BALANCE_H -#define _BW_EXAMPLE_FX_BALANCE_H - -#include "platform.h" - -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -enum { - p_balance, - p_n -}; - -struct _bw_example_fx_balance { - // Sub-components - bw_balance_coeffs balance_coeffs; - bw_ppm_coeffs ppm_coeffs; - bw_ppm_state ppm_l_state; - bw_ppm_state ppm_r_state; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fx_balance bw_example_fx_balance; - -void bw_example_fx_balance_init(bw_example_fx_balance *instance); -void bw_example_fx_balance_set_sample_rate(bw_example_fx_balance *instance, float sample_rate); -void bw_example_fx_balance_reset(bw_example_fx_balance *instance); -void bw_example_fx_balance_process(bw_example_fx_balance *instance, const float** x, float** y, int n_samples); -void bw_example_fx_balance_set_parameter(bw_example_fx_balance *instance, int index, float value); -float bw_example_fx_balance_get_parameter(bw_example_fx_balance *instance, int index); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/examples/fx_balance/src/cmd.json b/examples/fx_balance/src/cmd.json new file mode 100644 index 0000000..5584a39 --- /dev/null +++ b/examples/fx_balance/src/cmd.json @@ -0,0 +1,6 @@ +{ + "cmd": { + "busIds": [ "input", "output" ], + "parameterIds": [ "balance", "l_level", "r_level" ] + } +} diff --git a/examples/fx_balance/src/config.h b/examples/fx_balance/src/config.h deleted file mode 100644 index dfa199b..0000000 --- a/examples/fx_balance/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fx_balance" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 2 -#define NUM_CHANNELS_OUT 2 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_STEREO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_STEREO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Balance", "Balance", "", 0, 0, 0, 0.5f }, - { "Left level", "L Level", "", 1, 0, 0, 0.f }, - { "Right level", "R Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fx_balance.h" - -#define P_TYPE bw_example_fx_balance -#define P_INIT bw_example_fx_balance_init -#define P_SET_SAMPLE_RATE bw_example_fx_balance_set_sample_rate -#define P_RESET bw_example_fx_balance_reset -#define P_PROCESS bw_example_fx_balance_process -#define P_SET_PARAMETER bw_example_fx_balance_set_parameter -#define P_GET_PARAMETER bw_example_fx_balance_get_parameter - -#endif diff --git a/examples/fx_balance/src/config.js b/examples/fx_balance/src/config.js deleted file mode 100644 index 9c8f5fa..0000000 --- a/examples/fx_balance/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: true, - output: false - }, - { - stereo: true, - output: true - } -]; - -var parameters = [ - { - name: "Balance", - output: false, - defaultValue: 0.5 - }, - { - name: "Left level", - output: true, - defaultValue: 0.0 - }, - { - name: "Right level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/fx_balance/src/daisy-seed.json b/examples/fx_balance/src/daisy-seed.json new file mode 100644 index 0000000..58cd7bf --- /dev/null +++ b/examples/fx_balance/src/daisy-seed.json @@ -0,0 +1,5 @@ +{ + "daisy_seed": { + "parameterPins": [ 22, 23, 15 ] + } +} diff --git a/examples/fx_balance/src/lv2.json b/examples/fx_balance/src/lv2.json new file mode 100644 index 0000000..08489d6 --- /dev/null +++ b/examples/fx_balance/src/lv2.json @@ -0,0 +1,12 @@ +{ + "lv2": { + "prefixes": { + "bw_examples": "https://www.orastron.com/brickworks/examples/" + }, + "uri": "@bw_examples:fx_balance", + "types": [ "@lv2:SpatialPlugin" ], + "version": "1.0", + "busSymbols": [ "input", "output" ], + "parameterSymbols": [ "balance", "l_level", "r_level" ] + } +} diff --git a/examples/fx_balance/src/plugin.h b/examples/fx_balance/src/plugin.h new file mode 100644 index 0000000..95309ce --- /dev/null +++ b/examples/fx_balance/src/plugin.h @@ -0,0 +1,66 @@ +#include "common.h" +#include +#include + +typedef struct plugin { + bw_balance_coeffs balance_coeffs; + bw_ppm_coeffs ppm_coeffs; + bw_ppm_state ppm_l_state; + bw_ppm_state ppm_r_state; +} plugin; + +static void plugin_init(plugin *instance) { + bw_balance_init(&instance->balance_coeffs); + bw_ppm_init(&instance->ppm_coeffs); +} + +static void plugin_fini(plugin *instance) { + (void)instance; +} + +static void plugin_set_sample_rate(plugin *instance, float sample_rate) { + bw_balance_set_sample_rate(&instance->balance_coeffs, sample_rate); + bw_ppm_set_sample_rate(&instance->ppm_coeffs, sample_rate); +} + +static size_t plugin_mem_req(plugin *instance) { + (void)instance; + return 0; +} + +static void plugin_mem_set(plugin *instance, void *mem) { + (void)instance; + (void)mem; +} + +static void plugin_reset(plugin *instance) { + bw_balance_reset_coeffs(&instance->balance_coeffs); + bw_ppm_reset_coeffs(&instance->ppm_coeffs); + bw_ppm_reset_state(&instance->ppm_coeffs, &instance->ppm_l_state, 0.f); + bw_ppm_reset_state(&instance->ppm_coeffs, &instance->ppm_r_state, 0.f); +} + +static void plugin_set_parameter(plugin *instance, size_t index, float value) { + (void)index; + + bw_balance_set_balance(&instance->balance_coeffs, 0.01f * value); +} + +static float plugin_get_parameter(plugin *instance, size_t index) { + float v = 0.f; + switch (index) { + case 1: + v = bw_ppm_get_y_z1(&instance->ppm_l_state); + break; + case 2: + v = bw_ppm_get_y_z1(&instance->ppm_r_state); + break; + } + return v < -60.f ? -60.f : (v > 0.f ? 0.f : v); +} + +static void plugin_process(plugin *instance, const float **inputs, float **outputs, size_t n_samples) { + bw_balance_process(&instance->balance_coeffs, inputs[0], inputs[1], outputs[0], outputs[1], n_samples); + bw_ppm_state *ppm_states[2] = { &instance->ppm_l_state, &instance->ppm_r_state }; + bw_ppm_process_multi(&instance->ppm_coeffs, ppm_states, (const float **)outputs, NULL, 2, n_samples); +} diff --git a/examples/fx_balance/src/product.json b/examples/fx_balance/src/product.json new file mode 100644 index 0000000..15a0681 --- /dev/null +++ b/examples/fx_balance/src/product.json @@ -0,0 +1,56 @@ +{ + "product": { + "name": "Brickworks stereo balance example", + "version": "1.1.0", + "buildVersion": "1", + "bundleName": "bw_example_fx_balance", + "buses": [ + { + "type": "audio", + "direction": "input", + "channels": "stereo", + "name": "Input", + "shortName": "Input" + }, + { + "type": "audio", + "direction": "output", + "channels": "stereo", + "name": "Output", + "shortName": "Output" + } + ], + "parameters": [ + { + "name": "Balance", + "shortName": "Balance", + "direction": "input", + "defaultValue": 0.0, + "minimum": -100.0, + "maximum": 100.0, + "unit": "pc", + "map": "linear" + }, + { + "name": "Left level", + "shortName": "L level", + "direction": "output", + "defaultValue": -60.0, + "minimum": -60.0, + "maximum": 0.0, + "unit": "db", + "map": "linear" + }, + { + "name": "Right level", + "shortName": "R level", + "direction": "output", + "defaultValue": -60.0, + "minimum": -60.0, + "maximum": 0.0, + "unit": "db", + "map": "linear" + } + ] + } +} diff --git a/examples/fx_balance/src/vst3.json b/examples/fx_balance/src/vst3.json new file mode 100644 index 0000000..13e0eed --- /dev/null +++ b/examples/fx_balance/src/vst3.json @@ -0,0 +1,11 @@ +{ + "vst3": { + "plugin": { + "cid": "ffe1e17f3c4b492c8d882912f93c1e95" + }, + "controller": { + "cid": "68133a09d70b4a4681f2808f9790b266" + }, + "subCategory": "Fx|Spatial" + } +} diff --git a/examples/fx_balance/vst3/Makefile b/examples/fx_balance/vst3/Makefile deleted file mode 100644 index 23d875d..0000000 --- a/examples/fx_balance/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fx_balance -SOURCE := bw_example_fx_balance.c - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fx_balance/vst3/config_vst3.h b/examples/fx_balance/vst3/config_vst3.h deleted file mode 100644 index 62a409d..0000000 --- a/examples/fx_balance/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Spatial" - -#define PLUGIN_GUID_1 0xffe1e17f -#define PLUGIN_GUID_2 0x3c4b492c -#define PLUGIN_GUID_3 0x8d882912 -#define PLUGIN_GUID_4 0xf93c1e95 - -#define CTRL_GUID_1 0x68133a09 -#define CTRL_GUID_2 0xd70b4a46 -#define CTRL_GUID_3 0x81f2808f -#define CTRL_GUID_4 0x9790b266 - -#endif diff --git a/examples/fx_balance/web/Makefile b/examples/fx_balance/web/Makefile deleted file mode 100644 index e0ec7fc..0000000 --- a/examples/fx_balance/web/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fx_balance.c - -include ${ROOT_DIR}/../../common/web/web.mk diff --git a/examples/fxpp_ap1/android/Makefile b/examples/fxpp_ap1/android/Makefile deleted file mode 100644 index 85cae82..0000000 --- a/examples/fxpp_ap1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_ap1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_ap1/daisy-seed/Makefile b/examples/fxpp_ap1/daisy-seed/Makefile deleted file mode 100644 index 3158999..0000000 --- a/examples/fxpp_ap1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_ap1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_ap1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_ap1/daisy-seed/config_daisy_seed.h b/examples/fxpp_ap1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_ap1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_ap1/ios/Makefile b/examples/fxpp_ap1/ios/Makefile deleted file mode 100644 index b5c951e..0000000 --- a/examples/fxpp_ap1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ap1/src/bw_example_fxpp_ap1.cpp b/examples/fxpp_ap1/src/bw_example_fxpp_ap1.cpp deleted file mode 100644 index bc7861a..0000000 --- a/examples/fxpp_ap1/src/bw_example_fxpp_ap1.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_ap1.h" - -void bw_example_fxpp_ap1_init(bw_example_fxpp_ap1 *instance) { - (void)instance; -} - -void bw_example_fxpp_ap1_set_sample_rate(bw_example_fxpp_ap1 *instance, float sample_rate) { - instance->ap1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_ap1_reset(bw_example_fxpp_ap1 *instance) { - instance->ap1.reset(); -} - -void bw_example_fxpp_ap1_process(bw_example_fxpp_ap1 *instance, const float** x, float** y, int n_samples) { - instance->ap1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_ap1_set_parameter(bw_example_fxpp_ap1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->ap1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - } -} - -float bw_example_fxpp_ap1_get_parameter(bw_example_fxpp_ap1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_ap1/src/bw_example_fxpp_ap1.h b/examples/fxpp_ap1/src/bw_example_fxpp_ap1.h deleted file mode 100644 index ca05fd1..0000000 --- a/examples/fxpp_ap1/src/bw_example_fxpp_ap1.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_AP1_H -#define _BW_EXAMPLE_FXPP_AP1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_n -}; - -struct _bw_example_fxpp_ap1 { - // Sub-components - AP1<1> ap1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_ap1 bw_example_fxpp_ap1; - -void bw_example_fxpp_ap1_init(bw_example_fxpp_ap1 *instance); -void bw_example_fxpp_ap1_set_sample_rate(bw_example_fxpp_ap1 *instance, float sample_rate); -void bw_example_fxpp_ap1_reset(bw_example_fxpp_ap1 *instance); -void bw_example_fxpp_ap1_process(bw_example_fxpp_ap1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_ap1_set_parameter(bw_example_fxpp_ap1 *instance, int index, float value); -float bw_example_fxpp_ap1_get_parameter(bw_example_fxpp_ap1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_ap1/src/config.h b/examples/fxpp_ap1/src/config.h deleted file mode 100644 index 04f6ea7..0000000 --- a/examples/fxpp_ap1/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_ap1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_ap1.h" - -#define P_TYPE bw_example_fxpp_ap1 -#define P_INIT bw_example_fxpp_ap1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_ap1_set_sample_rate -#define P_RESET bw_example_fxpp_ap1_reset -#define P_PROCESS bw_example_fxpp_ap1_process -#define P_SET_PARAMETER bw_example_fxpp_ap1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_ap1_get_parameter - -#endif diff --git a/examples/fxpp_ap1/src/config.js b/examples/fxpp_ap1/src/config.js deleted file mode 100644 index 7062107..0000000 --- a/examples/fxpp_ap1/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_ap1/vst3/Makefile b/examples/fxpp_ap1/vst3/Makefile deleted file mode 100644 index 5c17c70..0000000 --- a/examples/fxpp_ap1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap1 -SOURCE := bw_example_fxpp_ap1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_ap1/vst3/config_vst3.h b/examples/fxpp_ap1/vst3/config_vst3.h deleted file mode 100644 index 5f6435a..0000000 --- a/examples/fxpp_ap1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x67f9cd8d -#define PLUGIN_GUID_2 0x2865469b -#define PLUGIN_GUID_3 0xbcea5838 -#define PLUGIN_GUID_4 0xfa1e0944 - -#define CTRL_GUID_1 0x3b74ce84 -#define CTRL_GUID_2 0x5132450c -#define CTRL_GUID_3 0xb9aa48ef -#define CTRL_GUID_4 0xe2d68cd3 - -#endif diff --git a/examples/fxpp_ap2/android/Makefile b/examples/fxpp_ap2/android/Makefile deleted file mode 100644 index a8994a0..0000000 --- a/examples/fxpp_ap2/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap2 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_ap2.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_ap2/daisy-seed/Makefile b/examples/fxpp_ap2/daisy-seed/Makefile deleted file mode 100644 index 915b0e0..0000000 --- a/examples/fxpp_ap2/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_ap2 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_ap2.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_ap2/daisy-seed/config_daisy_seed.h b/examples/fxpp_ap2/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_ap2/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_ap2/ios/Makefile b/examples/fxpp_ap2/ios/Makefile deleted file mode 100644 index 83db85e..0000000 --- a/examples/fxpp_ap2/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap2 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ap2/src/bw_example_fxpp_ap2.cpp b/examples/fxpp_ap2/src/bw_example_fxpp_ap2.cpp deleted file mode 100644 index 3f1fb86..0000000 --- a/examples/fxpp_ap2/src/bw_example_fxpp_ap2.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_ap2.h" - -void bw_example_fxpp_ap2_init(bw_example_fxpp_ap2 *instance) { - (void)instance; -} - -void bw_example_fxpp_ap2_set_sample_rate(bw_example_fxpp_ap2 *instance, float sample_rate) { - instance->ap2.setSampleRate(sample_rate); -} - -void bw_example_fxpp_ap2_reset(bw_example_fxpp_ap2 *instance) { - instance->ap2.reset(); -} - -void bw_example_fxpp_ap2_process(bw_example_fxpp_ap2 *instance, const float** x, float** y, int n_samples) { - instance->ap2.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_ap2_set_parameter(bw_example_fxpp_ap2 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->ap2.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_Q: - instance->ap2.setQ(0.5f + 9.5f * value); - break; - } -} - -float bw_example_fxpp_ap2_get_parameter(bw_example_fxpp_ap2 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_ap2/src/bw_example_fxpp_ap2.h b/examples/fxpp_ap2/src/bw_example_fxpp_ap2.h deleted file mode 100644 index d2aa894..0000000 --- a/examples/fxpp_ap2/src/bw_example_fxpp_ap2.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_AP2_H -#define _BW_EXAMPLE_FXPP_AP2_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_Q, - p_n -}; - -struct _bw_example_fxpp_ap2 { - // Sub-components - AP2<1> ap2; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_ap2 bw_example_fxpp_ap2; - -void bw_example_fxpp_ap2_init(bw_example_fxpp_ap2 *instance); -void bw_example_fxpp_ap2_set_sample_rate(bw_example_fxpp_ap2 *instance, float sample_rate); -void bw_example_fxpp_ap2_reset(bw_example_fxpp_ap2 *instance); -void bw_example_fxpp_ap2_process(bw_example_fxpp_ap2 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_ap2_set_parameter(bw_example_fxpp_ap2 *instance, int index, float value); -float bw_example_fxpp_ap2_get_parameter(bw_example_fxpp_ap2 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_ap2/src/config.h b/examples/fxpp_ap2/src/config.h deleted file mode 100644 index 82d4f55..0000000 --- a/examples/fxpp_ap2/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_ap2" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Q", "Q", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_ap2.h" - -#define P_TYPE bw_example_fxpp_ap2 -#define P_INIT bw_example_fxpp_ap2_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_ap2_set_sample_rate -#define P_RESET bw_example_fxpp_ap2_reset -#define P_PROCESS bw_example_fxpp_ap2_process -#define P_SET_PARAMETER bw_example_fxpp_ap2_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_ap2_get_parameter - -#endif diff --git a/examples/fxpp_ap2/src/config.js b/examples/fxpp_ap2/src/config.js deleted file mode 100644 index fef667c..0000000 --- a/examples/fxpp_ap2/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Q", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_ap2/vst3/Makefile b/examples/fxpp_ap2/vst3/Makefile deleted file mode 100644 index dbdde7c..0000000 --- a/examples/fxpp_ap2/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ap2 -SOURCE := bw_example_fxpp_ap2.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_ap2/vst3/config_vst3.h b/examples/fxpp_ap2/vst3/config_vst3.h deleted file mode 100644 index c22d957..0000000 --- a/examples/fxpp_ap2/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x32fc0150 -#define PLUGIN_GUID_2 0xb5e44732 -#define PLUGIN_GUID_3 0x86c506af -#define PLUGIN_GUID_4 0x49a9e7ec - -#define CTRL_GUID_1 0x62821948 -#define CTRL_GUID_2 0x5d3748e2 -#define CTRL_GUID_3 0x865579ed -#define CTRL_GUID_4 0xe52e66bb - -#endif diff --git a/examples/fxpp_balance/android/Makefile b/examples/fxpp_balance/android/Makefile deleted file mode 100644 index 65aaa3f..0000000 --- a/examples/fxpp_balance/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_balance -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_balance.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_balance/daisy-seed/Makefile b/examples/fxpp_balance/daisy-seed/Makefile deleted file mode 100644 index 68db6ac..0000000 --- a/examples/fxpp_balance/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_balance - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_balance.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_balance/daisy-seed/config_daisy_seed.h b/examples/fxpp_balance/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_balance/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_balance/ios/Makefile b/examples/fxpp_balance/ios/Makefile deleted file mode 100644 index d684703..0000000 --- a/examples/fxpp_balance/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_balance -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_balance/src/bw_example_fxpp_balance.cpp b/examples/fxpp_balance/src/bw_example_fxpp_balance.cpp deleted file mode 100644 index 6923ee0..0000000 --- a/examples/fxpp_balance/src/bw_example_fxpp_balance.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_balance.h" - -void bw_example_fxpp_balance_init(bw_example_fxpp_balance *instance) { - (void)instance; -} - -void bw_example_fxpp_balance_set_sample_rate(bw_example_fxpp_balance *instance, float sample_rate) { - instance->balance.setSampleRate(sample_rate); - instance->ppm.setSampleRate(sample_rate); -} - -void bw_example_fxpp_balance_reset(bw_example_fxpp_balance *instance) { - instance->balance.reset(); - instance->ppm.reset(); -} - -void bw_example_fxpp_balance_process(bw_example_fxpp_balance *instance, const float** x, float** y, int n_samples) { - instance->balance.process({x[0]}, {x[1]}, {y[0]}, {y[1]}, n_samples); - instance->ppm.process({y[0], y[1]}, {nullptr, nullptr}, n_samples); -} - -void bw_example_fxpp_balance_set_parameter(bw_example_fxpp_balance *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_balance: - instance->balance.setBalance(value + value - 1.f); - break; - } -} - -float bw_example_fxpp_balance_get_parameter(bw_example_fxpp_balance *instance, int index) { - float r = 0.f; - switch (index) { - case p_balance: - r = instance->params[p_balance]; - break; - case p_balance + 1: - { - const float v = instance->ppm.getYZ1(0); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - case p_balance + 2: - { - const float v = instance->ppm.getYZ1(1); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - } - return r; -} diff --git a/examples/fxpp_balance/src/bw_example_fxpp_balance.h b/examples/fxpp_balance/src/bw_example_fxpp_balance.h deleted file mode 100644 index d12b881..0000000 --- a/examples/fxpp_balance/src/bw_example_fxpp_balance.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_BALANCE_H -#define _BW_EXAMPLE_FXPP_BALANCE_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_balance, - p_n -}; - -struct _bw_example_fxpp_balance { - // Sub-components - Balance<1> balance; - PPM<2> ppm; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_balance bw_example_fxpp_balance; - -void bw_example_fxpp_balance_init(bw_example_fxpp_balance *instance); -void bw_example_fxpp_balance_set_sample_rate(bw_example_fxpp_balance *instance, float sample_rate); -void bw_example_fxpp_balance_reset(bw_example_fxpp_balance *instance); -void bw_example_fxpp_balance_process(bw_example_fxpp_balance *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_balance_set_parameter(bw_example_fxpp_balance *instance, int index, float value); -float bw_example_fxpp_balance_get_parameter(bw_example_fxpp_balance *instance, int index); - -} - -#endif diff --git a/examples/fxpp_balance/src/config.h b/examples/fxpp_balance/src/config.h deleted file mode 100644 index 817cee5..0000000 --- a/examples/fxpp_balance/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_balance" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 2 -#define NUM_CHANNELS_OUT 2 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_STEREO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_STEREO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Balance", "Balance", "", 0, 0, 0, 0.5f }, - { "Left level", "L Level", "", 1, 0, 0, 0.f }, - { "Right level", "R Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_balance.h" - -#define P_TYPE bw_example_fxpp_balance -#define P_INIT bw_example_fxpp_balance_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_balance_set_sample_rate -#define P_RESET bw_example_fxpp_balance_reset -#define P_PROCESS bw_example_fxpp_balance_process -#define P_SET_PARAMETER bw_example_fxpp_balance_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_balance_get_parameter - -#endif diff --git a/examples/fxpp_balance/src/config.js b/examples/fxpp_balance/src/config.js deleted file mode 100644 index 9c8f5fa..0000000 --- a/examples/fxpp_balance/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: true, - output: false - }, - { - stereo: true, - output: true - } -]; - -var parameters = [ - { - name: "Balance", - output: false, - defaultValue: 0.5 - }, - { - name: "Left level", - output: true, - defaultValue: 0.0 - }, - { - name: "Right level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_balance/vst3/Makefile b/examples/fxpp_balance/vst3/Makefile deleted file mode 100644 index aef6dd7..0000000 --- a/examples/fxpp_balance/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_balance -SOURCE := bw_example_fxpp_balance.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_balance/vst3/config_vst3.h b/examples/fxpp_balance/vst3/config_vst3.h deleted file mode 100644 index 20a2fbb..0000000 --- a/examples/fxpp_balance/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Spatial" - -#define PLUGIN_GUID_1 0x2c5793c7 -#define PLUGIN_GUID_2 0xeae0488e -#define PLUGIN_GUID_3 0x8c7820af -#define PLUGIN_GUID_4 0xbcd6ee17 - -#define CTRL_GUID_1 0xc67e0faf -#define CTRL_GUID_2 0x04f54fdf -#define CTRL_GUID_3 0x8019eb05 -#define CTRL_GUID_4 0x5f44b1b0 - -#endif diff --git a/examples/fxpp_bitcrush/android/Makefile b/examples/fxpp_bitcrush/android/Makefile deleted file mode 100644 index b1c4263..0000000 --- a/examples/fxpp_bitcrush/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_bitcrush -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_bitcrush.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_bitcrush/daisy-seed/Makefile b/examples/fxpp_bitcrush/daisy-seed/Makefile deleted file mode 100644 index e4707a0..0000000 --- a/examples/fxpp_bitcrush/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_bitcrush - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_bitcrush.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_bitcrush/daisy-seed/config_daisy_seed.h b/examples/fxpp_bitcrush/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_bitcrush/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_bitcrush/ios/Makefile b/examples/fxpp_bitcrush/ios/Makefile deleted file mode 100644 index 490946b..0000000 --- a/examples/fxpp_bitcrush/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_bitcrush -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.cpp b/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.cpp deleted file mode 100644 index be59725..0000000 --- a/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_bitcrush.h" - -void bw_example_fxpp_bitcrush_init(bw_example_fxpp_bitcrush *instance) { - (void)instance; -} - -void bw_example_fxpp_bitcrush_set_sample_rate(bw_example_fxpp_bitcrush *instance, float sample_rate) { - instance->srReduce.setSampleRate(sample_rate); - instance->bdReduce.setSampleRate(sample_rate); -} - -void bw_example_fxpp_bitcrush_reset(bw_example_fxpp_bitcrush *instance) { - instance->srReduce.reset(); - instance->bdReduce.reset(); -} - -void bw_example_fxpp_bitcrush_process(bw_example_fxpp_bitcrush *instance, const float** x, float** y, int n_samples) { - instance->srReduce.process({x[0]}, {y[0]}, n_samples); - instance->bdReduce.process({y[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_bitcrush_set_parameter(bw_example_fxpp_bitcrush *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_sr_ratio: - instance->srReduce.setRatio(value); - break; - case p_bit_depth: - instance->bdReduce.setBitDepth(1 + (int)(15.f * value)); - break; - } -} - -float bw_example_fxpp_bitcrush_get_parameter(bw_example_fxpp_bitcrush *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.h b/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.h deleted file mode 100644 index d004279..0000000 --- a/examples/fxpp_bitcrush/src/bw_example_fxpp_bitcrush.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_BITCRUSH_H -#define _BW_EXAMPLE_FXPP_BITCRUSH_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_sr_ratio, - p_bit_depth, - p_n -}; - -struct _bw_example_fxpp_bitcrush { - // Sub-components - SRReduce<1> srReduce; - BDReduce<1> bdReduce; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_bitcrush bw_example_fxpp_bitcrush; - -void bw_example_fxpp_bitcrush_init(bw_example_fxpp_bitcrush *instance); -void bw_example_fxpp_bitcrush_set_sample_rate(bw_example_fxpp_bitcrush *instance, float sample_rate); -void bw_example_fxpp_bitcrush_reset(bw_example_fxpp_bitcrush *instance); -void bw_example_fxpp_bitcrush_process(bw_example_fxpp_bitcrush *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_bitcrush_set_parameter(bw_example_fxpp_bitcrush *instance, int index, float value); -float bw_example_fxpp_bitcrush_get_parameter(bw_example_fxpp_bitcrush *instance, int index); - -} - -#endif diff --git a/examples/fxpp_bitcrush/src/config.h b/examples/fxpp_bitcrush/src/config.h deleted file mode 100644 index d8a5ab7..0000000 --- a/examples/fxpp_bitcrush/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_bitcrush" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Sample rate ratio", "SR ratio", "", 0, 0, 0, 1.f }, - { "Bit depth", "Bit depth", "", 0, 0, 14, 1.f } -}; - -// Internal API - -#include "bw_example_fxpp_bitcrush.h" - -#define P_TYPE bw_example_fxpp_bitcrush -#define P_INIT bw_example_fxpp_bitcrush_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_bitcrush_set_sample_rate -#define P_RESET bw_example_fxpp_bitcrush_reset -#define P_PROCESS bw_example_fxpp_bitcrush_process -#define P_SET_PARAMETER bw_example_fxpp_bitcrush_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_bitcrush_get_parameter - -#endif diff --git a/examples/fxpp_bitcrush/src/config.js b/examples/fxpp_bitcrush/src/config.js deleted file mode 100644 index f434b87..0000000 --- a/examples/fxpp_bitcrush/src/config.js +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Sample rate ratio", - output: false, - defaultValue: 1.0 - }, - { - name: "Bit depth", - output: false, - defaultValue: 1.0, - step: 14 - } -]; diff --git a/examples/fxpp_bitcrush/vst3/Makefile b/examples/fxpp_bitcrush/vst3/Makefile deleted file mode 100644 index e5331c3..0000000 --- a/examples/fxpp_bitcrush/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_bitcrush -SOURCE := bw_example_fxpp_bitcrush.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_bitcrush/vst3/config_vst3.h b/examples/fxpp_bitcrush/vst3/config_vst3.h deleted file mode 100644 index ef8b5c8..0000000 --- a/examples/fxpp_bitcrush/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx" - -#define PLUGIN_GUID_1 0x4ccc317b -#define PLUGIN_GUID_2 0xcbfd4dc0 -#define PLUGIN_GUID_3 0xb2c0e24d -#define PLUGIN_GUID_4 0x00ef876d - -#define CTRL_GUID_1 0xf4fa2b0d -#define CTRL_GUID_2 0x358f4709 -#define CTRL_GUID_3 0x855f940f -#define CTRL_GUID_4 0x76cec704 - -#endif diff --git a/examples/fxpp_cab/android/Makefile b/examples/fxpp_cab/android/Makefile deleted file mode 100644 index ee19bc1..0000000 --- a/examples/fxpp_cab/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_cab -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_cab.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_cab/daisy-seed/Makefile b/examples/fxpp_cab/daisy-seed/Makefile deleted file mode 100644 index 7bf1ff0..0000000 --- a/examples/fxpp_cab/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_cab - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_cab.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_cab/daisy-seed/config_daisy_seed.h b/examples/fxpp_cab/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 8aa4923..0000000 --- a/examples/fxpp_cab/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 3 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 } -}; - -#endif diff --git a/examples/fxpp_cab/ios/Makefile b/examples/fxpp_cab/ios/Makefile deleted file mode 100644 index e3d5314..0000000 --- a/examples/fxpp_cab/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_cab -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_cab/src/bw_example_fxpp_cab.cpp b/examples/fxpp_cab/src/bw_example_fxpp_cab.cpp deleted file mode 100644 index b263926..0000000 --- a/examples/fxpp_cab/src/bw_example_fxpp_cab.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_cab.h" - -void bw_example_fxpp_cab_init(bw_example_fxpp_cab *instance) { - (void)instance; -} - -void bw_example_fxpp_cab_set_sample_rate(bw_example_fxpp_cab *instance, float sample_rate) { - instance->cab.setSampleRate(sample_rate); -} - -void bw_example_fxpp_cab_reset(bw_example_fxpp_cab *instance) { - instance->cab.reset(); -} - -void bw_example_fxpp_cab_process(bw_example_fxpp_cab *instance, const float** x, float** y, int n_samples) { - instance->cab.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_cab_set_parameter(bw_example_fxpp_cab *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff_low: - instance->cab.setCutoffLow(value); - break; - case p_cutoff_high: - instance->cab.setCutoffHigh(value); - break; - case p_tone: - instance->cab.setTone(value); - break; - } -} - -float bw_example_fxpp_cab_get_parameter(bw_example_fxpp_cab *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_cab/src/bw_example_fxpp_cab.h b/examples/fxpp_cab/src/bw_example_fxpp_cab.h deleted file mode 100644 index f3c7f43..0000000 --- a/examples/fxpp_cab/src/bw_example_fxpp_cab.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_CAB_H -#define _BW_EXAMPLE_FXPP_CAB_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff_low, - p_cutoff_high, - p_tone, - p_n -}; - -struct _bw_example_fxpp_cab { - // Sub-components - Cab<1> cab; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_cab bw_example_fxpp_cab; - -void bw_example_fxpp_cab_init(bw_example_fxpp_cab *instance); -void bw_example_fxpp_cab_set_sample_rate(bw_example_fxpp_cab *instance, float sample_rate); -void bw_example_fxpp_cab_reset(bw_example_fxpp_cab *instance); -void bw_example_fxpp_cab_process(bw_example_fxpp_cab *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_cab_set_parameter(bw_example_fxpp_cab *instance, int index, float value); -float bw_example_fxpp_cab_get_parameter(bw_example_fxpp_cab *instance, int index); - -} - -#endif diff --git a/examples/fxpp_cab/src/config.h b/examples/fxpp_cab/src/config.h deleted file mode 100644 index bfcade1..0000000 --- a/examples/fxpp_cab/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_cab" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff low", "Low", "", 0, 0, 0, 0.5f }, - { "Cutoff high", "High", "", 0, 0, 0, 0.5f }, - { "Tone", "Tone", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_cab.h" - -#define P_TYPE bw_example_fxpp_cab -#define P_INIT bw_example_fxpp_cab_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_cab_set_sample_rate -#define P_RESET bw_example_fxpp_cab_reset -#define P_PROCESS bw_example_fxpp_cab_process -#define P_SET_PARAMETER bw_example_fxpp_cab_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_cab_get_parameter - -#endif diff --git a/examples/fxpp_cab/src/config.js b/examples/fxpp_cab/src/config.js deleted file mode 100644 index 7b3ec0e..0000000 --- a/examples/fxpp_cab/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff low", - output: false, - defaultValue: 0.5 - }, - { - name: "Cutoff high", - output: false, - defaultValue: 0.5 - }, - { - name: "Tone", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_cab/vst3/Makefile b/examples/fxpp_cab/vst3/Makefile deleted file mode 100644 index 99a0f61..0000000 --- a/examples/fxpp_cab/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_cab -SOURCE := bw_example_fxpp_cab.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_cab/vst3/config_vst3.h b/examples/fxpp_cab/vst3/config_vst3.h deleted file mode 100644 index 17d03f4..0000000 --- a/examples/fxpp_cab/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x5a6af39b -#define PLUGIN_GUID_2 0x3d3d4d8d -#define PLUGIN_GUID_3 0xb770d068 -#define PLUGIN_GUID_4 0x970eb848 - -#define CTRL_GUID_1 0x29ea612e -#define CTRL_GUID_2 0x754d401b -#define CTRL_GUID_3 0xa6164ba3 -#define CTRL_GUID_4 0x931dc498 - -#endif diff --git a/examples/fxpp_chorus/android/Makefile b/examples/fxpp_chorus/android/Makefile deleted file mode 100644 index 821e1b4..0000000 --- a/examples/fxpp_chorus/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_chorus -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_chorus.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_chorus/daisy-seed/Makefile b/examples/fxpp_chorus/daisy-seed/Makefile deleted file mode 100644 index 51ce0a5..0000000 --- a/examples/fxpp_chorus/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_chorus - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_chorus.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_chorus/daisy-seed/config_daisy_seed.h b/examples/fxpp_chorus/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_chorus/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_chorus/ios/Makefile b/examples/fxpp_chorus/ios/Makefile deleted file mode 100644 index 0cebb28..0000000 --- a/examples/fxpp_chorus/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_chorus -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_chorus/src/bw_example_fxpp_chorus.cpp b/examples/fxpp_chorus/src/bw_example_fxpp_chorus.cpp deleted file mode 100644 index 3102bd1..0000000 --- a/examples/fxpp_chorus/src/bw_example_fxpp_chorus.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_chorus.h" - -void bw_example_fxpp_chorus_init(bw_example_fxpp_chorus *instance) { - instance->chorus.setDelay(0.005f); - instance->chorus.setCoeffX(0.7071f); - instance->chorus.setCoeffMod(1.f); - instance->chorus.setCoeffFB(-0.7071f); -} - -void bw_example_fxpp_chorus_set_sample_rate(bw_example_fxpp_chorus *instance, float sample_rate) { - instance->chorus.setSampleRate(sample_rate); -} - -void bw_example_fxpp_chorus_reset(bw_example_fxpp_chorus *instance) { - instance->chorus.reset(); -} - -void bw_example_fxpp_chorus_process(bw_example_fxpp_chorus *instance, const float** x, float** y, int n_samples) { - instance->chorus.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_chorus_set_parameter(bw_example_fxpp_chorus *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_rate: - instance->chorus.setRate(0.01f + 1.99f * value * value * value); - break; - case p_depth: - instance->chorus.setAmount(0.004f * value); - break; - } -} - -float bw_example_fxpp_chorus_get_parameter(bw_example_fxpp_chorus *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_chorus/src/bw_example_fxpp_chorus.h b/examples/fxpp_chorus/src/bw_example_fxpp_chorus.h deleted file mode 100644 index c65f9fa..0000000 --- a/examples/fxpp_chorus/src/bw_example_fxpp_chorus.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_CHORUS_H -#define _BW_EXAMPLE_FXPP_CHORUS_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_rate, - p_depth, - p_n -}; - -struct _bw_example_fxpp_chorus { - // Sub-components - Chorus<1> chorus; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_chorus bw_example_fxpp_chorus; - -void bw_example_fxpp_chorus_init(bw_example_fxpp_chorus *instance); -void bw_example_fxpp_chorus_set_sample_rate(bw_example_fxpp_chorus *instance, float sample_rate); -void bw_example_fxpp_chorus_reset(bw_example_fxpp_chorus *instance); -void bw_example_fxpp_chorus_process(bw_example_fxpp_chorus *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_chorus_set_parameter(bw_example_fxpp_chorus *instance, int index, float value); -float bw_example_fxpp_chorus_get_parameter(bw_example_fxpp_chorus *instance, int index); - -} - -#endif diff --git a/examples/fxpp_chorus/src/config.h b/examples/fxpp_chorus/src/config.h deleted file mode 100644 index 5fc26ef..0000000 --- a/examples/fxpp_chorus/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_chorus" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Rate", "Rate", "", 0, 0, 0, 0.5f }, - { "Depth", "Depth", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_chorus.h" - -#define P_TYPE bw_example_fxpp_chorus -#define P_INIT bw_example_fxpp_chorus_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_chorus_set_sample_rate -#define P_RESET bw_example_fxpp_chorus_reset -#define P_PROCESS bw_example_fxpp_chorus_process -#define P_SET_PARAMETER bw_example_fxpp_chorus_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_chorus_get_parameter - -#endif diff --git a/examples/fxpp_chorus/src/config.js b/examples/fxpp_chorus/src/config.js deleted file mode 100644 index f704641..0000000 --- a/examples/fxpp_chorus/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Amount", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_chorus/vst3/Makefile b/examples/fxpp_chorus/vst3/Makefile deleted file mode 100644 index c645d1b..0000000 --- a/examples/fxpp_chorus/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_chorus -SOURCE := bw_example_fxpp_chorus.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_chorus/vst3/config_vst3.h b/examples/fxpp_chorus/vst3/config_vst3.h deleted file mode 100644 index 4403af4..0000000 --- a/examples/fxpp_chorus/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Modulation" - -#define PLUGIN_GUID_1 0x2e8ed1ac -#define PLUGIN_GUID_2 0xdf634f02 -#define PLUGIN_GUID_3 0xb5cf4556 -#define PLUGIN_GUID_4 0x8f64bd42 - -#define CTRL_GUID_1 0x7022c6fd -#define CTRL_GUID_2 0xb38b49d2 -#define CTRL_GUID_3 0x8df5303a -#define CTRL_GUID_4 0x2c632f6a - -#endif diff --git a/examples/fxpp_clip/android/Makefile b/examples/fxpp_clip/android/Makefile deleted file mode 100644 index ca3dc03..0000000 --- a/examples/fxpp_clip/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_clip -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_clip.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_clip/daisy-seed/Makefile b/examples/fxpp_clip/daisy-seed/Makefile deleted file mode 100644 index 4507219..0000000 --- a/examples/fxpp_clip/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_clip - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_clip.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_clip/daisy-seed/config_daisy_seed.h b/examples/fxpp_clip/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_clip/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_clip/ios/Makefile b/examples/fxpp_clip/ios/Makefile deleted file mode 100644 index a8b29ff..0000000 --- a/examples/fxpp_clip/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_clip -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_clip/src/bw_example_fxpp_clip.cpp b/examples/fxpp_clip/src/bw_example_fxpp_clip.cpp deleted file mode 100644 index be74e09..0000000 --- a/examples/fxpp_clip/src/bw_example_fxpp_clip.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_clip.h" - -void bw_example_fxpp_clip_init(bw_example_fxpp_clip *instance) { - instance->clip.setGainCompensation(true); -} - -void bw_example_fxpp_clip_set_sample_rate(bw_example_fxpp_clip *instance, float sample_rate) { - instance->clip.setSampleRate(2.f * sample_rate); -} - -void bw_example_fxpp_clip_reset(bw_example_fxpp_clip *instance) { - instance->clip.reset(); - instance->srcUp.reset(); - instance->srcDown.reset(); -} - -void bw_example_fxpp_clip_process(bw_example_fxpp_clip *instance, const float** x, float** y, int n_samples) { - int i = 0; - while (i < n_samples) { - int n = bw_mini32(n_samples - i, BUF_SIZE >> 1); - instance->srcUp.process({x[0] + i}, {instance->buf}, n); - instance->clip.process({instance->buf}, {instance->buf}, n << 1); - instance->srcDown.process({instance->buf}, {y[0] + i}, n << 1); - i += n; - } -} - -void bw_example_fxpp_clip_set_parameter(bw_example_fxpp_clip *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_bias: - instance->clip.setBias(5.f * value - 2.5f); - break; - case p_gain: - instance->clip.setGain(0.1f + (10.f - 0.1f) * value * value * value); - break; - } -} - -float bw_example_fxpp_clip_get_parameter(bw_example_fxpp_clip *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_clip/src/bw_example_fxpp_clip.h b/examples/fxpp_clip/src/bw_example_fxpp_clip.h deleted file mode 100644 index 7005f4b..0000000 --- a/examples/fxpp_clip/src/bw_example_fxpp_clip.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_CLIP_H -#define _BW_EXAMPLE_FXPP_CLIP_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_bias, - p_gain, - p_n -}; - -#define BUF_SIZE 32 - -struct _bw_example_fxpp_clip { - // Sub-components - Clip<1> clip; - SRCInt<1> srcUp; - SRCInt<1> srcDown; - - // Parameters - float params[p_n]; - - // Buffers - float buf[BUF_SIZE]; - - _bw_example_fxpp_clip() : srcUp(2), srcDown(-2) {} -}; -typedef struct _bw_example_fxpp_clip bw_example_fxpp_clip; - -void bw_example_fxpp_clip_init(bw_example_fxpp_clip *instance); -void bw_example_fxpp_clip_set_sample_rate(bw_example_fxpp_clip *instance, float sample_rate); -void bw_example_fxpp_clip_reset(bw_example_fxpp_clip *instance); -void bw_example_fxpp_clip_process(bw_example_fxpp_clip *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_clip_set_parameter(bw_example_fxpp_clip *instance, int index, float value); -float bw_example_fxpp_clip_get_parameter(bw_example_fxpp_clip *instance, int index); - -} - -#endif diff --git a/examples/fxpp_clip/src/config.h b/examples/fxpp_clip/src/config.h deleted file mode 100644 index 901ce14..0000000 --- a/examples/fxpp_clip/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_clip" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Bias", "Bias", "", 0, 0, 0, 0.5f }, - { "Gain", "Gain", "", 0, 0, 0, 0.4641588833612779f } -}; - -// Internal API - -#include "bw_example_fxpp_clip.h" - -#define P_TYPE bw_example_fxpp_clip -#define P_INIT bw_example_fxpp_clip_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_clip_set_sample_rate -#define P_RESET bw_example_fxpp_clip_reset -#define P_PROCESS bw_example_fxpp_clip_process -#define P_SET_PARAMETER bw_example_fxpp_clip_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_clip_get_parameter - -#endif diff --git a/examples/fxpp_clip/src/config.js b/examples/fxpp_clip/src/config.js deleted file mode 100644 index 599f955..0000000 --- a/examples/fxpp_clip/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Bias", - output: false, - defaultValue: 0.5 - }, - { - name: "Gain", - output: false, - defaultValue: 0.4641588833612779 - } -]; diff --git a/examples/fxpp_clip/vst3/Makefile b/examples/fxpp_clip/vst3/Makefile deleted file mode 100644 index e2831e2..0000000 --- a/examples/fxpp_clip/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_clip -SOURCE := bw_example_fxpp_clip.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_clip/vst3/config_vst3.h b/examples/fxpp_clip/vst3/config_vst3.h deleted file mode 100644 index 7aa89e9..0000000 --- a/examples/fxpp_clip/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Distortion" - -#define PLUGIN_GUID_1 0xa94e154c -#define PLUGIN_GUID_2 0xca1d4e29 -#define PLUGIN_GUID_3 0xa3bb40be -#define PLUGIN_GUID_4 0x0814b9ce - -#define CTRL_GUID_1 0x81fcfee9 -#define CTRL_GUID_2 0xb69e412d -#define CTRL_GUID_3 0x892acde6 -#define CTRL_GUID_4 0x5c46094c - -#endif diff --git a/examples/fxpp_comb/android/Makefile b/examples/fxpp_comb/android/Makefile deleted file mode 100644 index 492e00b..0000000 --- a/examples/fxpp_comb/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comb -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_comb.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_comb/daisy-seed/Makefile b/examples/fxpp_comb/daisy-seed/Makefile deleted file mode 100644 index b0a4f0b..0000000 --- a/examples/fxpp_comb/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_comb - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_comb.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_comb/daisy-seed/config_daisy_seed.h b/examples/fxpp_comb/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 73abded..0000000 --- a/examples/fxpp_comb/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 5 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 }, - { 4, 19 } -}; - -#endif diff --git a/examples/fxpp_comb/ios/Makefile b/examples/fxpp_comb/ios/Makefile deleted file mode 100644 index 39de890..0000000 --- a/examples/fxpp_comb/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comb -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_comb/src/bw_example_fxpp_comb.cpp b/examples/fxpp_comb/src/bw_example_fxpp_comb.cpp deleted file mode 100644 index 00694c8..0000000 --- a/examples/fxpp_comb/src/bw_example_fxpp_comb.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_comb.h" - -void bw_example_fxpp_comb_init(bw_example_fxpp_comb *instance) { - (void)instance; -} - -void bw_example_fxpp_comb_set_sample_rate(bw_example_fxpp_comb *instance, float sample_rate) { - instance->comb.setSampleRate(sample_rate); -} - -void bw_example_fxpp_comb_reset(bw_example_fxpp_comb *instance) { - instance->comb.reset(); -} - -void bw_example_fxpp_comb_process(bw_example_fxpp_comb *instance, const float** x, float** y, int n_samples) { - instance->comb.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_comb_set_parameter(bw_example_fxpp_comb *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_ff_delay: - instance->comb.setDelayFF(value); - break; - case p_fb_delay: - instance->comb.setDelayFB(value); - break; - case p_blend: - instance->comb.setCoeffBlend(value); - break; - case p_ff: - instance->comb.setCoeffFF(value + value - 1.f); - break; - case p_fb: - instance->comb.setCoeffFB(1.99f * value - 0.995f); - break; - } -} - -float bw_example_fxpp_comb_get_parameter(bw_example_fxpp_comb *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_comb/src/bw_example_fxpp_comb.h b/examples/fxpp_comb/src/bw_example_fxpp_comb.h deleted file mode 100644 index 386fbe7..0000000 --- a/examples/fxpp_comb/src/bw_example_fxpp_comb.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_COMB_H -#define _BW_EXAMPLE_FXPP_COMB_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_ff_delay, - p_fb_delay, - p_blend, - p_ff, - p_fb, - p_n -}; - -struct _bw_example_fxpp_comb { - // Sub-components - Comb<1> comb; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_comb bw_example_fxpp_comb; - -void bw_example_fxpp_comb_init(bw_example_fxpp_comb *instance); -void bw_example_fxpp_comb_set_sample_rate(bw_example_fxpp_comb *instance, float sample_rate); -void bw_example_fxpp_comb_reset(bw_example_fxpp_comb *instance); -void bw_example_fxpp_comb_process(bw_example_fxpp_comb *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_comb_set_parameter(bw_example_fxpp_comb *instance, int index, float value); -float bw_example_fxpp_comb_get_parameter(bw_example_fxpp_comb *instance, int index); - -} - -#endif diff --git a/examples/fxpp_comb/src/config.h b/examples/fxpp_comb/src/config.h deleted file mode 100644 index f90e32c..0000000 --- a/examples/fxpp_comb/src/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_comb" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 5 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Feedforward delay", "FF delay", "", 0, 0, 0, 0.f }, - { "Feedback delay", "FB delay", "", 0, 0, 0, 0.f }, - { "Blend", "Blend", "", 0, 0, 0, 1.f }, - { "Feedforward", "FF", "", 0, 0, 0, 0.5f }, - { "Feedback", "FB", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_comb.h" - -#define P_TYPE bw_example_fxpp_comb -#define P_INIT bw_example_fxpp_comb_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_comb_set_sample_rate -#define P_RESET bw_example_fxpp_comb_reset -#define P_PROCESS bw_example_fxpp_comb_process -#define P_SET_PARAMETER bw_example_fxpp_comb_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_comb_get_parameter - -#endif diff --git a/examples/fxpp_comb/src/config.js b/examples/fxpp_comb/src/config.js deleted file mode 100644 index 48b53a3..0000000 --- a/examples/fxpp_comb/src/config.js +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Feedforward delay", - output: false, - defaultValue: 0.0 - }, - { - name: "Feedback delay", - output: false, - defaultValue: 0.0 - }, - { - name: "Blend", - output: false, - defaultValue: 1.0 - }, - { - name: "Feedforward", - output: false, - defaultValue: 0.5 - }, - { - name: "Feedback", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_comb/vst3/Makefile b/examples/fxpp_comb/vst3/Makefile deleted file mode 100644 index f389815..0000000 --- a/examples/fxpp_comb/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comb -SOURCE := bw_example_fxpp_comb.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_comb/vst3/config_vst3.h b/examples/fxpp_comb/vst3/config_vst3.h deleted file mode 100644 index 819c291..0000000 --- a/examples/fxpp_comb/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Delay" - -#define PLUGIN_GUID_1 0x7b0953c9 -#define PLUGIN_GUID_2 0xba334cb1 -#define PLUGIN_GUID_3 0x963394cf -#define PLUGIN_GUID_4 0x700098b9 - -#define CTRL_GUID_1 0x089396db -#define CTRL_GUID_2 0x58854e74 -#define CTRL_GUID_3 0x8a70c9de -#define CTRL_GUID_4 0x97e810dd - -#endif diff --git a/examples/fxpp_comp/android/Makefile b/examples/fxpp_comp/android/Makefile deleted file mode 100644 index 51594bf..0000000 --- a/examples/fxpp_comp/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comp -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_comp.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_comp/daisy-seed/Makefile b/examples/fxpp_comp/daisy-seed/Makefile deleted file mode 100644 index 2df1fcd..0000000 --- a/examples/fxpp_comp/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_comp - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_comp.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_comp/daisy-seed/config_daisy_seed.h b/examples/fxpp_comp/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 73abded..0000000 --- a/examples/fxpp_comp/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 5 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 }, - { 4, 19 } -}; - -#endif diff --git a/examples/fxpp_comp/ios/Makefile b/examples/fxpp_comp/ios/Makefile deleted file mode 100644 index c2521d1..0000000 --- a/examples/fxpp_comp/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comp -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_comp/src/bw_example_fxpp_comp.cpp b/examples/fxpp_comp/src/bw_example_fxpp_comp.cpp deleted file mode 100644 index 2d5d6d5..0000000 --- a/examples/fxpp_comp/src/bw_example_fxpp_comp.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_comp.h" - -void bw_example_fxpp_comp_init(bw_example_fxpp_comp *instance) { - (void)instance; -} - -void bw_example_fxpp_comp_set_sample_rate(bw_example_fxpp_comp *instance, float sample_rate) { - instance->comp.setSampleRate(sample_rate); -} - -void bw_example_fxpp_comp_reset(bw_example_fxpp_comp *instance) { - instance->comp.reset(); -} - -void bw_example_fxpp_comp_process(bw_example_fxpp_comp *instance, const float** x, float** y, int n_samples) { - instance->comp.process({x[0]}, {x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_comp_set_parameter(bw_example_fxpp_comp *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_thresh: - instance->comp.setTreshDBFS(60.f * value - 60.f); - break; - case p_ratio: - instance->comp.setRatio(value); - break; - case p_attack: - instance->comp.setAttackTau(value); - break; - case p_release: - instance->comp.setReleaseTau(value); - break; - case p_gain: - instance->comp.setGainDB(60.f * value); - break; - } -} - -float bw_example_fxpp_comp_get_parameter(bw_example_fxpp_comp *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_comp/src/bw_example_fxpp_comp.h b/examples/fxpp_comp/src/bw_example_fxpp_comp.h deleted file mode 100644 index 8623912..0000000 --- a/examples/fxpp_comp/src/bw_example_fxpp_comp.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_COMP_H -#define _BW_EXAMPLE_FXPP_COMP_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_thresh, - p_ratio, - p_attack, - p_release, - p_gain, - p_n -}; - -struct _bw_example_fxpp_comp { - // Sub-components - Comp<1> comp; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_comp bw_example_fxpp_comp; - -void bw_example_fxpp_comp_init(bw_example_fxpp_comp *instance); -void bw_example_fxpp_comp_set_sample_rate(bw_example_fxpp_comp *instance, float sample_rate); -void bw_example_fxpp_comp_reset(bw_example_fxpp_comp *instance); -void bw_example_fxpp_comp_process(bw_example_fxpp_comp *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_comp_set_parameter(bw_example_fxpp_comp *instance, int index, float value); -float bw_example_fxpp_comp_get_parameter(bw_example_fxpp_comp *instance, int index); - -} - -#endif diff --git a/examples/fxpp_comp/src/config.h b/examples/fxpp_comp/src/config.h deleted file mode 100644 index 942d11c..0000000 --- a/examples/fxpp_comp/src/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_comp" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 5 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Threshold", "Thresh", "", 0, 0, 0, 1.f }, - { "Ratio", "Ratio", "", 0, 0, 0, 1.f }, - { "Attack", "Attack", "s", 0, 0, 0, 0.f }, - { "Release", "Release", "s", 0, 0, 0, 0.f }, - { "Makeup gain", "Gain", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_comp.h" - -#define P_TYPE bw_example_fxpp_comp -#define P_INIT bw_example_fxpp_comp_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_comp_set_sample_rate -#define P_RESET bw_example_fxpp_comp_reset -#define P_PROCESS bw_example_fxpp_comp_process -#define P_SET_PARAMETER bw_example_fxpp_comp_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_comp_get_parameter - -#endif diff --git a/examples/fxpp_comp/src/config.js b/examples/fxpp_comp/src/config.js deleted file mode 100644 index 832bbd0..0000000 --- a/examples/fxpp_comp/src/config.js +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Threshold", - output: false, - defaultValue: 1.0 - }, - { - name: "Ratio", - output: false, - defaultValue: 1.0 - }, - { - name: "Attack", - output: false, - defaultValue: 0.0 - }, - { - name: "Release", - output: false, - defaultValue: 0.0 - }, - { - name: "Makeup gain", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_comp/vst3/Makefile b/examples/fxpp_comp/vst3/Makefile deleted file mode 100644 index 730f54a..0000000 --- a/examples/fxpp_comp/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_comp -SOURCE := bw_example_fxpp_comp.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_comp/vst3/config_vst3.h b/examples/fxpp_comp/vst3/config_vst3.h deleted file mode 100644 index 369e42f..0000000 --- a/examples/fxpp_comp/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Dynamics" - -#define PLUGIN_GUID_1 0x395834d5 -#define PLUGIN_GUID_2 0xb4cb40b4 -#define PLUGIN_GUID_3 0xa26ad106 -#define PLUGIN_GUID_4 0xd342e89c - -#define CTRL_GUID_1 0x9fbc1f8f -#define CTRL_GUID_2 0xa974456b -#define CTRL_GUID_3 0xa43a4e14 -#define CTRL_GUID_4 0xe5b11e9b - -#endif diff --git a/examples/fxpp_delay/android/Makefile b/examples/fxpp_delay/android/Makefile deleted file mode 100644 index 586db99..0000000 --- a/examples/fxpp_delay/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_delay -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_delay.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_delay/daisy-seed/Makefile b/examples/fxpp_delay/daisy-seed/Makefile deleted file mode 100644 index 2b5d3fa..0000000 --- a/examples/fxpp_delay/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_delay - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_delay.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_delay/daisy-seed/config_daisy_seed.h b/examples/fxpp_delay/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_delay/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_delay/ios/Makefile b/examples/fxpp_delay/ios/Makefile deleted file mode 100644 index 124b6df..0000000 --- a/examples/fxpp_delay/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_delay -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_delay/src/bw_example_fxpp_delay.cpp b/examples/fxpp_delay/src/bw_example_fxpp_delay.cpp deleted file mode 100644 index 5bcd0d8..0000000 --- a/examples/fxpp_delay/src/bw_example_fxpp_delay.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_delay.h" - -void bw_example_fxpp_delay_init(bw_example_fxpp_delay *instance) { - (void)instance; -} - -void bw_example_fxpp_delay_set_sample_rate(bw_example_fxpp_delay *instance, float sample_rate) { - instance->delay.setSampleRate(sample_rate); -} - -void bw_example_fxpp_delay_reset(bw_example_fxpp_delay *instance) { - instance->delay.reset(); -} - -void bw_example_fxpp_delay_process(bw_example_fxpp_delay *instance, const float** x, float** y, int n_samples) { - instance->delay.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_delay_set_parameter(bw_example_fxpp_delay *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_delay: - instance->delay.setDelay(value); - break; - } -} - -float bw_example_fxpp_delay_get_parameter(bw_example_fxpp_delay *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_delay/src/bw_example_fxpp_delay.h b/examples/fxpp_delay/src/bw_example_fxpp_delay.h deleted file mode 100644 index 5d4fa71..0000000 --- a/examples/fxpp_delay/src/bw_example_fxpp_delay.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_DELAY_H -#define _BW_EXAMPLE_FXPP_DELAY_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_delay, - p_n -}; - -struct _bw_example_fxpp_delay { - // Sub-components - Delay<1> delay; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_delay bw_example_fxpp_delay; - -void bw_example_fxpp_delay_init(bw_example_fxpp_delay *instance); -void bw_example_fxpp_delay_set_sample_rate(bw_example_fxpp_delay *instance, float sample_rate); -void bw_example_fxpp_delay_reset(bw_example_fxpp_delay *instance); -void bw_example_fxpp_delay_process(bw_example_fxpp_delay *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_delay_set_parameter(bw_example_fxpp_delay *instance, int index, float value); -float bw_example_fxpp_delay_get_parameter(bw_example_fxpp_delay *instance, int index); - -} - -#endif diff --git a/examples/fxpp_delay/src/config.h b/examples/fxpp_delay/src/config.h deleted file mode 100644 index dcba7cb..0000000 --- a/examples/fxpp_delay/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_delay" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Delay", "Delay", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_delay.h" - -#define P_TYPE bw_example_fxpp_delay -#define P_INIT bw_example_fxpp_delay_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_delay_set_sample_rate -#define P_RESET bw_example_fxpp_delay_reset -#define P_PROCESS bw_example_fxpp_delay_process -#define P_SET_PARAMETER bw_example_fxpp_delay_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_delay_get_parameter - -#endif diff --git a/examples/fxpp_delay/src/config.js b/examples/fxpp_delay/src/config.js deleted file mode 100644 index 448d657..0000000 --- a/examples/fxpp_delay/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Delay", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_delay/vst3/Makefile b/examples/fxpp_delay/vst3/Makefile deleted file mode 100644 index 49b0a5f..0000000 --- a/examples/fxpp_delay/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_delay -SOURCE := bw_example_fxpp_delay.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_delay/vst3/config_vst3.h b/examples/fxpp_delay/vst3/config_vst3.h deleted file mode 100644 index 3919b3c..0000000 --- a/examples/fxpp_delay/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Delay" - -#define PLUGIN_GUID_1 0x9564c53d -#define PLUGIN_GUID_2 0x84b84647 -#define PLUGIN_GUID_3 0x81ad2327 -#define PLUGIN_GUID_4 0xbf001432 - -#define CTRL_GUID_1 0x60813317 -#define CTRL_GUID_2 0x015644cd -#define CTRL_GUID_3 0xb8c49142 -#define CTRL_GUID_4 0x13b4a42b - -#endif diff --git a/examples/fxpp_dist/android/Makefile b/examples/fxpp_dist/android/Makefile deleted file mode 100644 index 7a8242d..0000000 --- a/examples/fxpp_dist/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_dist -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_dist.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_dist/daisy-seed/Makefile b/examples/fxpp_dist/daisy-seed/Makefile deleted file mode 100644 index 5efde9b..0000000 --- a/examples/fxpp_dist/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_dist - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_dist.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_dist/daisy-seed/config_daisy_seed.h b/examples/fxpp_dist/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 8aa4923..0000000 --- a/examples/fxpp_dist/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 3 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 } -}; - -#endif diff --git a/examples/fxpp_dist/ios/Makefile b/examples/fxpp_dist/ios/Makefile deleted file mode 100644 index e0d74ea..0000000 --- a/examples/fxpp_dist/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_dist -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_dist/src/bw_example_fxpp_dist.cpp b/examples/fxpp_dist/src/bw_example_fxpp_dist.cpp deleted file mode 100644 index caeb54e..0000000 --- a/examples/fxpp_dist/src/bw_example_fxpp_dist.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_dist.h" - -void bw_example_fxpp_dist_init(bw_example_fxpp_dist *instance) { - (void)instance; -} - -void bw_example_fxpp_dist_set_sample_rate(bw_example_fxpp_dist *instance, float sample_rate) { - instance->dist.setSampleRate(2.f * sample_rate); -} - -void bw_example_fxpp_dist_reset(bw_example_fxpp_dist *instance) { - instance->dist.reset(); - instance->srcUp.reset(); - instance->srcDown.reset(); -} - -void bw_example_fxpp_dist_process(bw_example_fxpp_dist *instance, const float** x, float** y, int n_samples) { - int i = 0; - while (i < n_samples) { - int n = bw_mini32(n_samples - i, BUF_SIZE >> 1); - instance->srcUp.process({x[0] + i}, {instance->buf}, n); - instance->dist.process({instance->buf}, {instance->buf}, n << 1); - instance->srcDown.process({instance->buf}, {y[0] + i}, n << 1); - i += n; - } -} - -void bw_example_fxpp_dist_set_parameter(bw_example_fxpp_dist *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_dist: - instance->dist.setDistortion(value); - break; - case p_tone: - instance->dist.setTone(value); - break; - case p_volume: - instance->dist.setVolume(value); - break; - } -} - -float bw_example_fxpp_dist_get_parameter(bw_example_fxpp_dist *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_dist/src/bw_example_fxpp_dist.h b/examples/fxpp_dist/src/bw_example_fxpp_dist.h deleted file mode 100644 index d842529..0000000 --- a/examples/fxpp_dist/src/bw_example_fxpp_dist.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_DIST_H -#define _BW_EXAMPLE_FXPP_DIST_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_dist, - p_tone, - p_volume, - p_n -}; - -#define BUF_SIZE 32 - -struct _bw_example_fxpp_dist { - // Sub-components - Dist<1> dist; - SRCInt<1> srcUp; - SRCInt<1> srcDown; - - // Parameters - float params[p_n]; - - // Buffers - float buf[BUF_SIZE]; - - _bw_example_fxpp_dist() : srcUp(2), srcDown(-2) {} -}; -typedef struct _bw_example_fxpp_dist bw_example_fxpp_dist; - -void bw_example_fxpp_dist_init(bw_example_fxpp_dist *instance); -void bw_example_fxpp_dist_set_sample_rate(bw_example_fxpp_dist *instance, float sample_rate); -void bw_example_fxpp_dist_reset(bw_example_fxpp_dist *instance); -void bw_example_fxpp_dist_process(bw_example_fxpp_dist *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_dist_set_parameter(bw_example_fxpp_dist *instance, int index, float value); -float bw_example_fxpp_dist_get_parameter(bw_example_fxpp_dist *instance, int index); - -} - -#endif diff --git a/examples/fxpp_dist/src/config.h b/examples/fxpp_dist/src/config.h deleted file mode 100644 index ec62b70..0000000 --- a/examples/fxpp_dist/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_dist" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Distortion", "Distortion", "", 0, 0, 0, 0.f }, - { "Tone", "Tone", "", 0, 0, 0, 0.5f }, - { "Volume", "Volume", "", 0, 0, 0, 1.f } -}; - -// Internal API - -#include "bw_example_fxpp_dist.h" - -#define P_TYPE bw_example_fxpp_dist -#define P_INIT bw_example_fxpp_dist_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_dist_set_sample_rate -#define P_RESET bw_example_fxpp_dist_reset -#define P_PROCESS bw_example_fxpp_dist_process -#define P_SET_PARAMETER bw_example_fxpp_dist_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_dist_get_parameter - -#endif diff --git a/examples/fxpp_dist/src/config.js b/examples/fxpp_dist/src/config.js deleted file mode 100644 index 03b8df5..0000000 --- a/examples/fxpp_dist/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Distortion", - output: false, - defaultValue: 0.0 - }, - { - name: "Tone", - output: false, - defaultValue: 0.5 - }, - { - name: "Volume", - output: false, - defaultValue: 1.0 - } -]; diff --git a/examples/fxpp_dist/vst3/Makefile b/examples/fxpp_dist/vst3/Makefile deleted file mode 100644 index 17af4b2..0000000 --- a/examples/fxpp_dist/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_dist -SOURCE := bw_example_fxpp_dist.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_dist/vst3/config_vst3.h b/examples/fxpp_dist/vst3/config_vst3.h deleted file mode 100644 index e512637..0000000 --- a/examples/fxpp_dist/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Distortion" - -#define PLUGIN_GUID_1 0x2e8f9a39 -#define PLUGIN_GUID_2 0x9e364b22 -#define PLUGIN_GUID_3 0x86b3700c -#define PLUGIN_GUID_4 0xe45f087f - -#define CTRL_GUID_1 0xeaedaadf -#define CTRL_GUID_2 0x47f24b9a -#define CTRL_GUID_3 0xba44a3f5 -#define CTRL_GUID_4 0xe2381a56 - -#endif diff --git a/examples/fxpp_drive/android/Makefile b/examples/fxpp_drive/android/Makefile deleted file mode 100644 index dd26127..0000000 --- a/examples/fxpp_drive/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_drive -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_drive.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_drive/daisy-seed/Makefile b/examples/fxpp_drive/daisy-seed/Makefile deleted file mode 100644 index 0b021ee..0000000 --- a/examples/fxpp_drive/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_drive - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_drive.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_drive/daisy-seed/config_daisy_seed.h b/examples/fxpp_drive/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 8aa4923..0000000 --- a/examples/fxpp_drive/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 3 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 } -}; - -#endif diff --git a/examples/fxpp_drive/ios/Makefile b/examples/fxpp_drive/ios/Makefile deleted file mode 100644 index 648584c..0000000 --- a/examples/fxpp_drive/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_drive -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_drive/src/bw_example_fxpp_drive.cpp b/examples/fxpp_drive/src/bw_example_fxpp_drive.cpp deleted file mode 100644 index 972533c..0000000 --- a/examples/fxpp_drive/src/bw_example_fxpp_drive.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can redriveribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is driveributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_drive.h" - -void bw_example_fxpp_drive_init(bw_example_fxpp_drive *instance) { - (void)instance; -} - -void bw_example_fxpp_drive_set_sample_rate(bw_example_fxpp_drive *instance, float sample_rate) { - instance->drive.setSampleRate(2.f * sample_rate); -} - -void bw_example_fxpp_drive_reset(bw_example_fxpp_drive *instance) { - instance->drive.reset(); - instance->srcUp.reset(); - instance->srcDown.reset(); -} - -void bw_example_fxpp_drive_process(bw_example_fxpp_drive *instance, const float** x, float** y, int n_samples) { - int i = 0; - while (i < n_samples) { - int n = bw_mini32(n_samples - i, BUF_SIZE >> 1); - instance->srcUp.process({x[0] + i}, {instance->buf}, n); - instance->drive.process({instance->buf}, {instance->buf}, n << 1); - instance->srcDown.process({instance->buf}, {y[0] + i}, n << 1); - i += n; - } -} - -void bw_example_fxpp_drive_set_parameter(bw_example_fxpp_drive *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_drive: - instance->drive.setDrive(value); - break; - case p_tone: - instance->drive.setTone(value); - break; - case p_volume: - instance->drive.setVolume(value); - break; - } -} - -float bw_example_fxpp_drive_get_parameter(bw_example_fxpp_drive *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_drive/src/bw_example_fxpp_drive.h b/examples/fxpp_drive/src/bw_example_fxpp_drive.h deleted file mode 100644 index 6a9c341..0000000 --- a/examples/fxpp_drive/src/bw_example_fxpp_drive.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can redriveribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is driveributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_DRIVE_H -#define _BW_EXAMPLE_FXPP_DRIVE_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_drive, - p_tone, - p_volume, - p_n -}; - -#define BUF_SIZE 32 - -struct _bw_example_fxpp_drive { - // Sub-components - Drive<1> drive; - SRCInt<1> srcUp; - SRCInt<1> srcDown; - - // Parameters - float params[p_n]; - - // Buffers - float buf[BUF_SIZE]; - - _bw_example_fxpp_drive() : srcUp(2), srcDown(-2) {} -}; -typedef struct _bw_example_fxpp_drive bw_example_fxpp_drive; - -void bw_example_fxpp_drive_init(bw_example_fxpp_drive *instance); -void bw_example_fxpp_drive_set_sample_rate(bw_example_fxpp_drive *instance, float sample_rate); -void bw_example_fxpp_drive_reset(bw_example_fxpp_drive *instance); -void bw_example_fxpp_drive_process(bw_example_fxpp_drive *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_drive_set_parameter(bw_example_fxpp_drive *instance, int index, float value); -float bw_example_fxpp_drive_get_parameter(bw_example_fxpp_drive *instance, int index); - -} - -#endif diff --git a/examples/fxpp_drive/src/config.h b/examples/fxpp_drive/src/config.h deleted file mode 100644 index fff357e..0000000 --- a/examples/fxpp_drive/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can redriveribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is driveributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_drive" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Overdrive", "Overdrive", "", 0, 0, 0, 0.f }, - { "Tone", "Tone", "", 0, 0, 0, 0.5f }, - { "Volume", "Volume", "", 0, 0, 0, 1.f } -}; - -// Internal API - -#include "bw_example_fxpp_drive.h" - -#define P_TYPE bw_example_fxpp_drive -#define P_INIT bw_example_fxpp_drive_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_drive_set_sample_rate -#define P_RESET bw_example_fxpp_drive_reset -#define P_PROCESS bw_example_fxpp_drive_process -#define P_SET_PARAMETER bw_example_fxpp_drive_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_drive_get_parameter - -#endif diff --git a/examples/fxpp_drive/src/config.js b/examples/fxpp_drive/src/config.js deleted file mode 100644 index 5bd3889..0000000 --- a/examples/fxpp_drive/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Overdrive", - output: false, - defaultValue: 0.0 - }, - { - name: "Tone", - output: false, - defaultValue: 0.5 - }, - { - name: "Volume", - output: false, - defaultValue: 1.0 - } -]; diff --git a/examples/fxpp_drive/vst3/Makefile b/examples/fxpp_drive/vst3/Makefile deleted file mode 100644 index 311c7e9..0000000 --- a/examples/fxpp_drive/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_drive -SOURCE := bw_example_fxpp_drive.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_drive/vst3/config_vst3.h b/examples/fxpp_drive/vst3/config_vst3.h deleted file mode 100644 index 182a4a3..0000000 --- a/examples/fxpp_drive/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Distortion" - -#define PLUGIN_GUID_1 0x42c027c9 -#define PLUGIN_GUID_2 0x56f7494a -#define PLUGIN_GUID_3 0xbb2d3e2c -#define PLUGIN_GUID_4 0xe5198cb3 - -#define CTRL_GUID_1 0xb2401d4b -#define CTRL_GUID_2 0x3708439b -#define CTRL_GUID_3 0x81577630 -#define CTRL_GUID_4 0xb7860b39 - -#endif diff --git a/examples/fxpp_eq_3band/android/Makefile b/examples/fxpp_eq_3band/android/Makefile deleted file mode 100644 index 0a61650..0000000 --- a/examples/fxpp_eq_3band/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_eq_3band -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_eq_3band.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_eq_3band/daisy-seed/Makefile b/examples/fxpp_eq_3band/daisy-seed/Makefile deleted file mode 100644 index 91a22df..0000000 --- a/examples/fxpp_eq_3band/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_eq_3band - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_eq_3band.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_eq_3band/daisy-seed/config_daisy_seed.h b/examples/fxpp_eq_3band/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 436337a..0000000 --- a/examples/fxpp_eq_3band/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 9 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 }, - { 4, 19 }, - { 5, 20 }, - { 6, 21 }, - { 7, 22 }, - { 8, 23 }, -}; - -#endif diff --git a/examples/fxpp_eq_3band/ios/Makefile b/examples/fxpp_eq_3band/ios/Makefile deleted file mode 100644 index a42026f..0000000 --- a/examples/fxpp_eq_3band/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_eq_3band -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.cpp b/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.cpp deleted file mode 100644 index b6ffa54..0000000 --- a/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.cpp +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_eq_3band.h" - -void bw_example_fxpp_eq_3band_init(bw_example_fxpp_eq_3band *instance) { - (void)instance; -} - -void bw_example_fxpp_eq_3band_set_sample_rate(bw_example_fxpp_eq_3band *instance, float sample_rate) { - instance->ls2.setSampleRate(sample_rate); - instance->peak.setSampleRate(sample_rate); - instance->hs2.setSampleRate(sample_rate); -} - -void bw_example_fxpp_eq_3band_reset(bw_example_fxpp_eq_3band *instance) { - instance->ls2.reset(); - instance->peak.reset(); - instance->hs2.reset(); -} - -void bw_example_fxpp_eq_3band_process(bw_example_fxpp_eq_3band *instance, const float** x, float** y, int n_samples) { - instance->ls2.process({x[0]}, {y[0]}, n_samples); - instance->peak.process({y[0]}, {y[0]}, n_samples); - instance->hs2.process({y[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_eq_3band_set_parameter(bw_example_fxpp_eq_3band *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_ls_cutoff: - instance->ls2.setCutoff(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_ls_gain: - instance->ls2.setDcGainDB(-20.f + 40.f * value); - break; - case p_ls_Q: - instance->ls2.setQ(0.5f + 4.5f * value); - break; - case p_peak_cutoff: - instance->peak.setCutoff(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_peak_gain: - instance->peak.setPeakGainDB(-20.f + 40.f * value); - break; - case p_peak_bw: - instance->peak.setBandwidth(0.01f + 1.99f * value); - break; - case p_hs_cutoff: - instance->hs2.setCutoff(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_hs_gain: - instance->hs2.setHighGainDB(-20.f + 40.f * value); - break; - case p_hs_Q: - instance->hs2.setQ(0.5f + 4.5f * value); - break; - } -} - -float bw_example_fxpp_eq_3band_get_parameter(bw_example_fxpp_eq_3band *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.h b/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.h deleted file mode 100644 index 8c01b86..0000000 --- a/examples/fxpp_eq_3band/src/bw_example_fxpp_eq_3band.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_EQ_3BAND_H -#define _BW_EXAMPLE_FXPP_EQ_3BAND_H - -#include "platform.h" - -#include -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_ls_cutoff, - p_ls_gain, - p_ls_Q, - p_peak_cutoff, - p_peak_gain, - p_peak_bw, - p_hs_cutoff, - p_hs_gain, - p_hs_Q, - p_n -}; - -struct _bw_example_fxpp_eq_3band { - // Sub-components - LS2<1> ls2; - Peak<1> peak; - HS2<1> hs2; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_eq_3band bw_example_fxpp_eq_3band; - -void bw_example_fxpp_eq_3band_init(bw_example_fxpp_eq_3band *instance); -void bw_example_fxpp_eq_3band_set_sample_rate(bw_example_fxpp_eq_3band *instance, float sample_rate); -void bw_example_fxpp_eq_3band_reset(bw_example_fxpp_eq_3band *instance); -void bw_example_fxpp_eq_3band_process(bw_example_fxpp_eq_3band *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_eq_3band_set_parameter(bw_example_fxpp_eq_3band *instance, int index, float value); -float bw_example_fxpp_eq_3band_get_parameter(bw_example_fxpp_eq_3band *instance, int index); - -} - -#endif diff --git a/examples/fxpp_eq_3band/src/config.h b/examples/fxpp_eq_3band/src/config.h deleted file mode 100644 index 4e65c55..0000000 --- a/examples/fxpp_eq_3band/src/config.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_eq_3band" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 9 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Low shelf cutoff", "LS cutoff", "Hz", 0, 0, 0, 0.2f }, - { "Low shelf gain", "LS gain", "dB", 0, 0, 0, 0.5f }, - { "Low shelf Q", "LS Q", "", 0, 0, 0, 0.f }, - { "Peak cutoff", "Peak cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Peak gain", "Peak gain", "dB", 0, 0, 0, 0.5f }, - { "Peak bandiwdth", "Peak BW", "", 0, 0, 0, 1.f }, - { "High shelf cutoff", "HS cutoff", "Hz", 0, 0, 0, 0.8f }, - { "High shelf gain", "HS gain", "dB", 0, 0, 0, 0.5f }, - { "High shelf Q", "HS Q", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_eq_3band.h" - -#define P_TYPE bw_example_fxpp_eq_3band -#define P_INIT bw_example_fxpp_eq_3band_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_eq_3band_set_sample_rate -#define P_RESET bw_example_fxpp_eq_3band_reset -#define P_PROCESS bw_example_fxpp_eq_3band_process -#define P_SET_PARAMETER bw_example_fxpp_eq_3band_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_eq_3band_get_parameter - -#endif diff --git a/examples/fxpp_eq_3band/src/config.js b/examples/fxpp_eq_3band/src/config.js deleted file mode 100644 index 93db7f1..0000000 --- a/examples/fxpp_eq_3band/src/config.js +++ /dev/null @@ -1,78 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Low shelf cutoff", - output: false, - defaultValue: 0.2 - }, - { - name: "Low shelf gain", - output: false, - defaultValue: 0.5 - }, - { - name: "Low shelf Q", - output: false, - defaultValue: 0.0 - }, - { - name: "Peak cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Peak gain", - output: false, - defaultValue: 0.5 - }, - { - name: "Peak bandwidth", - output: false, - defaultValue: 0.0 - }, - { - name: "High shelf cutoff", - output: false, - defaultValue: 0.8 - }, - { - name: "High shelf gain", - output: false, - defaultValue: 0.5 - }, - { - name: "High shelf Q", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_eq_3band/vst3/Makefile b/examples/fxpp_eq_3band/vst3/Makefile deleted file mode 100644 index 7f3379f..0000000 --- a/examples/fxpp_eq_3band/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_eq_3band -SOURCE := bw_example_fxpp_eq_3band.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_eq_3band/vst3/config_vst3.h b/examples/fxpp_eq_3band/vst3/config_vst3.h deleted file mode 100644 index 1d016d0..0000000 --- a/examples/fxpp_eq_3band/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|EQ" - -#define PLUGIN_GUID_1 0x23099470 -#define PLUGIN_GUID_2 0x4e2d42c0 -#define PLUGIN_GUID_3 0xb308a6be -#define PLUGIN_GUID_4 0x6f943895 - -#define CTRL_GUID_1 0xcfaecca3 -#define CTRL_GUID_2 0x52a04488 -#define CTRL_GUID_3 0x877ee366 -#define CTRL_GUID_4 0x820e2692 - -#endif diff --git a/examples/fxpp_flanger/android/Makefile b/examples/fxpp_flanger/android/Makefile deleted file mode 100644 index 13b9d71..0000000 --- a/examples/fxpp_flanger/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_flanger -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_flanger.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_flanger/daisy-seed/Makefile b/examples/fxpp_flanger/daisy-seed/Makefile deleted file mode 100644 index 2099699..0000000 --- a/examples/fxpp_flanger/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_flanger - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_flanger.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_flanger/daisy-seed/config_daisy_seed.h b/examples/fxpp_flanger/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_flanger/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_flanger/ios/Makefile b/examples/fxpp_flanger/ios/Makefile deleted file mode 100644 index 5e8dfcc..0000000 --- a/examples/fxpp_flanger/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_flanger -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_flanger/src/bw_example_fxpp_flanger.cpp b/examples/fxpp_flanger/src/bw_example_fxpp_flanger.cpp deleted file mode 100644 index 49f0606..0000000 --- a/examples/fxpp_flanger/src/bw_example_fxpp_flanger.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_flanger.h" - -void bw_example_fxpp_flanger_init(bw_example_fxpp_flanger *instance) { - instance->chorus.setDelay(0.001f); - instance->chorus.setCoeffX(0.7071f); - instance->chorus.setCoeffMod(0.7071f); - instance->chorus.setCoeffFB(0.7071f); -} - -void bw_example_fxpp_flanger_set_sample_rate(bw_example_fxpp_flanger *instance, float sample_rate) { - instance->chorus.setSampleRate(sample_rate); -} - -void bw_example_fxpp_flanger_reset(bw_example_fxpp_flanger *instance) { - instance->chorus.reset(); -} - -void bw_example_fxpp_flanger_process(bw_example_fxpp_flanger *instance, const float** x, float** y, int n_samples) { - instance->chorus.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_flanger_set_parameter(bw_example_fxpp_flanger *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_rate: - instance->chorus.setRate(0.01f + 1.99f * value * value * value); - break; - case p_depth: - instance->chorus.setAmount(0.001f * value); - break; - } -} - -float bw_example_fxpp_flanger_get_parameter(bw_example_fxpp_flanger *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_flanger/src/bw_example_fxpp_flanger.h b/examples/fxpp_flanger/src/bw_example_fxpp_flanger.h deleted file mode 100644 index 90eb652..0000000 --- a/examples/fxpp_flanger/src/bw_example_fxpp_flanger.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_FLANGER_H -#define _BW_EXAMPLE_FXPP_FLANGER_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_rate, - p_depth, - p_n -}; - -struct _bw_example_fxpp_flanger { - // Sub-components - Chorus<1> chorus; - - // Parameters - float params[p_n]; - - _bw_example_fxpp_flanger() : chorus(0.002f) {} -}; -typedef struct _bw_example_fxpp_flanger bw_example_fxpp_flanger; - -void bw_example_fxpp_flanger_init(bw_example_fxpp_flanger *instance); -void bw_example_fxpp_flanger_set_sample_rate(bw_example_fxpp_flanger *instance, float sample_rate); -void bw_example_fxpp_flanger_reset(bw_example_fxpp_flanger *instance); -void bw_example_fxpp_flanger_process(bw_example_fxpp_flanger *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_flanger_set_parameter(bw_example_fxpp_flanger *instance, int index, float value); -float bw_example_fxpp_flanger_get_parameter(bw_example_fxpp_flanger *instance, int index); - -} - -#endif diff --git a/examples/fxpp_flanger/src/config.h b/examples/fxpp_flanger/src/config.h deleted file mode 100644 index 389e5e9..0000000 --- a/examples/fxpp_flanger/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_flanger" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Rate", "Rate", "", 0, 0, 0, 0.5f }, - { "Depth", "Depth", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_flanger.h" - -#define P_TYPE bw_example_fxpp_flanger -#define P_INIT bw_example_fxpp_flanger_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_flanger_set_sample_rate -#define P_RESET bw_example_fxpp_flanger_reset -#define P_PROCESS bw_example_fxpp_flanger_process -#define P_SET_PARAMETER bw_example_fxpp_flanger_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_flanger_get_parameter - -#endif diff --git a/examples/fxpp_flanger/src/config.js b/examples/fxpp_flanger/src/config.js deleted file mode 100644 index f704641..0000000 --- a/examples/fxpp_flanger/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Amount", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_flanger/vst3/Makefile b/examples/fxpp_flanger/vst3/Makefile deleted file mode 100644 index e4f9c01..0000000 --- a/examples/fxpp_flanger/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_flanger -SOURCE := bw_example_fxpp_flanger.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_flanger/vst3/config_vst3.h b/examples/fxpp_flanger/vst3/config_vst3.h deleted file mode 100644 index 514ef0c..0000000 --- a/examples/fxpp_flanger/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Modulation" - -#define PLUGIN_GUID_1 0xe9c75d95 -#define PLUGIN_GUID_2 0x0eb74bed -#define PLUGIN_GUID_3 0x874678eb -#define PLUGIN_GUID_4 0x8f098cf1 - -#define CTRL_GUID_1 0x100c4903 -#define CTRL_GUID_2 0xa55547ed -#define CTRL_GUID_3 0xb2a0cefa -#define CTRL_GUID_4 0xda69906c - -#endif diff --git a/examples/fxpp_fuzz/android/Makefile b/examples/fxpp_fuzz/android/Makefile deleted file mode 100644 index 7d9e9e2..0000000 --- a/examples/fxpp_fuzz/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_fuzz -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_fuzz.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_fuzz/daisy-seed/Makefile b/examples/fxpp_fuzz/daisy-seed/Makefile deleted file mode 100644 index ce50cce..0000000 --- a/examples/fxpp_fuzz/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_fuzz - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_fuzz.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_fuzz/daisy-seed/config_daisy_seed.h b/examples/fxpp_fuzz/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_fuzz/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_fuzz/ios/Makefile b/examples/fxpp_fuzz/ios/Makefile deleted file mode 100644 index 1b4cc0a..0000000 --- a/examples/fxpp_fuzz/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_fuzz -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.cpp b/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.cpp deleted file mode 100644 index d92a91a..0000000 --- a/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can refuzzribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is fuzzributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_fuzz.h" - -void bw_example_fxpp_fuzz_init(bw_example_fxpp_fuzz *instance) { - (void)instance; -} - -void bw_example_fxpp_fuzz_set_sample_rate(bw_example_fxpp_fuzz *instance, float sample_rate) { - instance->fuzz.setSampleRate(2.f * sample_rate); -} - -void bw_example_fxpp_fuzz_reset(bw_example_fxpp_fuzz *instance) { - instance->fuzz.reset(); - instance->srcUp.reset(); - instance->srcDown.reset(); -} - -void bw_example_fxpp_fuzz_process(bw_example_fxpp_fuzz *instance, const float** x, float** y, int n_samples) { - int i = 0; - while (i < n_samples) { - int n = bw_mini32(n_samples - i, BUF_SIZE >> 1); - instance->srcUp.process({x[0] + i}, {instance->buf}, n); - instance->fuzz.process({instance->buf}, {instance->buf}, n << 1); - instance->srcDown.process({instance->buf}, {y[0] + i}, n << 1); - i += n; - } -} - -void bw_example_fxpp_fuzz_set_parameter(bw_example_fxpp_fuzz *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_fuzz: - instance->fuzz.setFuzz(value); - break; - case p_volume: - instance->fuzz.setVolume(value); - break; - } -} - -float bw_example_fxpp_fuzz_get_parameter(bw_example_fxpp_fuzz *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.h b/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.h deleted file mode 100644 index a04acec..0000000 --- a/examples/fxpp_fuzz/src/bw_example_fxpp_fuzz.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can refuzzribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is fuzzributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_FUZZ_H -#define _BW_EXAMPLE_FXPP_FUZZ_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_fuzz, - p_volume, - p_n -}; - -#define BUF_SIZE 32 - -struct _bw_example_fxpp_fuzz { - // Sub-components - Fuzz<1> fuzz; - SRCInt<1> srcUp; - SRCInt<1> srcDown; - - // Parameters - float params[p_n]; - - // Buffers - float buf[BUF_SIZE]; - - _bw_example_fxpp_fuzz() : srcUp(2), srcDown(-2) {} -}; -typedef struct _bw_example_fxpp_fuzz bw_example_fxpp_fuzz; - -void bw_example_fxpp_fuzz_init(bw_example_fxpp_fuzz *instance); -void bw_example_fxpp_fuzz_set_sample_rate(bw_example_fxpp_fuzz *instance, float sample_rate); -void bw_example_fxpp_fuzz_reset(bw_example_fxpp_fuzz *instance); -void bw_example_fxpp_fuzz_process(bw_example_fxpp_fuzz *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_fuzz_set_parameter(bw_example_fxpp_fuzz *instance, int index, float value); -float bw_example_fxpp_fuzz_get_parameter(bw_example_fxpp_fuzz *instance, int index); - -} - -#endif diff --git a/examples/fxpp_fuzz/src/config.h b/examples/fxpp_fuzz/src/config.h deleted file mode 100644 index fc84f4e..0000000 --- a/examples/fxpp_fuzz/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can refuzzribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is fuzzributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_fuzz" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Fuzz", "Fuzz", "", 0, 0, 0, 0.f }, - { "Volume", "Volume", "", 0, 0, 0, 1.f } -}; - -// Internal API - -#include "bw_example_fxpp_fuzz.h" - -#define P_TYPE bw_example_fxpp_fuzz -#define P_INIT bw_example_fxpp_fuzz_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_fuzz_set_sample_rate -#define P_RESET bw_example_fxpp_fuzz_reset -#define P_PROCESS bw_example_fxpp_fuzz_process -#define P_SET_PARAMETER bw_example_fxpp_fuzz_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_fuzz_get_parameter - -#endif diff --git a/examples/fxpp_fuzz/src/config.js b/examples/fxpp_fuzz/src/config.js deleted file mode 100644 index 041b162..0000000 --- a/examples/fxpp_fuzz/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Fuzz", - output: false, - defaultValue: 0.0 - }, - { - name: "Volume", - output: false, - defaultValue: 1.0 - } -]; diff --git a/examples/fxpp_fuzz/vst3/Makefile b/examples/fxpp_fuzz/vst3/Makefile deleted file mode 100644 index 170b9e5..0000000 --- a/examples/fxpp_fuzz/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_fuzz -SOURCE := bw_example_fxpp_fuzz.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_fuzz/vst3/config_vst3.h b/examples/fxpp_fuzz/vst3/config_vst3.h deleted file mode 100644 index feadee6..0000000 --- a/examples/fxpp_fuzz/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Distortion" - -#define PLUGIN_GUID_1 0x91a20c9a -#define PLUGIN_GUID_2 0x069f4b8e -#define PLUGIN_GUID_3 0xa76bef96 -#define PLUGIN_GUID_4 0x6ed536b3 - -#define CTRL_GUID_1 0x7bf90a59 -#define CTRL_GUID_2 0x3f854724 -#define CTRL_GUID_3 0x9fa315de -#define CTRL_GUID_4 0x5fd7de7c - -#endif diff --git a/examples/fxpp_hp1/android/Makefile b/examples/fxpp_hp1/android/Makefile deleted file mode 100644 index 540e196..0000000 --- a/examples/fxpp_hp1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hp1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_hp1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_hp1/daisy-seed/Makefile b/examples/fxpp_hp1/daisy-seed/Makefile deleted file mode 100644 index 0fa7bdd..0000000 --- a/examples/fxpp_hp1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_hp1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_hp1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_hp1/daisy-seed/config_daisy_seed.h b/examples/fxpp_hp1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_hp1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_hp1/ios/Makefile b/examples/fxpp_hp1/ios/Makefile deleted file mode 100644 index 45d9387..0000000 --- a/examples/fxpp_hp1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hp1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_hp1/src/bw_example_fxpp_hp1.cpp b/examples/fxpp_hp1/src/bw_example_fxpp_hp1.cpp deleted file mode 100644 index b7074c2..0000000 --- a/examples/fxpp_hp1/src/bw_example_fxpp_hp1.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_hp1.h" - -void bw_example_fxpp_hp1_init(bw_example_fxpp_hp1 *instance) { - (void)instance; -} - -void bw_example_fxpp_hp1_set_sample_rate(bw_example_fxpp_hp1 *instance, float sample_rate) { - instance->hp1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_hp1_reset(bw_example_fxpp_hp1 *instance) { - instance->hp1.reset(); -} - -void bw_example_fxpp_hp1_process(bw_example_fxpp_hp1 *instance, const float** x, float** y, int n_samples) { - instance->hp1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_hp1_set_parameter(bw_example_fxpp_hp1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->hp1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - } -} - -float bw_example_fxpp_hp1_get_parameter(bw_example_fxpp_hp1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_hp1/src/bw_example_fxpp_hp1.h b/examples/fxpp_hp1/src/bw_example_fxpp_hp1.h deleted file mode 100644 index 1066467..0000000 --- a/examples/fxpp_hp1/src/bw_example_fxpp_hp1.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_HP1_H -#define _BW_EXAMPLE_FXPP_HP1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_n -}; - -struct _bw_example_fxpp_hp1 { - // Sub-components - HP1<1> hp1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_hp1 bw_example_fxpp_hp1; - -void bw_example_fxpp_hp1_init(bw_example_fxpp_hp1 *instance); -void bw_example_fxpp_hp1_set_sample_rate(bw_example_fxpp_hp1 *instance, float sample_rate); -void bw_example_fxpp_hp1_reset(bw_example_fxpp_hp1 *instance); -void bw_example_fxpp_hp1_process(bw_example_fxpp_hp1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_hp1_set_parameter(bw_example_fxpp_hp1 *instance, int index, float value); -float bw_example_fxpp_hp1_get_parameter(bw_example_fxpp_hp1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_hp1/src/config.h b/examples/fxpp_hp1/src/config.h deleted file mode 100644 index af9ab75..0000000 --- a/examples/fxpp_hp1/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_hp1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_hp1.h" - -#define P_TYPE bw_example_fxpp_hp1 -#define P_INIT bw_example_fxpp_hp1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_hp1_set_sample_rate -#define P_RESET bw_example_fxpp_hp1_reset -#define P_PROCESS bw_example_fxpp_hp1_process -#define P_SET_PARAMETER bw_example_fxpp_hp1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_hp1_get_parameter - -#endif diff --git a/examples/fxpp_hp1/src/config.js b/examples/fxpp_hp1/src/config.js deleted file mode 100644 index 7062107..0000000 --- a/examples/fxpp_hp1/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_hp1/vst3/Makefile b/examples/fxpp_hp1/vst3/Makefile deleted file mode 100644 index 79d844a..0000000 --- a/examples/fxpp_hp1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hp1 -SOURCE := bw_example_fxpp_hp1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_hp1/vst3/config_vst3.h b/examples/fxpp_hp1/vst3/config_vst3.h deleted file mode 100644 index dae0251..0000000 --- a/examples/fxpp_hp1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x96de37e3 -#define PLUGIN_GUID_2 0x100e4807 -#define PLUGIN_GUID_3 0x8a7ec651 -#define PLUGIN_GUID_4 0xa90b8d91 - -#define CTRL_GUID_1 0x596d678c -#define CTRL_GUID_2 0x734140e6 -#define CTRL_GUID_3 0xbb94baf4 -#define CTRL_GUID_4 0xad364367 - -#endif diff --git a/examples/fxpp_hs1/android/Makefile b/examples/fxpp_hs1/android/Makefile deleted file mode 100644 index 3aeab3e..0000000 --- a/examples/fxpp_hs1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hs1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_hs1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_hs1/daisy-seed/Makefile b/examples/fxpp_hs1/daisy-seed/Makefile deleted file mode 100644 index 63878c8..0000000 --- a/examples/fxpp_hs1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_hs1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_hs1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_hs1/daisy-seed/config_daisy_seed.h b/examples/fxpp_hs1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_hs1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_hs1/ios/Makefile b/examples/fxpp_hs1/ios/Makefile deleted file mode 100644 index fc60e06..0000000 --- a/examples/fxpp_hs1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hs1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_hs1/src/bw_example_fxpp_hs1.cpp b/examples/fxpp_hs1/src/bw_example_fxpp_hs1.cpp deleted file mode 100644 index 7d33c0e..0000000 --- a/examples/fxpp_hs1/src/bw_example_fxpp_hs1.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_hs1.h" - -void bw_example_fxpp_hs1_init(bw_example_fxpp_hs1 *instance) { - (void)instance; -} - -void bw_example_fxpp_hs1_set_sample_rate(bw_example_fxpp_hs1 *instance, float sample_rate) { - instance->hs1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_hs1_reset(bw_example_fxpp_hs1 *instance) { - instance->hs1.reset(); -} - -void bw_example_fxpp_hs1_process(bw_example_fxpp_hs1 *instance, const float** x, float** y, int n_samples) { - instance->hs1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_hs1_set_parameter(bw_example_fxpp_hs1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->hs1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_gain: - instance->hs1.setHighGainDB(-20.f + 40.f * value); - break; - } -} - -float bw_example_fxpp_hs1_get_parameter(bw_example_fxpp_hs1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_hs1/src/bw_example_fxpp_hs1.h b/examples/fxpp_hs1/src/bw_example_fxpp_hs1.h deleted file mode 100644 index 98cf43c..0000000 --- a/examples/fxpp_hs1/src/bw_example_fxpp_hs1.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_HS1_H -#define _BW_EXAMPLE_FXPP_HS1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_gain, - p_n -}; - -struct _bw_example_fxpp_hs1 { - // Sub-components - HS1<1> hs1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_hs1 bw_example_fxpp_hs1; - -void bw_example_fxpp_hs1_init(bw_example_fxpp_hs1 *instance); -void bw_example_fxpp_hs1_set_sample_rate(bw_example_fxpp_hs1 *instance, float sample_rate); -void bw_example_fxpp_hs1_reset(bw_example_fxpp_hs1 *instance); -void bw_example_fxpp_hs1_process(bw_example_fxpp_hs1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_hs1_set_parameter(bw_example_fxpp_hs1 *instance, int index, float value); -float bw_example_fxpp_hs1_get_parameter(bw_example_fxpp_hs1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_hs1/src/config.h b/examples/fxpp_hs1/src/config.h deleted file mode 100644 index 15213a3..0000000 --- a/examples/fxpp_hs1/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_hs1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Gain", "Gain", "dB", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_hs1.h" - -#define P_TYPE bw_example_fxpp_hs1 -#define P_INIT bw_example_fxpp_hs1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_hs1_set_sample_rate -#define P_RESET bw_example_fxpp_hs1_reset -#define P_PROCESS bw_example_fxpp_hs1_process -#define P_SET_PARAMETER bw_example_fxpp_hs1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_hs1_get_parameter - -#endif diff --git a/examples/fxpp_hs1/src/config.js b/examples/fxpp_hs1/src/config.js deleted file mode 100644 index 51f18dc..0000000 --- a/examples/fxpp_hs1/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Gain", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_hs1/vst3/Makefile b/examples/fxpp_hs1/vst3/Makefile deleted file mode 100644 index 11d385d..0000000 --- a/examples/fxpp_hs1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_hs1 -SOURCE := bw_example_fxpp_hs1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_hs1/vst3/config_vst3.h b/examples/fxpp_hs1/vst3/config_vst3.h deleted file mode 100644 index d00f910..0000000 --- a/examples/fxpp_hs1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x50758061 -#define PLUGIN_GUID_2 0x59a547b2 -#define PLUGIN_GUID_3 0x82d000c7 -#define PLUGIN_GUID_4 0xc07f71bd - -#define CTRL_GUID_1 0x68fead0c -#define CTRL_GUID_2 0x894f45d5 -#define CTRL_GUID_3 0xa5eae123 -#define CTRL_GUID_4 0x2efa7b92 - -#endif diff --git a/examples/fxpp_lp1/android/Makefile b/examples/fxpp_lp1/android/Makefile deleted file mode 100644 index ca9da3e..0000000 --- a/examples/fxpp_lp1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_lp1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_lp1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_lp1/daisy-seed/Makefile b/examples/fxpp_lp1/daisy-seed/Makefile deleted file mode 100644 index 386070a..0000000 --- a/examples/fxpp_lp1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_lp1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_lp1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_lp1/daisy-seed/config_daisy_seed.h b/examples/fxpp_lp1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_lp1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_lp1/ios/Makefile b/examples/fxpp_lp1/ios/Makefile deleted file mode 100644 index 8fe9110..0000000 --- a/examples/fxpp_lp1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_lp1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_lp1/src/bw_example_fxpp_lp1.cpp b/examples/fxpp_lp1/src/bw_example_fxpp_lp1.cpp deleted file mode 100644 index 66c1623..0000000 --- a/examples/fxpp_lp1/src/bw_example_fxpp_lp1.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_lp1.h" - -void bw_example_fxpp_lp1_init(bw_example_fxpp_lp1 *instance) { - (void)instance; -} - -void bw_example_fxpp_lp1_set_sample_rate(bw_example_fxpp_lp1 *instance, float sample_rate) { - instance->lp1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_lp1_reset(bw_example_fxpp_lp1 *instance) { - instance->lp1.reset(); -} - -void bw_example_fxpp_lp1_process(bw_example_fxpp_lp1 *instance, const float** x, float** y, int n_samples) { - instance->lp1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_lp1_set_parameter(bw_example_fxpp_lp1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->lp1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - } -} - -float bw_example_fxpp_lp1_get_parameter(bw_example_fxpp_lp1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_lp1/src/bw_example_fxpp_lp1.h b/examples/fxpp_lp1/src/bw_example_fxpp_lp1.h deleted file mode 100644 index c89b304..0000000 --- a/examples/fxpp_lp1/src/bw_example_fxpp_lp1.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_LP1_H -#define _BW_EXAMPLE_FXPP_LP1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_n -}; - -struct _bw_example_fxpp_lp1 { - // Sub-components - LP1<1> lp1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_lp1 bw_example_fxpp_lp1; - -void bw_example_fxpp_lp1_init(bw_example_fxpp_lp1 *instance); -void bw_example_fxpp_lp1_set_sample_rate(bw_example_fxpp_lp1 *instance, float sample_rate); -void bw_example_fxpp_lp1_reset(bw_example_fxpp_lp1 *instance); -void bw_example_fxpp_lp1_process(bw_example_fxpp_lp1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_lp1_set_parameter(bw_example_fxpp_lp1 *instance, int index, float value); -float bw_example_fxpp_lp1_get_parameter(bw_example_fxpp_lp1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_lp1/src/config.h b/examples/fxpp_lp1/src/config.h deleted file mode 100644 index 7fdd21b..0000000 --- a/examples/fxpp_lp1/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_lp1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_lp1.h" - -#define P_TYPE bw_example_fxpp_lp1 -#define P_INIT bw_example_fxpp_lp1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_lp1_set_sample_rate -#define P_RESET bw_example_fxpp_lp1_reset -#define P_PROCESS bw_example_fxpp_lp1_process -#define P_SET_PARAMETER bw_example_fxpp_lp1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_lp1_get_parameter - -#endif diff --git a/examples/fxpp_lp1/src/config.js b/examples/fxpp_lp1/src/config.js deleted file mode 100644 index 7062107..0000000 --- a/examples/fxpp_lp1/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_lp1/vst3/Makefile b/examples/fxpp_lp1/vst3/Makefile deleted file mode 100644 index 602f13d..0000000 --- a/examples/fxpp_lp1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_lp1 -SOURCE := bw_example_fxpp_lp1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_lp1/vst3/config_vst3.h b/examples/fxpp_lp1/vst3/config_vst3.h deleted file mode 100644 index d784935..0000000 --- a/examples/fxpp_lp1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0xabc96761 -#define PLUGIN_GUID_2 0x6efc45b3 -#define PLUGIN_GUID_3 0x94b75626 -#define PLUGIN_GUID_4 0x07fb04b6 - -#define CTRL_GUID_1 0x76e08d3b -#define CTRL_GUID_2 0xeaf04e96 -#define CTRL_GUID_3 0xa17196c7 -#define CTRL_GUID_4 0x2bf9f232 - -#endif diff --git a/examples/fxpp_ls1/android/Makefile b/examples/fxpp_ls1/android/Makefile deleted file mode 100644 index 19ce2c5..0000000 --- a/examples/fxpp_ls1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ls1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_ls1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_ls1/daisy-seed/Makefile b/examples/fxpp_ls1/daisy-seed/Makefile deleted file mode 100644 index 710e402..0000000 --- a/examples/fxpp_ls1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_ls1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_ls1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_ls1/daisy-seed/config_daisy_seed.h b/examples/fxpp_ls1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_ls1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_ls1/ios/Makefile b/examples/fxpp_ls1/ios/Makefile deleted file mode 100644 index f5b44db..0000000 --- a/examples/fxpp_ls1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ls1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ls1/src/bw_example_fxpp_ls1.cpp b/examples/fxpp_ls1/src/bw_example_fxpp_ls1.cpp deleted file mode 100644 index 44a5410..0000000 --- a/examples/fxpp_ls1/src/bw_example_fxpp_ls1.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_ls1.h" - -void bw_example_fxpp_ls1_init(bw_example_fxpp_ls1 *instance) { - (void)instance; -} - -void bw_example_fxpp_ls1_set_sample_rate(bw_example_fxpp_ls1 *instance, float sample_rate) { - instance->ls1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_ls1_reset(bw_example_fxpp_ls1 *instance) { - instance->ls1.reset(); -} - -void bw_example_fxpp_ls1_process(bw_example_fxpp_ls1 *instance, const float** x, float** y, int n_samples) { - instance->ls1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_ls1_set_parameter(bw_example_fxpp_ls1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->ls1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_gain: - instance->ls1.setDcGainDB(-20.f + 40.f * value); - break; - } -} - -float bw_example_fxpp_ls1_get_parameter(bw_example_fxpp_ls1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_ls1/src/bw_example_fxpp_ls1.h b/examples/fxpp_ls1/src/bw_example_fxpp_ls1.h deleted file mode 100644 index 4e5de57..0000000 --- a/examples/fxpp_ls1/src/bw_example_fxpp_ls1.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_LS1_H -#define _BW_EXAMPLE_FXPP_LS1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_gain, - p_n -}; - -struct _bw_example_fxpp_ls1 { - // Sub-components - LS1<1> ls1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_ls1 bw_example_fxpp_ls1; - -void bw_example_fxpp_ls1_init(bw_example_fxpp_ls1 *instance); -void bw_example_fxpp_ls1_set_sample_rate(bw_example_fxpp_ls1 *instance, float sample_rate); -void bw_example_fxpp_ls1_reset(bw_example_fxpp_ls1 *instance); -void bw_example_fxpp_ls1_process(bw_example_fxpp_ls1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_ls1_set_parameter(bw_example_fxpp_ls1 *instance, int index, float value); -float bw_example_fxpp_ls1_get_parameter(bw_example_fxpp_ls1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_ls1/src/config.h b/examples/fxpp_ls1/src/config.h deleted file mode 100644 index b5960cf..0000000 --- a/examples/fxpp_ls1/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_ls1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Gain", "Gain", "dB", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_ls1.h" - -#define P_TYPE bw_example_fxpp_ls1 -#define P_INIT bw_example_fxpp_ls1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_ls1_set_sample_rate -#define P_RESET bw_example_fxpp_ls1_reset -#define P_PROCESS bw_example_fxpp_ls1_process -#define P_SET_PARAMETER bw_example_fxpp_ls1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_ls1_get_parameter - -#endif diff --git a/examples/fxpp_ls1/src/config.js b/examples/fxpp_ls1/src/config.js deleted file mode 100644 index 51f18dc..0000000 --- a/examples/fxpp_ls1/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Gain", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_ls1/vst3/Makefile b/examples/fxpp_ls1/vst3/Makefile deleted file mode 100644 index 6c6ab2f..0000000 --- a/examples/fxpp_ls1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ls1 -SOURCE := bw_example_fxpp_ls1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_ls1/vst3/config_vst3.h b/examples/fxpp_ls1/vst3/config_vst3.h deleted file mode 100644 index 60857e9..0000000 --- a/examples/fxpp_ls1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0xdc073e1d -#define PLUGIN_GUID_2 0xafed4991 -#define PLUGIN_GUID_3 0xb3181e9e -#define PLUGIN_GUID_4 0x79acb2af - -#define CTRL_GUID_1 0x5e701fae -#define CTRL_GUID_2 0x56c34a23 -#define CTRL_GUID_3 0x9b781b85 -#define CTRL_GUID_4 0xcbc803b1 - -#endif diff --git a/examples/fxpp_mm1/android/Makefile b/examples/fxpp_mm1/android/Makefile deleted file mode 100644 index 6600003..0000000 --- a/examples/fxpp_mm1/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm1 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_mm1.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_mm1/daisy-seed/Makefile b/examples/fxpp_mm1/daisy-seed/Makefile deleted file mode 100644 index c5a606a..0000000 --- a/examples/fxpp_mm1/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_mm1 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_mm1.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_mm1/daisy-seed/config_daisy_seed.h b/examples/fxpp_mm1/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 8aa4923..0000000 --- a/examples/fxpp_mm1/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 3 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 } -}; - -#endif diff --git a/examples/fxpp_mm1/ios/Makefile b/examples/fxpp_mm1/ios/Makefile deleted file mode 100644 index a69aa55..0000000 --- a/examples/fxpp_mm1/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm1 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_mm1/src/bw_example_fxpp_mm1.cpp b/examples/fxpp_mm1/src/bw_example_fxpp_mm1.cpp deleted file mode 100644 index c9a01bf..0000000 --- a/examples/fxpp_mm1/src/bw_example_fxpp_mm1.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_mm1.h" - -void bw_example_fxpp_mm1_init(bw_example_fxpp_mm1 *instance) { - (void)instance; -} - -void bw_example_fxpp_mm1_set_sample_rate(bw_example_fxpp_mm1 *instance, float sample_rate) { - instance->mm1.setSampleRate(sample_rate); -} - -void bw_example_fxpp_mm1_reset(bw_example_fxpp_mm1 *instance) { - instance->mm1.reset(); -} - -void bw_example_fxpp_mm1_process(bw_example_fxpp_mm1 *instance, const float** x, float** y, int n_samples) { - instance->mm1.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_mm1_set_parameter(bw_example_fxpp_mm1 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->mm1.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_input_coeff: - instance->mm1.setCoeffX(2.f * value - 1.f); - break; - case p_lp_coeff: - instance->mm1.setCoeffLp(2.f * value - 1.f); - break; - } -} - -float bw_example_fxpp_mm1_get_parameter(bw_example_fxpp_mm1 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_mm1/src/bw_example_fxpp_mm1.h b/examples/fxpp_mm1/src/bw_example_fxpp_mm1.h deleted file mode 100644 index 2d0055e..0000000 --- a/examples/fxpp_mm1/src/bw_example_fxpp_mm1.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_MM1_H -#define _BW_EXAMPLE_FXPP_MM1_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_input_coeff, - p_lp_coeff, - p_n -}; - -struct _bw_example_fxpp_mm1 { - // Sub-components - MM1<1> mm1; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_mm1 bw_example_fxpp_mm1; - -void bw_example_fxpp_mm1_init(bw_example_fxpp_mm1 *instance); -void bw_example_fxpp_mm1_set_sample_rate(bw_example_fxpp_mm1 *instance, float sample_rate); -void bw_example_fxpp_mm1_reset(bw_example_fxpp_mm1 *instance); -void bw_example_fxpp_mm1_process(bw_example_fxpp_mm1 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_mm1_set_parameter(bw_example_fxpp_mm1 *instance, int index, float value); -float bw_example_fxpp_mm1_get_parameter(bw_example_fxpp_mm1 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_mm1/src/config.h b/examples/fxpp_mm1/src/config.h deleted file mode 100644 index d643b50..0000000 --- a/examples/fxpp_mm1/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_mm1" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Input coefficient", "In coeff", "", 0, 0, 0, 1.f }, - { "Lowpass coefficient", "LP coeff", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_mm1.h" - -#define P_TYPE bw_example_fxpp_mm1 -#define P_INIT bw_example_fxpp_mm1_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_mm1_set_sample_rate -#define P_RESET bw_example_fxpp_mm1_reset -#define P_PROCESS bw_example_fxpp_mm1_process -#define P_SET_PARAMETER bw_example_fxpp_mm1_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_mm1_get_parameter - -#endif diff --git a/examples/fxpp_mm1/src/config.js b/examples/fxpp_mm1/src/config.js deleted file mode 100644 index 6065627..0000000 --- a/examples/fxpp_mm1/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Input coefficient", - output: false, - defaultValue: 1.0 - }, - { - name: "Lowpass coefficient", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_mm1/vst3/Makefile b/examples/fxpp_mm1/vst3/Makefile deleted file mode 100644 index f136728..0000000 --- a/examples/fxpp_mm1/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm1 -SOURCE := bw_example_fxpp_mm1.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_mm1/vst3/config_vst3.h b/examples/fxpp_mm1/vst3/config_vst3.h deleted file mode 100644 index 6bee362..0000000 --- a/examples/fxpp_mm1/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0xe5b68572 -#define PLUGIN_GUID_2 0xe7ea4781 -#define PLUGIN_GUID_3 0x8c4de64e -#define PLUGIN_GUID_4 0x061d63a3 - -#define CTRL_GUID_1 0x6763895a -#define CTRL_GUID_2 0x52224498 -#define CTRL_GUID_3 0xa51e05e7 -#define CTRL_GUID_4 0x972ed1bf - -#endif diff --git a/examples/fxpp_mm2/android/Makefile b/examples/fxpp_mm2/android/Makefile deleted file mode 100644 index 5df2747..0000000 --- a/examples/fxpp_mm2/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm2 -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_mm2.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_mm2/daisy-seed/Makefile b/examples/fxpp_mm2/daisy-seed/Makefile deleted file mode 100644 index 40d07eb..0000000 --- a/examples/fxpp_mm2/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_mm2 - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_mm2.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_mm2/daisy-seed/config_daisy_seed.h b/examples/fxpp_mm2/daisy-seed/config_daisy_seed.h deleted file mode 100644 index cfe29af..0000000 --- a/examples/fxpp_mm2/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 6 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 }, - { 4, 19 }, - { 5, 20 } -}; - -#endif diff --git a/examples/fxpp_mm2/ios/Makefile b/examples/fxpp_mm2/ios/Makefile deleted file mode 100644 index 81d1471..0000000 --- a/examples/fxpp_mm2/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm2 -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_mm2/src/bw_example_fxpp_mm2.cpp b/examples/fxpp_mm2/src/bw_example_fxpp_mm2.cpp deleted file mode 100644 index 8b12ad6..0000000 --- a/examples/fxpp_mm2/src/bw_example_fxpp_mm2.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_mm2.h" - -void bw_example_fxpp_mm2_init(bw_example_fxpp_mm2 *instance) { - (void)instance; -} - -void bw_example_fxpp_mm2_set_sample_rate(bw_example_fxpp_mm2 *instance, float sample_rate) { - instance->mm2.setSampleRate(sample_rate); -} - -void bw_example_fxpp_mm2_reset(bw_example_fxpp_mm2 *instance) { - instance->mm2.reset(); -} - -void bw_example_fxpp_mm2_process(bw_example_fxpp_mm2 *instance, const float** x, float** y, int n_samples) { - instance->mm2.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_mm2_set_parameter(bw_example_fxpp_mm2 *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->mm2.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_Q: - instance->mm2.setQ(0.5f + 9.5f * value); - break; - case p_input_coeff: - instance->mm2.setCoeffX(2.f * value - 1.f); - break; - case p_lp_coeff: - instance->mm2.setCoeffLp(2.f * value - 1.f); - break; - case p_bp_coeff: - instance->mm2.setCoeffBp(2.f * value - 1.f); - break; - case p_hp_coeff: - instance->mm2.setCoeffHp(2.f * value - 1.f); - break; - } -} - -float bw_example_fxpp_mm2_get_parameter(bw_example_fxpp_mm2 *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_mm2/src/bw_example_fxpp_mm2.h b/examples/fxpp_mm2/src/bw_example_fxpp_mm2.h deleted file mode 100644 index 77c978d..0000000 --- a/examples/fxpp_mm2/src/bw_example_fxpp_mm2.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_MM2_H -#define _BW_EXAMPLE_FXPP_MM2_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_Q, - p_input_coeff, - p_lp_coeff, - p_bp_coeff, - p_hp_coeff, - p_n -}; - -struct _bw_example_fxpp_mm2 { - // Sub-components - MM2<1> mm2; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_mm2 bw_example_fxpp_mm2; - -void bw_example_fxpp_mm2_init(bw_example_fxpp_mm2 *instance); -void bw_example_fxpp_mm2_set_sample_rate(bw_example_fxpp_mm2 *instance, float sample_rate); -void bw_example_fxpp_mm2_reset(bw_example_fxpp_mm2 *instance); -void bw_example_fxpp_mm2_process(bw_example_fxpp_mm2 *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_mm2_set_parameter(bw_example_fxpp_mm2 *instance, int index, float value); -float bw_example_fxpp_mm2_get_parameter(bw_example_fxpp_mm2 *instance, int index); - -} - -#endif diff --git a/examples/fxpp_mm2/src/config.h b/examples/fxpp_mm2/src/config.h deleted file mode 100644 index ae9a216..0000000 --- a/examples/fxpp_mm2/src/config.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_mm2" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 6 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Q", "Q", "", 0, 0, 0, 0.f }, - { "Input coefficient", "In coeff", "", 0, 0, 0, 1.f }, - { "Lowpass coefficient", "LP coeff", "", 0, 0, 0, 0.5f }, - { "Bandpass coefficient", "BP coeff", "", 0, 0, 0, 0.5f }, - { "Highpass coefficient", "HP coeff", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_mm2.h" - -#define P_TYPE bw_example_fxpp_mm2 -#define P_INIT bw_example_fxpp_mm2_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_mm2_set_sample_rate -#define P_RESET bw_example_fxpp_mm2_reset -#define P_PROCESS bw_example_fxpp_mm2_process -#define P_SET_PARAMETER bw_example_fxpp_mm2_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_mm2_get_parameter - -#endif diff --git a/examples/fxpp_mm2/src/config.js b/examples/fxpp_mm2/src/config.js deleted file mode 100644 index 5362671..0000000 --- a/examples/fxpp_mm2/src/config.js +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Q", - output: false, - defaultValue: 0.5 - }, - { - name: "Input coefficient", - output: false, - defaultValue: 1.0 - }, - { - name: "Lowpass coefficient", - output: false, - defaultValue: 0.5 - }, - { - name: "Bandpass coefficient", - output: false, - defaultValue: 0.5 - }, - { - name: "Highpass coefficient", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_mm2/vst3/Makefile b/examples/fxpp_mm2/vst3/Makefile deleted file mode 100644 index c57e3ff..0000000 --- a/examples/fxpp_mm2/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_mm2 -SOURCE := bw_example_fxpp_mm2.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_mm2/vst3/config_vst3.h b/examples/fxpp_mm2/vst3/config_vst3.h deleted file mode 100644 index 23dccf0..0000000 --- a/examples/fxpp_mm2/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x7f718015 -#define PLUGIN_GUID_2 0x3b6740f5 -#define PLUGIN_GUID_3 0xaef697a8 -#define PLUGIN_GUID_4 0x1ede0a4e - -#define CTRL_GUID_1 0x5c6c769d -#define CTRL_GUID_2 0xf77e4c79 -#define CTRL_GUID_3 0x918b11a9 -#define CTRL_GUID_4 0x27788f1e - -#endif diff --git a/examples/fxpp_noise_gate/android/Makefile b/examples/fxpp_noise_gate/android/Makefile deleted file mode 100644 index 7d532ce..0000000 --- a/examples/fxpp_noise_gate/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_noise_gate -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_noise_gate.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_noise_gate/daisy-seed/Makefile b/examples/fxpp_noise_gate/daisy-seed/Makefile deleted file mode 100644 index 45fe353..0000000 --- a/examples/fxpp_noise_gate/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_noise_gate - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_noise_gate.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_noise_gate/daisy-seed/config_daisy_seed.h b/examples/fxpp_noise_gate/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 10d3292..0000000 --- a/examples/fxpp_noise_gate/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 4 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 } -}; - -#endif diff --git a/examples/fxpp_noise_gate/ios/Makefile b/examples/fxpp_noise_gate/ios/Makefile deleted file mode 100644 index ed97cee..0000000 --- a/examples/fxpp_noise_gate/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_noise_gate -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.cpp b/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.cpp deleted file mode 100644 index b254107..0000000 --- a/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.cpp +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_noise_gate.h" - -void bw_example_fxpp_noise_gate_init(bw_example_fxpp_noise_gate *instance) { - (void)instance; -} - -void bw_example_fxpp_noise_gate_set_sample_rate(bw_example_fxpp_noise_gate *instance, float sample_rate) { - instance->noise_gate.setSampleRate(sample_rate); -} - -void bw_example_fxpp_noise_gate_reset(bw_example_fxpp_noise_gate *instance) { - instance->noise_gate.reset(); -} - -void bw_example_fxpp_noise_gate_process(bw_example_fxpp_noise_gate *instance, const float** x, float** y, int n_samples) { - instance->noise_gate.process({x[0]}, {x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_noise_gate_set_parameter(bw_example_fxpp_noise_gate *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_thresh: - instance->noise_gate.setTreshDBFS(60.f * value - 60.f); - break; - case p_ratio: - instance->noise_gate.setRatio(value < 0.999f ? 1.f / (1.f - value) : INFINITY); - break; - case p_attack: - instance->noise_gate.setAttackTau(value); - break; - case p_release: - instance->noise_gate.setReleaseTau(value); - break; - } -} - -float bw_example_fxpp_noise_gate_get_parameter(bw_example_fxpp_noise_gate *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.h b/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.h deleted file mode 100644 index a23d282..0000000 --- a/examples/fxpp_noise_gate/src/bw_example_fxpp_noise_gate.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_NOISE_GATE_H -#define _BW_EXAMPLE_FXPP_NOISE_GATE_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_thresh, - p_ratio, - p_attack, - p_release, - p_n -}; - -struct _bw_example_fxpp_noise_gate { - // Sub-noise_gateonents - NoiseGate<1> noise_gate; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_noise_gate bw_example_fxpp_noise_gate; - -void bw_example_fxpp_noise_gate_init(bw_example_fxpp_noise_gate *instance); -void bw_example_fxpp_noise_gate_set_sample_rate(bw_example_fxpp_noise_gate *instance, float sample_rate); -void bw_example_fxpp_noise_gate_reset(bw_example_fxpp_noise_gate *instance); -void bw_example_fxpp_noise_gate_process(bw_example_fxpp_noise_gate *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_noise_gate_set_parameter(bw_example_fxpp_noise_gate *instance, int index, float value); -float bw_example_fxpp_noise_gate_get_parameter(bw_example_fxpp_noise_gate *instance, int index); - -} - -#endif diff --git a/examples/fxpp_noise_gate/src/config.h b/examples/fxpp_noise_gate/src/config.h deleted file mode 100644 index 1ced826..0000000 --- a/examples/fxpp_noise_gate/src/config.h +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_noise_gate" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 4 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Threshold", "Thresh", "", 0, 0, 0, 1.f }, - { "Ratio", "Ratio", "", 0, 0, 0, 1.f }, - { "Attack", "Attack", "s", 0, 0, 0, 0.f }, - { "Release", "Release", "s", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_noise_gate.h" - -#define P_TYPE bw_example_fxpp_noise_gate -#define P_INIT bw_example_fxpp_noise_gate_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_noise_gate_set_sample_rate -#define P_RESET bw_example_fxpp_noise_gate_reset -#define P_PROCESS bw_example_fxpp_noise_gate_process -#define P_SET_PARAMETER bw_example_fxpp_noise_gate_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_noise_gate_get_parameter - -#endif diff --git a/examples/fxpp_noise_gate/src/config.js b/examples/fxpp_noise_gate/src/config.js deleted file mode 100644 index 0b281be..0000000 --- a/examples/fxpp_noise_gate/src/config.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Threshold", - output: false, - defaultValue: 0.0 - }, - { - name: "Attenuation", - output: false, - defaultValue: 0.0 - }, - { - name: "Attack", - output: false, - defaultValue: 0.0 - }, - { - name: "Release", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_noise_gate/vst3/Makefile b/examples/fxpp_noise_gate/vst3/Makefile deleted file mode 100644 index 52789a9..0000000 --- a/examples/fxpp_noise_gate/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_noise_gate -SOURCE := bw_example_fxpp_noise_gate.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_noise_gate/vst3/config_vst3.h b/examples/fxpp_noise_gate/vst3/config_vst3.h deleted file mode 100644 index 5142528..0000000 --- a/examples/fxpp_noise_gate/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Restoration" - -#define PLUGIN_GUID_1 0x61e80a39 -#define PLUGIN_GUID_2 0x48ec44ca -#define PLUGIN_GUID_3 0x924cd7b6 -#define PLUGIN_GUID_4 0x5f784609 - -#define CTRL_GUID_1 0x9630e7c7 -#define CTRL_GUID_2 0x73d64256 -#define CTRL_GUID_3 0xbf06438c -#define CTRL_GUID_4 0xb4d914c0 - -#endif diff --git a/examples/fxpp_notch/android/Makefile b/examples/fxpp_notch/android/Makefile deleted file mode 100644 index 102e94e..0000000 --- a/examples/fxpp_notch/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_notch -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_notch.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_notch/daisy-seed/Makefile b/examples/fxpp_notch/daisy-seed/Makefile deleted file mode 100644 index 62a2de3..0000000 --- a/examples/fxpp_notch/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_notch - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_notch.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_notch/daisy-seed/config_daisy_seed.h b/examples/fxpp_notch/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_notch/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_notch/ios/Makefile b/examples/fxpp_notch/ios/Makefile deleted file mode 100644 index 44e0856..0000000 --- a/examples/fxpp_notch/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_notch -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_notch/src/bw_example_fxpp_notch.cpp b/examples/fxpp_notch/src/bw_example_fxpp_notch.cpp deleted file mode 100644 index 90ce67e..0000000 --- a/examples/fxpp_notch/src/bw_example_fxpp_notch.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_notch.h" - -void bw_example_fxpp_notch_init(bw_example_fxpp_notch *instance) { - (void)instance; -} - -void bw_example_fxpp_notch_set_sample_rate(bw_example_fxpp_notch *instance, float sample_rate) { - instance->notch.setSampleRate(sample_rate); -} - -void bw_example_fxpp_notch_reset(bw_example_fxpp_notch *instance) { - instance->notch.reset(); -} - -void bw_example_fxpp_notch_process(bw_example_fxpp_notch *instance, const float** x, float** y, int n_samples) { - instance->notch.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_notch_set_parameter(bw_example_fxpp_notch *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->notch.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_Q: - instance->notch.setQ(0.5f + 9.5f * value); - break; - } -} - -float bw_example_fxpp_notch_get_parameter(bw_example_fxpp_notch *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_notch/src/bw_example_fxpp_notch.h b/examples/fxpp_notch/src/bw_example_fxpp_notch.h deleted file mode 100644 index 24daf8b..0000000 --- a/examples/fxpp_notch/src/bw_example_fxpp_notch.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_NOTCH_H -#define _BW_EXAMPLE_FXPP_NOTCH_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_Q, - p_n -}; - -struct _bw_example_fxpp_notch { - // Sub-components - Notch<1> notch; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_notch bw_example_fxpp_notch; - -void bw_example_fxpp_notch_init(bw_example_fxpp_notch *instance); -void bw_example_fxpp_notch_set_sample_rate(bw_example_fxpp_notch *instance, float sample_rate); -void bw_example_fxpp_notch_reset(bw_example_fxpp_notch *instance); -void bw_example_fxpp_notch_process(bw_example_fxpp_notch *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_notch_set_parameter(bw_example_fxpp_notch *instance, int index, float value); -float bw_example_fxpp_notch_get_parameter(bw_example_fxpp_notch *instance, int index); - -} - -#endif diff --git a/examples/fxpp_notch/src/config.h b/examples/fxpp_notch/src/config.h deleted file mode 100644 index db23067..0000000 --- a/examples/fxpp_notch/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_notch" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Q", "Q", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_notch.h" - -#define P_TYPE bw_example_fxpp_notch -#define P_INIT bw_example_fxpp_notch_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_notch_set_sample_rate -#define P_RESET bw_example_fxpp_notch_reset -#define P_PROCESS bw_example_fxpp_notch_process -#define P_SET_PARAMETER bw_example_fxpp_notch_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_notch_get_parameter - -#endif diff --git a/examples/fxpp_notch/src/config.js b/examples/fxpp_notch/src/config.js deleted file mode 100644 index fef667c..0000000 --- a/examples/fxpp_notch/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Q", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_notch/vst3/Makefile b/examples/fxpp_notch/vst3/Makefile deleted file mode 100644 index c831bd9..0000000 --- a/examples/fxpp_notch/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_notch -SOURCE := bw_example_fxpp_notch.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_notch/vst3/config_vst3.h b/examples/fxpp_notch/vst3/config_vst3.h deleted file mode 100644 index bc5024c..0000000 --- a/examples/fxpp_notch/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x42ed7e51 -#define PLUGIN_GUID_2 0xd2294b82 -#define PLUGIN_GUID_3 0xae102911 -#define PLUGIN_GUID_4 0x1cd55cdd - -#define CTRL_GUID_1 0xafd02bdf -#define CTRL_GUID_2 0xe0054347 -#define CTRL_GUID_3 0xb1b0faca -#define CTRL_GUID_4 0x968932f2 - -#endif diff --git a/examples/fxpp_one_pole/android/Makefile b/examples/fxpp_one_pole/android/Makefile deleted file mode 100644 index bd2e492..0000000 --- a/examples/fxpp_one_pole/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_one_pole -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_one_pole.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_one_pole/daisy-seed/Makefile b/examples/fxpp_one_pole/daisy-seed/Makefile deleted file mode 100644 index 9d7dd8a..0000000 --- a/examples/fxpp_one_pole/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_one_pole - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_one_pole.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_one_pole/daisy-seed/config_daisy_seed.h b/examples/fxpp_one_pole/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_one_pole/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_one_pole/ios/Makefile b/examples/fxpp_one_pole/ios/Makefile deleted file mode 100644 index 9a03479..0000000 --- a/examples/fxpp_one_pole/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_one_pole -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.cpp b/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.cpp deleted file mode 100644 index c5624c4..0000000 --- a/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_one_pole.h" - -void bw_example_fxpp_one_pole_init(bw_example_fxpp_one_pole *instance) { - (void)instance; -} - -void bw_example_fxpp_one_pole_set_sample_rate(bw_example_fxpp_one_pole *instance, float sample_rate) { - instance->one_pole.setSampleRate(sample_rate); -} - -void bw_example_fxpp_one_pole_reset(bw_example_fxpp_one_pole *instance) { - instance->one_pole.reset(); -} - -void bw_example_fxpp_one_pole_process(bw_example_fxpp_one_pole *instance, const float** x, float** y, int n_samples) { - instance->one_pole.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_one_pole_set_parameter(bw_example_fxpp_one_pole *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->one_pole.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - } -} - -float bw_example_fxpp_one_pole_get_parameter(bw_example_fxpp_one_pole *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.h b/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.h deleted file mode 100644 index 72faf95..0000000 --- a/examples/fxpp_one_pole/src/bw_example_fxpp_one_pole.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_ONE_POLE_H -#define _BW_EXAMPLE_FXPP_ONE_POLE_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_n -}; - -struct _bw_example_fxpp_one_pole { - // Sub-components - OnePole<1> one_pole; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_one_pole bw_example_fxpp_one_pole; - -void bw_example_fxpp_one_pole_init(bw_example_fxpp_one_pole *instance); -void bw_example_fxpp_one_pole_set_sample_rate(bw_example_fxpp_one_pole *instance, float sample_rate); -void bw_example_fxpp_one_pole_reset(bw_example_fxpp_one_pole *instance); -void bw_example_fxpp_one_pole_process(bw_example_fxpp_one_pole *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_one_pole_set_parameter(bw_example_fxpp_one_pole *instance, int index, float value); -float bw_example_fxpp_one_pole_get_parameter(bw_example_fxpp_one_pole *instance, int index); - -} - -#endif diff --git a/examples/fxpp_one_pole/src/config.h b/examples/fxpp_one_pole/src/config.h deleted file mode 100644 index 572b803..0000000 --- a/examples/fxpp_one_pole/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_one_pole" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_one_pole.h" - -#define P_TYPE bw_example_fxpp_one_pole -#define P_INIT bw_example_fxpp_one_pole_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_one_pole_set_sample_rate -#define P_RESET bw_example_fxpp_one_pole_reset -#define P_PROCESS bw_example_fxpp_one_pole_process -#define P_SET_PARAMETER bw_example_fxpp_one_pole_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_one_pole_get_parameter - -#endif diff --git a/examples/fxpp_one_pole/src/config.js b/examples/fxpp_one_pole/src/config.js deleted file mode 100644 index 7062107..0000000 --- a/examples/fxpp_one_pole/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_one_pole/vst3/Makefile b/examples/fxpp_one_pole/vst3/Makefile deleted file mode 100644 index ea3a60b..0000000 --- a/examples/fxpp_one_pole/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_one_pole -SOURCE := bw_example_fxpp_one_pole.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_one_pole/vst3/config_vst3.h b/examples/fxpp_one_pole/vst3/config_vst3.h deleted file mode 100644 index 93e6e1d..0000000 --- a/examples/fxpp_one_pole/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0xa81c3d7c -#define PLUGIN_GUID_2 0x6744485a -#define PLUGIN_GUID_3 0xada4450c -#define PLUGIN_GUID_4 0xb946ecdd - -#define CTRL_GUID_1 0x7bcf2712 -#define CTRL_GUID_2 0x295a4684 -#define CTRL_GUID_3 0xa5a975ee -#define CTRL_GUID_4 0xbb941354 - -#endif diff --git a/examples/fxpp_pan/android/Makefile b/examples/fxpp_pan/android/Makefile deleted file mode 100644 index 8d67d8c..0000000 --- a/examples/fxpp_pan/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_pan -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_pan.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_pan/daisy-seed/Makefile b/examples/fxpp_pan/daisy-seed/Makefile deleted file mode 100644 index 5b63222..0000000 --- a/examples/fxpp_pan/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_pan - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_pan.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_pan/daisy-seed/config_daisy_seed.h b/examples/fxpp_pan/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_pan/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_pan/ios/Makefile b/examples/fxpp_pan/ios/Makefile deleted file mode 100644 index b1a4841..0000000 --- a/examples/fxpp_pan/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_pan -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_pan/src/bw_example_fxpp_pan.cpp b/examples/fxpp_pan/src/bw_example_fxpp_pan.cpp deleted file mode 100644 index f29d399..0000000 --- a/examples/fxpp_pan/src/bw_example_fxpp_pan.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_pan.h" - -void bw_example_fxpp_pan_init(bw_example_fxpp_pan *instance) { - (void)instance; -} - -void bw_example_fxpp_pan_set_sample_rate(bw_example_fxpp_pan *instance, float sample_rate) { - instance->pan.setSampleRate(sample_rate); - instance->ppm.setSampleRate(sample_rate); -} - -void bw_example_fxpp_pan_reset(bw_example_fxpp_pan *instance) { - instance->pan.reset(); - instance->ppm.reset(); -} - -void bw_example_fxpp_pan_process(bw_example_fxpp_pan *instance, const float** x, float** y, int n_samples) { - instance->pan.process({x[0]}, {y[0]}, {y[1]}, n_samples); - instance->ppm.process({y[0], y[1]}, {nullptr, nullptr}, n_samples); -} - -void bw_example_fxpp_pan_set_parameter(bw_example_fxpp_pan *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_pan: - instance->pan.setPan(value + value - 1.f); - break; - } -} - -float bw_example_fxpp_pan_get_parameter(bw_example_fxpp_pan *instance, int index) { - float r = 0.f; - switch (index) { - case p_pan: - r = instance->params[p_pan]; - break; - case p_pan + 1: - { - const float v = instance->ppm.getYZ1(0); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - case p_pan + 2: - { - const float v = instance->ppm.getYZ1(1); - r = v < -200.f ? 0.f : bw_clipf(0.01666666666666667f * v + 1.f, 0.f, 1.f); - break; - } - } - return r; -} diff --git a/examples/fxpp_pan/src/bw_example_fxpp_pan.h b/examples/fxpp_pan/src/bw_example_fxpp_pan.h deleted file mode 100644 index ec4aba5..0000000 --- a/examples/fxpp_pan/src/bw_example_fxpp_pan.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_PAN_H -#define _BW_EXAMPLE_FXPP_PAN_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_pan, - p_n -}; - -struct _bw_example_fxpp_pan { - // Sub-components - Pan<1> pan; - PPM<2> ppm; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_pan bw_example_fxpp_pan; - -void bw_example_fxpp_pan_init(bw_example_fxpp_pan *instance); -void bw_example_fxpp_pan_set_sample_rate(bw_example_fxpp_pan *instance, float sample_rate); -void bw_example_fxpp_pan_reset(bw_example_fxpp_pan *instance); -void bw_example_fxpp_pan_process(bw_example_fxpp_pan *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_pan_set_parameter(bw_example_fxpp_pan *instance, int index, float value); -float bw_example_fxpp_pan_get_parameter(bw_example_fxpp_pan *instance, int index); - -} - -#endif diff --git a/examples/fxpp_pan/src/config.h b/examples/fxpp_pan/src/config.h deleted file mode 100644 index 99d2532..0000000 --- a/examples/fxpp_pan/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_pan" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 2 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_STEREO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_STEREO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Pan", "Pan", "", 0, 0, 0, 0.5f }, - { "Left level", "L Level", "", 1, 0, 0, 0.f }, - { "Right level", "R Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_pan.h" - -#define P_TYPE bw_example_fxpp_pan -#define P_INIT bw_example_fxpp_pan_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_pan_set_sample_rate -#define P_RESET bw_example_fxpp_pan_reset -#define P_PROCESS bw_example_fxpp_pan_process -#define P_SET_PARAMETER bw_example_fxpp_pan_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_pan_get_parameter - -#endif diff --git a/examples/fxpp_pan/src/config.js b/examples/fxpp_pan/src/config.js deleted file mode 100644 index 8bd233b..0000000 --- a/examples/fxpp_pan/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: true, - output: true - } -]; - -var parameters = [ - { - name: "Pan", - output: false, - defaultValue: 0.5 - }, - { - name: "Left level", - output: true, - defaultValue: 0.0 - }, - { - name: "Right level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_pan/vst3/Makefile b/examples/fxpp_pan/vst3/Makefile deleted file mode 100644 index 61e7a90..0000000 --- a/examples/fxpp_pan/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_pan -SOURCE := bw_example_fxpp_pan.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_pan/vst3/config_vst3.h b/examples/fxpp_pan/vst3/config_vst3.h deleted file mode 100644 index 5644edf..0000000 --- a/examples/fxpp_pan/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Spatial" - -#define PLUGIN_GUID_1 0x47d6ebcd -#define PLUGIN_GUID_2 0x744540f2 -#define PLUGIN_GUID_3 0x8ea345d6 -#define PLUGIN_GUID_4 0x89a2a236 - -#define CTRL_GUID_1 0x646c6d37 -#define CTRL_GUID_2 0xfbe846af -#define CTRL_GUID_3 0xa5e16bd7 -#define CTRL_GUID_4 0x6d1676c6 - -#endif diff --git a/examples/fxpp_phaser/android/Makefile b/examples/fxpp_phaser/android/Makefile deleted file mode 100644 index dac2918..0000000 --- a/examples/fxpp_phaser/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_phaser -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_phaser.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_phaser/daisy-seed/Makefile b/examples/fxpp_phaser/daisy-seed/Makefile deleted file mode 100644 index 61d3ed5..0000000 --- a/examples/fxpp_phaser/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_phaser - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_phaser.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_phaser/daisy-seed/config_daisy_seed.h b/examples/fxpp_phaser/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 8aa4923..0000000 --- a/examples/fxpp_phaser/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 3 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 } -}; - -#endif diff --git a/examples/fxpp_phaser/ios/Makefile b/examples/fxpp_phaser/ios/Makefile deleted file mode 100644 index a9a1227..0000000 --- a/examples/fxpp_phaser/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_phaser -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_phaser/src/bw_example_fxpp_phaser.cpp b/examples/fxpp_phaser/src/bw_example_fxpp_phaser.cpp deleted file mode 100644 index 1abe28c..0000000 --- a/examples/fxpp_phaser/src/bw_example_fxpp_phaser.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can rephaserribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is phaserributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_phaser.h" - -void bw_example_fxpp_phaser_init(bw_example_fxpp_phaser *instance) { - (void)instance; -} - -void bw_example_fxpp_phaser_set_sample_rate(bw_example_fxpp_phaser *instance, float sample_rate) { - instance->phaser.setSampleRate(sample_rate); -} - -void bw_example_fxpp_phaser_reset(bw_example_fxpp_phaser *instance) { - instance->phaser.reset(); -} - -void bw_example_fxpp_phaser_process(bw_example_fxpp_phaser *instance, const float** x, float** y, int n_samples) { - instance->phaser.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_phaser_set_parameter(bw_example_fxpp_phaser *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_rate: - instance->phaser.setRate((5.f - 0.1f) * value * value * value + 0.1f); - break; - case p_center: - instance->phaser.setCenter((10e3f - 100.f) * value * value * value + 100.f); - break; - case p_amount: - instance->phaser.setAmount(4.f * value); - break; - } -} - -float bw_example_fxpp_phaser_get_parameter(bw_example_fxpp_phaser *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_phaser/src/bw_example_fxpp_phaser.h b/examples/fxpp_phaser/src/bw_example_fxpp_phaser.h deleted file mode 100644 index 17d749a..0000000 --- a/examples/fxpp_phaser/src/bw_example_fxpp_phaser.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can rephaserribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is phaserributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_PHASER_H -#define _BW_EXAMPLE_FXPP_PHASER_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_rate, - p_center, - p_amount, - p_n -}; - -struct _bw_example_fxpp_phaser { - // Sub-components - Phaser<1> phaser; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_phaser bw_example_fxpp_phaser; - -void bw_example_fxpp_phaser_init(bw_example_fxpp_phaser *instance); -void bw_example_fxpp_phaser_set_sample_rate(bw_example_fxpp_phaser *instance, float sample_rate); -void bw_example_fxpp_phaser_reset(bw_example_fxpp_phaser *instance); -void bw_example_fxpp_phaser_process(bw_example_fxpp_phaser *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_phaser_set_parameter(bw_example_fxpp_phaser *instance, int index, float value); -float bw_example_fxpp_phaser_get_parameter(bw_example_fxpp_phaser *instance, int index); - -} - -#endif diff --git a/examples/fxpp_phaser/src/config.h b/examples/fxpp_phaser/src/config.h deleted file mode 100644 index 9d149ee..0000000 --- a/examples/fxpp_phaser/src/config.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can rephaserribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is phaserributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_phaser" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 3 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Modulation rate", "Rate", "", 0, 0, 0, 0.5f }, - { "Center frequency", "Center", "", 0, 0, 0, 0.5f }, - { "Modulation amount", "Amount", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_phaser.h" - -#define P_TYPE bw_example_fxpp_phaser -#define P_INIT bw_example_fxpp_phaser_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_phaser_set_sample_rate -#define P_RESET bw_example_fxpp_phaser_reset -#define P_PROCESS bw_example_fxpp_phaser_process -#define P_SET_PARAMETER bw_example_fxpp_phaser_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_phaser_get_parameter - -#endif diff --git a/examples/fxpp_phaser/src/config.js b/examples/fxpp_phaser/src/config.js deleted file mode 100644 index 5c01118..0000000 --- a/examples/fxpp_phaser/src/config.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Modulation rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Center frequency", - output: false, - defaultValue: 0.5 - }, - { - name: "Modulation amount", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_phaser/vst3/Makefile b/examples/fxpp_phaser/vst3/Makefile deleted file mode 100644 index 0d3e052..0000000 --- a/examples/fxpp_phaser/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_phaser -SOURCE := bw_example_fxpp_phaser.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_phaser/vst3/config_vst3.h b/examples/fxpp_phaser/vst3/config_vst3.h deleted file mode 100644 index a93f2e1..0000000 --- a/examples/fxpp_phaser/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Modulation" - -#define PLUGIN_GUID_1 0x801d1cc1 -#define PLUGIN_GUID_2 0x9cb64004 -#define PLUGIN_GUID_3 0xb7edff5c -#define PLUGIN_GUID_4 0x0f297831 - -#define CTRL_GUID_1 0xebe32e3c -#define CTRL_GUID_2 0x3cb3469b -#define CTRL_GUID_3 0x9879d371 -#define CTRL_GUID_4 0x1c695fdb - -#endif diff --git a/examples/fxpp_reverb/android/Makefile b/examples/fxpp_reverb/android/Makefile deleted file mode 100644 index 60951f2..0000000 --- a/examples/fxpp_reverb/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_reverb -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_reverb.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_reverb/daisy-seed/Makefile b/examples/fxpp_reverb/daisy-seed/Makefile deleted file mode 100644 index ddc4f4c..0000000 --- a/examples/fxpp_reverb/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_reverb - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_reverb.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_reverb/daisy-seed/config_daisy_seed.h b/examples/fxpp_reverb/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 73abded..0000000 --- a/examples/fxpp_reverb/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 5 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 }, - { 2, 17 }, - { 3, 18 }, - { 4, 19 } -}; - -#endif diff --git a/examples/fxpp_reverb/ios/Makefile b/examples/fxpp_reverb/ios/Makefile deleted file mode 100644 index dbff83d..0000000 --- a/examples/fxpp_reverb/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_reverb -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_reverb/src/bw_example_fxpp_reverb.cpp b/examples/fxpp_reverb/src/bw_example_fxpp_reverb.cpp deleted file mode 100644 index e83bc8e..0000000 --- a/examples/fxpp_reverb/src/bw_example_fxpp_reverb.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_reverb.h" - -void bw_example_fxpp_reverb_init(bw_example_fxpp_reverb *instance) { - (void)instance; -} - -void bw_example_fxpp_reverb_set_sample_rate(bw_example_fxpp_reverb *instance, float sample_rate) { - instance->reverb.setSampleRate(sample_rate); -} - -void bw_example_fxpp_reverb_reset(bw_example_fxpp_reverb *instance) { - instance->reverb.reset(); -} - -void bw_example_fxpp_reverb_process(bw_example_fxpp_reverb *instance, const float** x, float** y, int n_samples) { - instance->reverb.process({x[0]}, {x[1]}, {y[0]}, {y[1]}, n_samples); -} - -void bw_example_fxpp_reverb_set_parameter(bw_example_fxpp_reverb *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_predelay: - instance->reverb.setPredelay(0.1f * value); - break; - case p_bandwidth: - instance->reverb.setBandwidth(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_damping: - instance->reverb.setDamping(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_decay: - instance->reverb.setDecay(bw_minf(value, 0.999f)); - break; - case p_drywet: - instance->reverb.setWet(value); - break; - } -} - -float bw_example_fxpp_reverb_get_parameter(bw_example_fxpp_reverb *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_reverb/src/bw_example_fxpp_reverb.h b/examples/fxpp_reverb/src/bw_example_fxpp_reverb.h deleted file mode 100644 index dab6f69..0000000 --- a/examples/fxpp_reverb/src/bw_example_fxpp_reverb.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_REVERB_H -#define _BW_EXAMPLE_FXPP_REVERB_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_predelay, - p_bandwidth, - p_damping, - p_decay, - p_drywet, - p_n -}; - -struct _bw_example_fxpp_reverb { - // Sub-components - Reverb<1> reverb; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_reverb bw_example_fxpp_reverb; - -void bw_example_fxpp_reverb_init(bw_example_fxpp_reverb *instance); -void bw_example_fxpp_reverb_set_sample_rate(bw_example_fxpp_reverb *instance, float sample_rate); -void bw_example_fxpp_reverb_reset(bw_example_fxpp_reverb *instance); -void bw_example_fxpp_reverb_process(bw_example_fxpp_reverb *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_reverb_set_parameter(bw_example_fxpp_reverb *instance, int index, float value); -float bw_example_fxpp_reverb_get_parameter(bw_example_fxpp_reverb *instance, int index); - -} - -#endif diff --git a/examples/fxpp_reverb/src/config.h b/examples/fxpp_reverb/src/config.h deleted file mode 100644 index 9bcf67d..0000000 --- a/examples/fxpp_reverb/src/config.h +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_reverb" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 2 -#define NUM_CHANNELS_OUT 2 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_STEREO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_STEREO } -}; - -#define NUM_PARAMETERS 5 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Predelay", "Predelay", "", 0, 0, 0, 0.f }, - { "Bandwidth", "Bandwidth", "", 0, 0, 0, 1.f }, - { "Damping", "Damping", "", 0, 0, 0, 1.f }, - { "Decay rate", "Decay", "", 0, 0, 0, 0.5f }, - { "Dry/wet", "Dry/wet", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_reverb.h" - -#define P_TYPE bw_example_fxpp_reverb -#define P_INIT bw_example_fxpp_reverb_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_reverb_set_sample_rate -#define P_RESET bw_example_fxpp_reverb_reset -#define P_PROCESS bw_example_fxpp_reverb_process -#define P_SET_PARAMETER bw_example_fxpp_reverb_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_reverb_get_parameter - -#endif diff --git a/examples/fxpp_reverb/src/config.js b/examples/fxpp_reverb/src/config.js deleted file mode 100644 index 631467d..0000000 --- a/examples/fxpp_reverb/src/config.js +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Predelay", - output: false, - defaultValue: 0.0 - }, - { - name: "Bandwidth", - output: false, - defaultValue: 1.0 - }, - { - name: "Damping", - output: false, - defaultValue: 1.0 - }, - { - name: "Decay rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Dry/wet", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_reverb/vst3/Makefile b/examples/fxpp_reverb/vst3/Makefile deleted file mode 100644 index 529c282..0000000 --- a/examples/fxpp_reverb/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_reverb -SOURCE := bw_example_fxpp_reverb.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_reverb/vst3/config_vst3.h b/examples/fxpp_reverb/vst3/config_vst3.h deleted file mode 100644 index bfb99e9..0000000 --- a/examples/fxpp_reverb/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Reverb" - -#define PLUGIN_GUID_1 0xb95738c1 -#define PLUGIN_GUID_2 0x36434bd2 -#define PLUGIN_GUID_3 0x9c3789b5 -#define PLUGIN_GUID_4 0x3897dc56 - -#define CTRL_GUID_1 0xa0733529 -#define CTRL_GUID_2 0x23d54387 -#define CTRL_GUID_3 0xb3d62f74 -#define CTRL_GUID_4 0x9bc872c2 - -#endif diff --git a/examples/fxpp_ring_mod/android/Makefile b/examples/fxpp_ring_mod/android/Makefile deleted file mode 100644 index 334f877..0000000 --- a/examples/fxpp_ring_mod/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ring_mod -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_ring_mod.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_ring_mod/daisy-seed/Makefile b/examples/fxpp_ring_mod/daisy-seed/Makefile deleted file mode 100644 index 1aba51c..0000000 --- a/examples/fxpp_ring_mod/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_ring_mod - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_ring_mod.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_ring_mod/daisy-seed/config_daisy_seed.h b/examples/fxpp_ring_mod/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_ring_mod/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_ring_mod/ios/Makefile b/examples/fxpp_ring_mod/ios/Makefile deleted file mode 100644 index fd7d079..0000000 --- a/examples/fxpp_ring_mod/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ring_mod -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.cpp b/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.cpp deleted file mode 100644 index b38886d..0000000 --- a/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.cpp +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_ring_mod.h" - -#include - -void bw_example_fxpp_ring_mod_init(bw_example_fxpp_ring_mod *instance) { - (void)instance; -} - -void bw_example_fxpp_ring_mod_set_sample_rate(bw_example_fxpp_ring_mod *instance, float sample_rate) { - instance->phaseGen.setSampleRate(sample_rate); - instance->ringMod.setSampleRate(sample_rate); -} - -void bw_example_fxpp_ring_mod_reset(bw_example_fxpp_ring_mod *instance) { - instance->phaseGen.reset(); - instance->ringMod.reset(); -} - -void bw_example_fxpp_ring_mod_process(bw_example_fxpp_ring_mod *instance, const float** x, float** y, int n_samples) { - instance->phaseGen.process({}, {y[0]}, {}, n_samples); - oscSinProcess<1>({y[0]}, {y[0]}, n_samples); - instance->ringMod.process({x[0]}, {y[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_ring_mod_set_parameter(bw_example_fxpp_ring_mod *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_freq: - instance->phaseGen.setFrequency(100.f + (1000.f - 100.f) * value * value * value); - break; - case p_amount: - instance->ringMod.setAmount(-1.f + 2.f * value); - break; - } -} - -float bw_example_fxpp_ring_mod_get_parameter(bw_example_fxpp_ring_mod *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.h b/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.h deleted file mode 100644 index 899e4f3..0000000 --- a/examples/fxpp_ring_mod/src/bw_example_fxpp_ring_mod.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_WAH_H -#define _BW_EXAMPLE_FXPP_WAH_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_freq, - p_amount, - p_n -}; - -struct _bw_example_fxpp_ring_mod { - // Sub-components - PhaseGen<1> phaseGen; - RingMod<1> ringMod; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_ring_mod bw_example_fxpp_ring_mod; - -void bw_example_fxpp_ring_mod_init(bw_example_fxpp_ring_mod *instance); -void bw_example_fxpp_ring_mod_set_sample_rate(bw_example_fxpp_ring_mod *instance, float sample_rate); -void bw_example_fxpp_ring_mod_reset(bw_example_fxpp_ring_mod *instance); -void bw_example_fxpp_ring_mod_process(bw_example_fxpp_ring_mod *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_ring_mod_set_parameter(bw_example_fxpp_ring_mod *instance, int index, float value); -float bw_example_fxpp_ring_mod_get_parameter(bw_example_fxpp_ring_mod *instance, int index); - -} - -#endif diff --git a/examples/fxpp_ring_mod/src/config.h b/examples/fxpp_ring_mod/src/config.h deleted file mode 100644 index 81163f4..0000000 --- a/examples/fxpp_ring_mod/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_ring_mod" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Frequency", "Freq", "Hz", 0, 0, 0, 0.5f }, - { "Amount", "Amount", "", 0, 0, 0, 1.0f }, -}; - -// Internal API - -#include "bw_example_fxpp_ring_mod.h" - -#define P_TYPE bw_example_fxpp_ring_mod -#define P_INIT bw_example_fxpp_ring_mod_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_ring_mod_set_sample_rate -#define P_RESET bw_example_fxpp_ring_mod_reset -#define P_PROCESS bw_example_fxpp_ring_mod_process -#define P_SET_PARAMETER bw_example_fxpp_ring_mod_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_ring_mod_get_parameter - -#endif diff --git a/examples/fxpp_ring_mod/src/config.js b/examples/fxpp_ring_mod/src/config.js deleted file mode 100644 index a47b8e7..0000000 --- a/examples/fxpp_ring_mod/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Frequency", - output: false, - defaultValue: 0.5 - }, - { - name: "Amount", - output: false, - defaultValue: 1.0 - } -]; diff --git a/examples/fxpp_ring_mod/vst3/Makefile b/examples/fxpp_ring_mod/vst3/Makefile deleted file mode 100644 index c6f3720..0000000 --- a/examples/fxpp_ring_mod/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_ring_mod -SOURCE := bw_example_fxpp_ring_mod.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_ring_mod/vst3/config_vst3.h b/examples/fxpp_ring_mod/vst3/config_vst3.h deleted file mode 100644 index 34f4c8b..0000000 --- a/examples/fxpp_ring_mod/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx" - -#define PLUGIN_GUID_1 0xf4737471 -#define PLUGIN_GUID_2 0xb94c4c95 -#define PLUGIN_GUID_3 0x8f4091ce -#define PLUGIN_GUID_4 0x5da09fa8 - -#define CTRL_GUID_1 0x1e8f7e86 -#define CTRL_GUID_2 0xc29447c1 -#define CTRL_GUID_3 0x91f175ce -#define CTRL_GUID_4 0x220b5635 - -#endif diff --git a/examples/fxpp_satur/android/Makefile b/examples/fxpp_satur/android/Makefile deleted file mode 100644 index 709f011..0000000 --- a/examples/fxpp_satur/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_satur -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_satur.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_satur/daisy-seed/Makefile b/examples/fxpp_satur/daisy-seed/Makefile deleted file mode 100644 index 2912c6b..0000000 --- a/examples/fxpp_satur/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_satur - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_satur.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_satur/daisy-seed/config_daisy_seed.h b/examples/fxpp_satur/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_satur/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_satur/ios/Makefile b/examples/fxpp_satur/ios/Makefile deleted file mode 100644 index a14e6c3..0000000 --- a/examples/fxpp_satur/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_satur -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_satur/src/bw_example_fxpp_satur.cpp b/examples/fxpp_satur/src/bw_example_fxpp_satur.cpp deleted file mode 100644 index c15d44c..0000000 --- a/examples/fxpp_satur/src/bw_example_fxpp_satur.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_satur.h" - -void bw_example_fxpp_satur_init(bw_example_fxpp_satur *instance) { - instance->satur.setGainCompensation(true); -} - -void bw_example_fxpp_satur_set_sample_rate(bw_example_fxpp_satur *instance, float sample_rate) { - instance->satur.setSampleRate(2.f * sample_rate); -} - -void bw_example_fxpp_satur_reset(bw_example_fxpp_satur *instance) { - instance->satur.reset(); - instance->srcUp.reset(); - instance->srcDown.reset(); -} - -void bw_example_fxpp_satur_process(bw_example_fxpp_satur *instance, const float** x, float** y, int n_samples) { - int i = 0; - while (i < n_samples) { - int n = bw_mini32(n_samples - i, BUF_SIZE >> 1); - instance->srcUp.process({x[0] + i}, {instance->buf}, n); - instance->satur.process({instance->buf}, {instance->buf}, n << 1); - instance->srcDown.process({instance->buf}, {y[0] + i}, n << 1); - i += n; - } -} - -void bw_example_fxpp_satur_set_parameter(bw_example_fxpp_satur *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_bias: - instance->satur.setBias(5.f * value - 2.5f); - break; - case p_gain: - instance->satur.setGain(0.1f + (10.f - 0.1f) * value * value * value); - break; - } -} - -float bw_example_fxpp_satur_get_parameter(bw_example_fxpp_satur *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_satur/src/bw_example_fxpp_satur.h b/examples/fxpp_satur/src/bw_example_fxpp_satur.h deleted file mode 100644 index 8726c1e..0000000 --- a/examples/fxpp_satur/src/bw_example_fxpp_satur.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_SATUR_H -#define _BW_EXAMPLE_FXPP_SATUR_H - -#include "platform.h" - -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_bias, - p_gain, - p_n -}; - -#define BUF_SIZE 32 - -struct _bw_example_fxpp_satur { - // Sub-components - Satur<1> satur; - SRCInt<1> srcUp; - SRCInt<1> srcDown; - - // Parameters - float params[p_n]; - - // Buffers - float buf[BUF_SIZE]; - - _bw_example_fxpp_satur() : srcUp(2), srcDown(-2) {} -}; -typedef struct _bw_example_fxpp_satur bw_example_fxpp_satur; - -void bw_example_fxpp_satur_init(bw_example_fxpp_satur *instance); -void bw_example_fxpp_satur_set_sample_rate(bw_example_fxpp_satur *instance, float sample_rate); -void bw_example_fxpp_satur_reset(bw_example_fxpp_satur *instance); -void bw_example_fxpp_satur_process(bw_example_fxpp_satur *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_satur_set_parameter(bw_example_fxpp_satur *instance, int index, float value); -float bw_example_fxpp_satur_get_parameter(bw_example_fxpp_satur *instance, int index); - -} - -#endif diff --git a/examples/fxpp_satur/src/config.h b/examples/fxpp_satur/src/config.h deleted file mode 100644 index c3add22..0000000 --- a/examples/fxpp_satur/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_satur" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Bias", "Bias", "", 0, 0, 0, 0.5f }, - { "Gain", "Gain", "", 0, 0, 0, 0.4641588833612779f } -}; - -// Internal API - -#include "bw_example_fxpp_satur.h" - -#define P_TYPE bw_example_fxpp_satur -#define P_INIT bw_example_fxpp_satur_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_satur_set_sample_rate -#define P_RESET bw_example_fxpp_satur_reset -#define P_PROCESS bw_example_fxpp_satur_process -#define P_SET_PARAMETER bw_example_fxpp_satur_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_satur_get_parameter - -#endif diff --git a/examples/fxpp_satur/src/config.js b/examples/fxpp_satur/src/config.js deleted file mode 100644 index 285ba62..0000000 --- a/examples/fxpp_satur/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Bias", - output: false, - defaultValue: 0.5 - }, - { - name: "Gain", - output: false, - defaultValue: 0.4641588833612779 - } -]; diff --git a/examples/fxpp_satur/vst3/Makefile b/examples/fxpp_satur/vst3/Makefile deleted file mode 100644 index 1ba6c57..0000000 --- a/examples/fxpp_satur/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_satur -SOURCE := bw_example_fxpp_satur.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_satur/vst3/config_vst3.h b/examples/fxpp_satur/vst3/config_vst3.h deleted file mode 100644 index 4d954b2..0000000 --- a/examples/fxpp_satur/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Distortion" - -#define PLUGIN_GUID_1 0xf7465fb8 -#define PLUGIN_GUID_2 0x8d284b9d -#define PLUGIN_GUID_3 0x842007fe -#define PLUGIN_GUID_4 0xc0301b51 - -#define CTRL_GUID_1 0xab9d28b9 -#define CTRL_GUID_2 0x2cbe44f0 -#define CTRL_GUID_3 0xbbf42db0 -#define CTRL_GUID_4 0x8c0e30ed - -#endif diff --git a/examples/fxpp_slew_lim/android/Makefile b/examples/fxpp_slew_lim/android/Makefile deleted file mode 100644 index 59d6921..0000000 --- a/examples/fxpp_slew_lim/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_slew_lim -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_slew_lim.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_slew_lim/daisy-seed/Makefile b/examples/fxpp_slew_lim/daisy-seed/Makefile deleted file mode 100644 index 2156218..0000000 --- a/examples/fxpp_slew_lim/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_slew_lim - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_slew_lim.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_slew_lim/daisy-seed/config_daisy_seed.h b/examples/fxpp_slew_lim/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_slew_lim/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_slew_lim/ios/Makefile b/examples/fxpp_slew_lim/ios/Makefile deleted file mode 100644 index 1013e5d..0000000 --- a/examples/fxpp_slew_lim/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_slew_lim -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.cpp b/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.cpp deleted file mode 100644 index 7b3e022..0000000 --- a/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_slew_lim.h" - -void bw_example_fxpp_slew_lim_init(bw_example_fxpp_slew_lim *instance) { - (void)instance; -} - -void bw_example_fxpp_slew_lim_set_sample_rate(bw_example_fxpp_slew_lim *instance, float sample_rate) { - instance->slew_lim.setSampleRate(sample_rate); -} - -void bw_example_fxpp_slew_lim_reset(bw_example_fxpp_slew_lim *instance) { - instance->slew_lim.reset(); -} - -void bw_example_fxpp_slew_lim_process(bw_example_fxpp_slew_lim *instance, const float** x, float** y, int n_samples) { - instance->slew_lim.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_slew_lim_set_parameter(bw_example_fxpp_slew_lim *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_max_rate: - instance->slew_lim.setMaxRate((20e3f - 20.f) * value * value * value + 20.f); - break; - } -} - -float bw_example_fxpp_slew_lim_get_parameter(bw_example_fxpp_slew_lim *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.h b/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.h deleted file mode 100644 index fadd06a..0000000 --- a/examples/fxpp_slew_lim/src/bw_example_fxpp_slew_lim.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_SLEW_LIM_H -#define _BW_EXAMPLE_FXPP_SLEW_LIM_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_max_rate, - p_n -}; - -struct _bw_example_fxpp_slew_lim { - // Sub-components - SlewLim<1> slew_lim; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_slew_lim bw_example_fxpp_slew_lim; - -void bw_example_fxpp_slew_lim_init(bw_example_fxpp_slew_lim *instance); -void bw_example_fxpp_slew_lim_set_sample_rate(bw_example_fxpp_slew_lim *instance, float sample_rate); -void bw_example_fxpp_slew_lim_reset(bw_example_fxpp_slew_lim *instance); -void bw_example_fxpp_slew_lim_process(bw_example_fxpp_slew_lim *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_slew_lim_set_parameter(bw_example_fxpp_slew_lim *instance, int index, float value); -float bw_example_fxpp_slew_lim_get_parameter(bw_example_fxpp_slew_lim *instance, int index); - -} - -#endif diff --git a/examples/fxpp_slew_lim/src/config.h b/examples/fxpp_slew_lim/src/config.h deleted file mode 100644 index 6b211b9..0000000 --- a/examples/fxpp_slew_lim/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_slew_lim" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Max rate", "Max rate", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_slew_lim.h" - -#define P_TYPE bw_example_fxpp_slew_lim -#define P_INIT bw_example_fxpp_slew_lim_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_slew_lim_set_sample_rate -#define P_RESET bw_example_fxpp_slew_lim_reset -#define P_PROCESS bw_example_fxpp_slew_lim_process -#define P_SET_PARAMETER bw_example_fxpp_slew_lim_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_slew_lim_get_parameter - -#endif diff --git a/examples/fxpp_slew_lim/src/config.js b/examples/fxpp_slew_lim/src/config.js deleted file mode 100644 index e4f43ff..0000000 --- a/examples/fxpp_slew_lim/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Max rate", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_slew_lim/vst3/Makefile b/examples/fxpp_slew_lim/vst3/Makefile deleted file mode 100644 index b1147e2..0000000 --- a/examples/fxpp_slew_lim/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_slew_lim -SOURCE := bw_example_fxpp_slew_lim.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_slew_lim/vst3/config_vst3.h b/examples/fxpp_slew_lim/vst3/config_vst3.h deleted file mode 100644 index 7f1fa41..0000000 --- a/examples/fxpp_slew_lim/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx" - -#define PLUGIN_GUID_1 0x10830d73 -#define PLUGIN_GUID_2 0xae904193 -#define PLUGIN_GUID_3 0xb599c5fa -#define PLUGIN_GUID_4 0x3c31e924 - -#define CTRL_GUID_1 0xdc9c98a2 -#define CTRL_GUID_2 0x9f56431d -#define CTRL_GUID_3 0x90546e19 -#define CTRL_GUID_4 0x7cdd90a2 - -#endif diff --git a/examples/fxpp_svf/android/Makefile b/examples/fxpp_svf/android/Makefile deleted file mode 100644 index d6c00fe..0000000 --- a/examples/fxpp_svf/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_svf -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_svf.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_svf/daisy-seed/Makefile b/examples/fxpp_svf/daisy-seed/Makefile deleted file mode 100644 index c06256d..0000000 --- a/examples/fxpp_svf/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_svf - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_svf.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_svf/daisy-seed/config_daisy_seed.h b/examples/fxpp_svf/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_svf/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_svf/ios/Makefile b/examples/fxpp_svf/ios/Makefile deleted file mode 100644 index b3d89a0..0000000 --- a/examples/fxpp_svf/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_svf -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_svf/src/bw_example_fxpp_svf.cpp b/examples/fxpp_svf/src/bw_example_fxpp_svf.cpp deleted file mode 100644 index 49481cd..0000000 --- a/examples/fxpp_svf/src/bw_example_fxpp_svf.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_svf.h" - -void bw_example_fxpp_svf_init(bw_example_fxpp_svf *instance) { - (void)instance; -} - -void bw_example_fxpp_svf_set_sample_rate(bw_example_fxpp_svf *instance, float sample_rate) { - instance->svf.setSampleRate(sample_rate); -} - -void bw_example_fxpp_svf_reset(bw_example_fxpp_svf *instance) { - instance->svf.reset(); -} - -void bw_example_fxpp_svf_process(bw_example_fxpp_svf *instance, const float** x, float** y, int n_samples) { - instance->svf.process({x[0]}, {y[0]}, {nullptr}, {nullptr}, n_samples); -} - -void bw_example_fxpp_svf_set_parameter(bw_example_fxpp_svf *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_cutoff: - instance->svf.setCutoff((20e3f - 20.f) * value * value * value + 20.f); - break; - case p_Q: - instance->svf.setQ(0.5f + 9.5f * value); - break; - } -} - -float bw_example_fxpp_svf_get_parameter(bw_example_fxpp_svf *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_svf/src/bw_example_fxpp_svf.h b/examples/fxpp_svf/src/bw_example_fxpp_svf.h deleted file mode 100644 index 2ee97d2..0000000 --- a/examples/fxpp_svf/src/bw_example_fxpp_svf.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_SVF_H -#define _BW_EXAMPLE_FXPP_SVF_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_cutoff, - p_Q, - p_n -}; - -struct _bw_example_fxpp_svf { - // Sub-components - SVF<1> svf; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_svf bw_example_fxpp_svf; - -void bw_example_fxpp_svf_init(bw_example_fxpp_svf *instance); -void bw_example_fxpp_svf_set_sample_rate(bw_example_fxpp_svf *instance, float sample_rate); -void bw_example_fxpp_svf_reset(bw_example_fxpp_svf *instance); -void bw_example_fxpp_svf_process(bw_example_fxpp_svf *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_svf_set_parameter(bw_example_fxpp_svf *instance, int index, float value); -float bw_example_fxpp_svf_get_parameter(bw_example_fxpp_svf *instance, int index); - -} - -#endif diff --git a/examples/fxpp_svf/src/config.h b/examples/fxpp_svf/src/config.h deleted file mode 100644 index ffb4050..0000000 --- a/examples/fxpp_svf/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_svf" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 0.5f }, - { "Q", "Q", "", 0, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_fxpp_svf.h" - -#define P_TYPE bw_example_fxpp_svf -#define P_INIT bw_example_fxpp_svf_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_svf_set_sample_rate -#define P_RESET bw_example_fxpp_svf_reset -#define P_PROCESS bw_example_fxpp_svf_process -#define P_SET_PARAMETER bw_example_fxpp_svf_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_svf_get_parameter - -#endif diff --git a/examples/fxpp_svf/src/config.js b/examples/fxpp_svf/src/config.js deleted file mode 100644 index 05398a8..0000000 --- a/examples/fxpp_svf/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Cutoff", - output: false, - defaultValue: 0.5 - }, - { - name: "Q", - output: false, - defaultValue: 0.0 - } -]; diff --git a/examples/fxpp_svf/vst3/Makefile b/examples/fxpp_svf/vst3/Makefile deleted file mode 100644 index 6cbe886..0000000 --- a/examples/fxpp_svf/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_svf -SOURCE := bw_example_fxpp_svf.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_svf/vst3/config_vst3.h b/examples/fxpp_svf/vst3/config_vst3.h deleted file mode 100644 index 2a7fc75..0000000 --- a/examples/fxpp_svf/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0xf0b3ea08 -#define PLUGIN_GUID_2 0xa3ab4e7c -#define PLUGIN_GUID_3 0xa2b56d64 -#define PLUGIN_GUID_4 0x97cb49b3 - -#define CTRL_GUID_1 0xfdc70e14 -#define CTRL_GUID_2 0x01114f17 -#define CTRL_GUID_3 0x8d1cccd6 -#define CTRL_GUID_4 0x9988f6df - -#endif diff --git a/examples/fxpp_trem/android/Makefile b/examples/fxpp_trem/android/Makefile deleted file mode 100644 index e8c7dbc..0000000 --- a/examples/fxpp_trem/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_trem -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_trem.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_trem/daisy-seed/Makefile b/examples/fxpp_trem/daisy-seed/Makefile deleted file mode 100644 index 48c0d88..0000000 --- a/examples/fxpp_trem/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_trem - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_trem.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_trem/daisy-seed/config_daisy_seed.h b/examples/fxpp_trem/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_trem/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_trem/ios/Makefile b/examples/fxpp_trem/ios/Makefile deleted file mode 100644 index 562a986..0000000 --- a/examples/fxpp_trem/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_trem -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_trem/src/bw_example_fxpp_trem.cpp b/examples/fxpp_trem/src/bw_example_fxpp_trem.cpp deleted file mode 100644 index a7b5233..0000000 --- a/examples/fxpp_trem/src/bw_example_fxpp_trem.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can retremribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is tremributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_trem.h" - -void bw_example_fxpp_trem_init(bw_example_fxpp_trem *instance) { - (void)instance; -} - -void bw_example_fxpp_trem_set_sample_rate(bw_example_fxpp_trem *instance, float sample_rate) { - instance->trem.setSampleRate(sample_rate); -} - -void bw_example_fxpp_trem_reset(bw_example_fxpp_trem *instance) { - instance->trem.reset(); -} - -void bw_example_fxpp_trem_process(bw_example_fxpp_trem *instance, const float** x, float** y, int n_samples) { - instance->trem.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_trem_set_parameter(bw_example_fxpp_trem *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_rate: - instance->trem.setRate((20.f - 1.f) * value * value * value + 1.f); - break; - case p_amount: - instance->trem.setAmount(value); - break; - } -} - -float bw_example_fxpp_trem_get_parameter(bw_example_fxpp_trem *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_trem/src/bw_example_fxpp_trem.h b/examples/fxpp_trem/src/bw_example_fxpp_trem.h deleted file mode 100644 index 9542c2f..0000000 --- a/examples/fxpp_trem/src/bw_example_fxpp_trem.h +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can retremribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is tremributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_TREM_H -#define _BW_EXAMPLE_FXPP_TREM_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_rate, - p_amount, - p_n -}; - -struct _bw_example_fxpp_trem { - // Sub-components - Trem<1> trem; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_trem bw_example_fxpp_trem; - -void bw_example_fxpp_trem_init(bw_example_fxpp_trem *instance); -void bw_example_fxpp_trem_set_sample_rate(bw_example_fxpp_trem *instance, float sample_rate); -void bw_example_fxpp_trem_reset(bw_example_fxpp_trem *instance); -void bw_example_fxpp_trem_process(bw_example_fxpp_trem *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_trem_set_parameter(bw_example_fxpp_trem *instance, int index, float value); -float bw_example_fxpp_trem_get_parameter(bw_example_fxpp_trem *instance, int index); - -} - -#endif diff --git a/examples/fxpp_trem/src/config.h b/examples/fxpp_trem/src/config.h deleted file mode 100644 index 075be67..0000000 --- a/examples/fxpp_trem/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks is free software: you can retremribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 3 of the License. - * - * Brickworks is tremributed 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_trem" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Rate", "Rate", "", 0, 0, 0, 0.5f }, - { "Amount", "Amount", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_trem.h" - -#define P_TYPE bw_example_fxpp_trem -#define P_INIT bw_example_fxpp_trem_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_trem_set_sample_rate -#define P_RESET bw_example_fxpp_trem_reset -#define P_PROCESS bw_example_fxpp_trem_process -#define P_SET_PARAMETER bw_example_fxpp_trem_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_trem_get_parameter - -#endif diff --git a/examples/fxpp_trem/src/config.js b/examples/fxpp_trem/src/config.js deleted file mode 100644 index f704641..0000000 --- a/examples/fxpp_trem/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Amount", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_trem/vst3/Makefile b/examples/fxpp_trem/vst3/Makefile deleted file mode 100644 index 8023891..0000000 --- a/examples/fxpp_trem/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_trem -SOURCE := bw_example_fxpp_trem.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_trem/vst3/config_vst3.h b/examples/fxpp_trem/vst3/config_vst3.h deleted file mode 100644 index 8e10943..0000000 --- a/examples/fxpp_trem/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Modulation" - -#define PLUGIN_GUID_1 0x9b34db74 -#define PLUGIN_GUID_2 0x9ac54cb4 -#define PLUGIN_GUID_3 0xb123bcc0 -#define PLUGIN_GUID_4 0x85cff887 - -#define CTRL_GUID_1 0xe4bdf818 -#define CTRL_GUID_2 0xd8e54d7e -#define CTRL_GUID_3 0xa3f44e05 -#define CTRL_GUID_4 0x2dd106f3 - -#endif diff --git a/examples/fxpp_vibrato/android/Makefile b/examples/fxpp_vibrato/android/Makefile deleted file mode 100644 index 8781dd7..0000000 --- a/examples/fxpp_vibrato/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_vibrato -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_vibrato.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_vibrato/daisy-seed/Makefile b/examples/fxpp_vibrato/daisy-seed/Makefile deleted file mode 100644 index 91aeceb..0000000 --- a/examples/fxpp_vibrato/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_vibrato - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_vibrato.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_vibrato/daisy-seed/config_daisy_seed.h b/examples/fxpp_vibrato/daisy-seed/config_daisy_seed.h deleted file mode 100644 index c56c264..0000000 --- a/examples/fxpp_vibrato/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 2 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 }, - { 1, 16 } -}; - -#endif diff --git a/examples/fxpp_vibrato/ios/Makefile b/examples/fxpp_vibrato/ios/Makefile deleted file mode 100644 index 2a8c9d2..0000000 --- a/examples/fxpp_vibrato/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_vibrato -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.cpp b/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.cpp deleted file mode 100644 index 9083775..0000000 --- a/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.cpp +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_vibrato.h" - -void bw_example_fxpp_vibrato_init(bw_example_fxpp_vibrato *instance) { - instance->chorus.setCoeffX(0.f); - instance->chorus.setCoeffMod(1.f); - instance->chorus.setCoeffFB(0.f); -} - -void bw_example_fxpp_vibrato_set_sample_rate(bw_example_fxpp_vibrato *instance, float sample_rate) { - instance->chorus.setSampleRate(sample_rate); -} - -void bw_example_fxpp_vibrato_reset(bw_example_fxpp_vibrato *instance) { - instance->chorus.reset(); -} - -void bw_example_fxpp_vibrato_process(bw_example_fxpp_vibrato *instance, const float** x, float** y, int n_samples) { - instance->chorus.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_vibrato_set_parameter(bw_example_fxpp_vibrato *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_rate: - instance->chorus.setRate(2.f + 8.f * value * value * value); - break; - case p_depth: - { - float v = 0.0025f * value; - instance->chorus.setDelay(v); - instance->chorus.setAmount(v); - } - break; - } -} - -float bw_example_fxpp_vibrato_get_parameter(bw_example_fxpp_vibrato *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.h b/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.h deleted file mode 100644 index b3bb0a5..0000000 --- a/examples/fxpp_vibrato/src/bw_example_fxpp_vibrato.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_VIBRATO_H -#define _BW_EXAMPLE_FXPP_VIBRATO_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_rate, - p_depth, - p_n -}; - -struct _bw_example_fxpp_vibrato { - // Sub-components - Chorus<1> chorus; - - // Parameters - float params[p_n]; - - _bw_example_fxpp_vibrato() : chorus(0.005f) {} -}; -typedef struct _bw_example_fxpp_vibrato bw_example_fxpp_vibrato; - -void bw_example_fxpp_vibrato_init(bw_example_fxpp_vibrato *instance); -void bw_example_fxpp_vibrato_set_sample_rate(bw_example_fxpp_vibrato *instance, float sample_rate); -void bw_example_fxpp_vibrato_reset(bw_example_fxpp_vibrato *instance); -void bw_example_fxpp_vibrato_process(bw_example_fxpp_vibrato *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_vibrato_set_parameter(bw_example_fxpp_vibrato *instance, int index, float value); -float bw_example_fxpp_vibrato_get_parameter(bw_example_fxpp_vibrato *instance, int index); - -} - -#endif diff --git a/examples/fxpp_vibrato/src/config.h b/examples/fxpp_vibrato/src/config.h deleted file mode 100644 index 1822db9..0000000 --- a/examples/fxpp_vibrato/src/config.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_vibrato" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 2 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Rate", "Rate", "", 0, 0, 0, 0.5f }, - { "Depth", "Depth", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_vibrato.h" - -#define P_TYPE bw_example_fxpp_vibrato -#define P_INIT bw_example_fxpp_vibrato_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_vibrato_set_sample_rate -#define P_RESET bw_example_fxpp_vibrato_reset -#define P_PROCESS bw_example_fxpp_vibrato_process -#define P_SET_PARAMETER bw_example_fxpp_vibrato_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_vibrato_get_parameter - -#endif diff --git a/examples/fxpp_vibrato/src/config.js b/examples/fxpp_vibrato/src/config.js deleted file mode 100644 index f704641..0000000 --- a/examples/fxpp_vibrato/src/config.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Rate", - output: false, - defaultValue: 0.5 - }, - { - name: "Amount", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_vibrato/vst3/Makefile b/examples/fxpp_vibrato/vst3/Makefile deleted file mode 100644 index f8edf13..0000000 --- a/examples/fxpp_vibrato/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_vibrato -SOURCE := bw_example_fxpp_vibrato.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_vibrato/vst3/config_vst3.h b/examples/fxpp_vibrato/vst3/config_vst3.h deleted file mode 100644 index 6a85952..0000000 --- a/examples/fxpp_vibrato/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Modulation" - -#define PLUGIN_GUID_1 0x64cde9d9 -#define PLUGIN_GUID_2 0x3afe4d79 -#define PLUGIN_GUID_3 0x96d61599 -#define PLUGIN_GUID_4 0xbe1fdfe2 - -#define CTRL_GUID_1 0xbdb79309 -#define CTRL_GUID_2 0x267049a6 -#define CTRL_GUID_3 0xb1ae13f9 -#define CTRL_GUID_4 0xd371e2c0 - -#endif diff --git a/examples/fxpp_wah/android/Makefile b/examples/fxpp_wah/android/Makefile deleted file mode 100644 index 39527df..0000000 --- a/examples/fxpp_wah/android/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_wah -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_fxpp_wah.cpp - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/fxpp_wah/daisy-seed/Makefile b/examples/fxpp_wah/daisy-seed/Makefile deleted file mode 100644 index b987444..0000000 --- a/examples/fxpp_wah/daisy-seed/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_fxpp_wah - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_fxpp_wah.cpp - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/fxpp_wah/daisy-seed/config_daisy_seed.h b/examples/fxpp_wah/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 466205b..0000000 --- a/examples/fxpp_wah/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_pin { - int param_index; - int pin; -}; - -#define NUM_PINS 1 - -static struct config_pin config_pins[NUM_PINS] = { - { 0, 15 } -}; - -#endif diff --git a/examples/fxpp_wah/ios/Makefile b/examples/fxpp_wah/ios/Makefile deleted file mode 100644 index 8632511..0000000 --- a/examples/fxpp_wah/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_wah -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/fxpp_wah/src/bw_example_fxpp_wah.cpp b/examples/fxpp_wah/src/bw_example_fxpp_wah.cpp deleted file mode 100644 index 4fa0469..0000000 --- a/examples/fxpp_wah/src/bw_example_fxpp_wah.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_fxpp_wah.h" - -void bw_example_fxpp_wah_init(bw_example_fxpp_wah *instance) { - (void)instance; -} - -void bw_example_fxpp_wah_set_sample_rate(bw_example_fxpp_wah *instance, float sample_rate) { - instance->wah.setSampleRate(sample_rate); -} - -void bw_example_fxpp_wah_reset(bw_example_fxpp_wah *instance) { - instance->wah.reset(); -} - -void bw_example_fxpp_wah_process(bw_example_fxpp_wah *instance, const float** x, float** y, int n_samples) { - instance->wah.process({x[0]}, {y[0]}, n_samples); -} - -void bw_example_fxpp_wah_set_parameter(bw_example_fxpp_wah *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_wah: - instance->wah.setWah(value); - break; - } -} - -float bw_example_fxpp_wah_get_parameter(bw_example_fxpp_wah *instance, int index) { - return instance->params[index]; -} diff --git a/examples/fxpp_wah/src/bw_example_fxpp_wah.h b/examples/fxpp_wah/src/bw_example_fxpp_wah.h deleted file mode 100644 index ef224d8..0000000 --- a/examples/fxpp_wah/src/bw_example_fxpp_wah.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_FXPP_WAH_H -#define _BW_EXAMPLE_FXPP_WAH_H - -#include "platform.h" - -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_wah, - p_n -}; - -struct _bw_example_fxpp_wah { - // Sub-components - Wah<1> wah; - - // Parameters - float params[p_n]; -}; -typedef struct _bw_example_fxpp_wah bw_example_fxpp_wah; - -void bw_example_fxpp_wah_init(bw_example_fxpp_wah *instance); -void bw_example_fxpp_wah_set_sample_rate(bw_example_fxpp_wah *instance, float sample_rate); -void bw_example_fxpp_wah_reset(bw_example_fxpp_wah *instance); -void bw_example_fxpp_wah_process(bw_example_fxpp_wah *instance, const float** x, float** y, int n_samples); -void bw_example_fxpp_wah_set_parameter(bw_example_fxpp_wah *instance, int index, float value); -float bw_example_fxpp_wah_get_parameter(bw_example_fxpp_wah *instance, int index); - -} - -#endif diff --git a/examples/fxpp_wah/src/config.h b/examples/fxpp_wah/src/config.h deleted file mode 100644 index ca62951..0000000 --- a/examples/fxpp_wah/src/config.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_fxpp_wah" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 1 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 1 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_in[NUM_BUSES_IN] = { - { "Audio in", 0, 0, 0, IO_MONO } -}; - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 1 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Wah", "Wah", "", 0, 0, 0, 0.5f } -}; - -// Internal API - -#include "bw_example_fxpp_wah.h" - -#define P_TYPE bw_example_fxpp_wah -#define P_INIT bw_example_fxpp_wah_init -#define P_SET_SAMPLE_RATE bw_example_fxpp_wah_set_sample_rate -#define P_RESET bw_example_fxpp_wah_reset -#define P_PROCESS bw_example_fxpp_wah_process -#define P_SET_PARAMETER bw_example_fxpp_wah_set_parameter -#define P_GET_PARAMETER bw_example_fxpp_wah_get_parameter - -#endif diff --git a/examples/fxpp_wah/src/config.js b/examples/fxpp_wah/src/config.js deleted file mode 100644 index 806b704..0000000 --- a/examples/fxpp_wah/src/config.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: false - }, - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Wah", - output: false, - defaultValue: 0.5 - } -]; diff --git a/examples/fxpp_wah/vst3/Makefile b/examples/fxpp_wah/vst3/Makefile deleted file mode 100644 index cd9feba..0000000 --- a/examples/fxpp_wah/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_fxpp_wah -SOURCE := bw_example_fxpp_wah.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/fxpp_wah/vst3/config_vst3.h b/examples/fxpp_wah/vst3/config_vst3.h deleted file mode 100644 index 244cfeb..0000000 --- a/examples/fxpp_wah/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Fx|Filter" - -#define PLUGIN_GUID_1 0x18b26026 -#define PLUGIN_GUID_2 0xc0ab4b9c -#define PLUGIN_GUID_3 0x815e8de8 -#define PLUGIN_GUID_4 0xa85b3417 - -#define CTRL_GUID_1 0x6c3a4f05 -#define CTRL_GUID_2 0xe0444e70 -#define CTRL_GUID_3 0xa581c0d2 -#define CTRL_GUID_4 0x6a5bd4be - -#endif diff --git a/examples/gen.sh b/examples/gen.sh index 3f8e6cf..9504894 100755 --- a/examples/gen.sh +++ b/examples/gen.sh @@ -23,7 +23,7 @@ cd common && $TIBIA_DIR/tibia --common $TIBIA_DIR/templates/vst3-make vst3 && cd cd common && $TIBIA_DIR/tibia --common $TIBIA_DIR/templates/android android && cd .. cd common && $TIBIA_DIR/tibia --common $TIBIA_DIR/templates/android-make android && cd .. -dirs="fx_ap1 fx_ap2" +dirs="fx_ap1 fx_ap2 fx_balance" for d in $dirs; do echo Generating data files for $d diff --git a/examples/genClean.sh b/examples/genClean.sh index 4fc62fa..3392cb5 100755 --- a/examples/genClean.sh +++ b/examples/genClean.sh @@ -4,7 +4,7 @@ echo Removing common files rm -fr common/cmd common/web common/daisy-seed common/lv2 common/vst3 common/android -dirs="fx_ap1 fx_ap2" +dirs="fx_ap1 fx_ap2 fx_balance" for d in $dirs; do echo Removing data files for $d diff --git a/examples/synthpp_mono/android/Makefile b/examples/synthpp_mono/android/Makefile deleted file mode 100644 index ea3dacb..0000000 --- a/examples/synthpp_mono/android/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_mono -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_synthpp_mono.cpp -SYNTH := yes - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/synthpp_mono/daisy-seed/Makefile b/examples/synthpp_mono/daisy-seed/Makefile deleted file mode 100644 index 8ebb5cf..0000000 --- a/examples/synthpp_mono/daisy-seed/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_synthpp_mono - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_synthpp_mono.cpp - -SYNTH := yes - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/synthpp_mono/daisy-seed/config_daisy_seed.h b/examples/synthpp_mono/daisy-seed/config_daisy_seed.h deleted file mode 100644 index d363122..0000000 --- a/examples/synthpp_mono/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_cc { - int param_index; - unsigned char cc; -}; - -#define NUM_CCS 38 - -static struct config_cc config_ccs[NUM_CCS] = { - { 0, 7 }, // Volume - { 1, 3 }, // Master tune - { 2, 5 }, // Portamento - { 3, 9 }, // Modulation mix - { 4, 14 }, // VCO1 modulation - { 5, 15 }, // VCO1 coarse - { 6, 20 }, // VCO1 fine - { 7, 21 }, // VCO1 waveform - { 8, 22 }, // VCO1 pulse width/slope - { 9, 23 }, // VCO1 level - { 10, 24 }, // VCO2 modulation - { 11, 25 }, // VCO2 coarse - { 12, 26 }, // VCO2 fine - { 13, 27 }, // VCO2 waveform - { 14, 28 }, // VCO2 pulse width/slope - { 15, 29 }, // VCO2 level - { 16, 30 }, // VCO3 keyboard control - { 17, 31 }, // VCO3 coarse - { 18, 85 }, // VCO3 fine - { 19, 86 }, // VCO3 waveform - { 20, 87 }, // VCO3 puslse width/slope - { 21, 89 }, // VCO3 level - { 22, 90 }, // Noise color - { 23, 102 }, // Noise level - { 24, 103 }, // VCF modulation - { 25, 104 }, // VCF keyboard control - { 26, 74 }, // VCF cutoff - { 27, 71 }, // VCF Q - { 28, 105 }, // VCF contour - { 29, 106 }, // VCF attack - { 30, 107 }, // VCF decay - { 31, 108 }, // VCF sustain - { 32, 109 }, // VCF release - { 33, 73 }, // VCA attack - { 34, 110 }, // VCA decay - { 35, 111 }, // VCA sustain - { 36, 72 }, // VCA release - { 37, 112 } // A440 -}; - -#endif diff --git a/examples/synthpp_mono/ios/Makefile b/examples/synthpp_mono/ios/Makefile deleted file mode 100644 index a1d8bf1..0000000 --- a/examples/synthpp_mono/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_mono -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_mono/src/bw_example_synthpp_mono.cpp b/examples/synthpp_mono/src/bw_example_synthpp_mono.cpp deleted file mode 100644 index 988cec3..0000000 --- a/examples/synthpp_mono/src/bw_example_synthpp_mono.cpp +++ /dev/null @@ -1,328 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_synthpp_mono.h" - -#include -#include - -void bw_example_synthpp_mono_init(bw_example_synthpp_mono *instance) { - instance->vco1OscSaw.setAntialiasing(true); - instance->vco1OscPulse.setAntialiasing(true); - instance->vco1OscTri.setAntialiasing(true); - instance->vco2OscSaw.setAntialiasing(true); - instance->vco2OscPulse.setAntialiasing(true); - instance->vco2OscTri.setAntialiasing(true); - instance->vco3OscSaw.setAntialiasing(true); - instance->vco3OscPulse.setAntialiasing(true); - instance->vco3OscTri.setAntialiasing(true); - instance->a440PhaseGen.setFrequency(440.f); - - instance->rand_state = 0xbaddecaf600dfeed; -} - -void bw_example_synthpp_mono_set_sample_rate(bw_example_synthpp_mono *instance, float sample_rate) { - instance->vco1PhaseGen.setSampleRate(sample_rate); - instance->vco1OscSaw.setSampleRate(sample_rate); - instance->vco1OscPulse.setSampleRate(sample_rate); - instance->vco1OscTri.setSampleRate(sample_rate); - instance->vco1Gain.setSampleRate(sample_rate); - instance->vco2PhaseGen.setSampleRate(sample_rate); - instance->vco2OscSaw.setSampleRate(sample_rate); - instance->vco2OscPulse.setSampleRate(sample_rate); - instance->vco2OscTri.setSampleRate(sample_rate); - instance->vco2Gain.setSampleRate(sample_rate); - instance->vco3PhaseGen.setSampleRate(sample_rate); - instance->vco3OscSaw.setSampleRate(sample_rate); - instance->vco3OscPulse.setSampleRate(sample_rate); - instance->vco3OscTri.setSampleRate(sample_rate); - instance->vco3Gain.setSampleRate(sample_rate); - instance->noiseGen.setSampleRate(sample_rate); - instance->pinkFilt.setSampleRate(sample_rate); - instance->noiseGain.setSampleRate(sample_rate); - instance->vcfEnvGen.setSampleRate(sample_rate); - instance->vcf.setSampleRate(sample_rate); - instance->vcaEnvGen.setSampleRate(sample_rate); - instance->a440PhaseGen.setSampleRate(sample_rate); - instance->gain.setSampleRate(sample_rate); - instance->ppm.setSampleRate(sample_rate); -} - -void bw_example_synthpp_mono_reset(bw_example_synthpp_mono *instance) { - const float v = instance->params[p_vcf_cutoff]; - const float cutoff = 20.f + (20e3f - 20.f) * v * v * v; - instance->vcf.setCutoff(bw_clipf(cutoff, 20.f, 20e3f)); - - instance->vco1PhaseGen.reset(); - instance->vco1OscSaw.reset(); - instance->vco1OscPulse.reset(); - instance->vco1OscTri.reset(); - instance->vco1Gain.reset(); - instance->vco2PhaseGen.reset(); - instance->vco2OscSaw.reset(); - instance->vco2OscPulse.reset(); - instance->vco2OscTri.reset(); - instance->vco2Gain.reset(); - instance->vco3PhaseGen.reset(); - instance->vco3OscSaw.reset(); - instance->vco3OscPulse.reset(); - instance->vco3OscTri.reset(); - instance->vco3Gain.reset(); - instance->oscFilt.reset(); - instance->noiseGen.reset(); - instance->pinkFilt.reset(); - instance->noiseGain.reset(); - instance->vcfEnvGen.reset(); - instance->vcf.reset(); - instance->vcaEnvGen.reset(); - instance->a440PhaseGen.reset(); - instance->gain.reset(); - instance->ppm.reset(); - instance->note = 60; - instance->gate = 0; - instance->pitch_bend = 0.f; - instance->mod_wheel = 0.f; - for (int i = 0; i < 128; i++) - instance->notes_pressed[i] = 0; -} - -void bw_example_synthpp_mono_process(bw_example_synthpp_mono *instance, const float** x, float** y, int n_samples) { - // FIXME: control-rate modulations are asynchronous here... - // it's all good as long as hosts gives us buffers whose length is a multiple of 32, - // otherwise it's probably still ok but a bit "swingy" - - (void)x; - - int n = instance->params[p_vco3_kbd] >= 0.5f ? instance->note : 0; - instance->vco1PhaseGen.setFrequency(440.f * - bw_pow2f(6.f * instance->params[p_vco1_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * ((instance->note - 69) + 2.f * (instance->params[p_master_tune] + instance->params[p_vco1_fine]) - 2.f))); - instance->vco2PhaseGen.setFrequency(440.f * - bw_pow2f(6.f * instance->params[p_vco2_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * ((instance->note - 69) + 2.f * (instance->params[p_master_tune] + instance->params[p_vco2_fine]) - 2.f))); - instance->vco3PhaseGen.setFrequency(440.f * - bw_pow2f(6.f * instance->params[p_vco3_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * ((n - 69) + 2.f * (instance->params[p_master_tune] + instance->params[p_vco3_fine]) - 2.f))); - - for (int i = 0; i < n_samples; i += BUFFER_SIZE) { - float *out = y[0] + i; - int n = bw_minf(n_samples - i, BUFFER_SIZE); - - instance->vco3PhaseGen.process({nullptr}, {out}, {instance->buf[0]}, n); - if (instance->params[p_vco3_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco3OscTri.process({out}, {instance->buf[0]}, {out}, n); - instance->vco3OscPulse.reset(); - } else if (instance->params[p_vco3_waveform] >= (1.f / 4.f)) { - instance->vco3OscPulse.process({out}, {instance->buf[0]}, {out}, n); - instance->vco3OscTri.reset(); - } else { - instance->vco3OscSaw.process({out}, {instance->buf[0]}, {out}, n); - instance->vco3OscPulse.reset(); - instance->vco3OscTri.reset(); - } - - instance->noiseGen.process({instance->buf[0]}, n); - if (instance->params[p_noise_color] >= 0.5f) - instance->pinkFilt.process({instance->buf[0]}, {instance->buf[0]}, n); - else - instance->pinkFilt.reset(); // FIXME: calling this here is sloppy coding - bufScale<1>({instance->buf[0]}, 5.f, {instance->buf[0]}, n); - - for (int j = 0; j < n; j++) - instance->buf[1][j] = instance->mod_wheel * (out[j] + instance->params[p_mod_mix] * (instance->buf[0][j] - out[j])); - const float vcf_mod = 0.3f * instance->params[p_vcf_mod] * instance->buf[1][0]; - - bufScale<1>({instance->buf[1]}, instance->params[p_vco1_mod], {instance->buf[2]}, n); - instance->vco1PhaseGen.process({instance->buf[2]}, {instance->buf[2]}, {instance->buf[3]}, n); - if (instance->params[p_vco1_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco1OscTri.process({instance->buf[2]}, {instance->buf[3]}, {instance->buf[2]}, n); - instance->vco1OscPulse.reset(); - } else if (instance->params[p_vco1_waveform] >= (1.f / 4.f)) { - instance->vco1OscPulse.process({instance->buf[2]}, {instance->buf[3]}, {instance->buf[2]}, n); - instance->vco1OscTri.reset(); - } else { - instance->vco1OscSaw.process({instance->buf[2]}, {instance->buf[3]}, {instance->buf[2]}, n); - instance->vco1OscPulse.reset(); - instance->vco1OscTri.reset(); - } - - bufScale<1>({instance->buf[1]}, instance->params[p_vco1_mod], {instance->buf[1]}, n); - instance->vco2PhaseGen.process({instance->buf[1]}, {instance->buf[1]}, {instance->buf[3]}, n); - if (instance->params[p_vco2_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco2OscTri.process({instance->buf[1]}, {instance->buf[3]}, {instance->buf[1]}, n); - instance->vco2OscPulse.reset(); - } else if (instance->params[p_vco2_waveform] >= (1.f / 4.f)) { - instance->vco2OscPulse.process({instance->buf[1]}, {instance->buf[3]}, {instance->buf[1]}, n); - instance->vco2OscTri.reset(); - } else { - instance->vco2OscSaw.process({instance->buf[1]}, {instance->buf[3]}, {instance->buf[1]}, n); - instance->vco2OscPulse.reset(); - instance->vco2OscTri.reset(); - } - - instance->vco1Gain.process({instance->buf[2]}, {instance->buf[2]}, n); - instance->vco2Gain.process({instance->buf[1]}, {instance->buf[1]}, n); - instance->vco3Gain.process({out}, {out}, n); - instance->noiseGain.process({instance->buf[0]}, {instance->buf[0]}, n); - bufMix<1>({out}, {instance->buf[1]}, {out}, n); - bufMix<1>({out}, {instance->buf[2]}, {out}, n); - - instance->oscFilt.process({out}, {out}, n); - - const float k = instance->params[p_noise_color] >= 0.5f - ? 6.f * instance->noiseGen.getScalingK() * instance->pinkFilt.getScalingK() - : 0.1f * instance->noiseGen.getScalingK(); - bufScale<1>({instance->buf[0]}, k, {instance->buf[0]}, n); - bufMix<1>({out}, {instance->buf[0]}, {out}, n); - - instance->vcfEnvGen.process({instance->gate}, {nullptr}, n); - float v = instance->params[p_vcf_cutoff] + instance->params[p_vcf_contour] * instance->vcfEnvGen.getYZ1(0) + vcf_mod; - float cutoff = 20.f + (20e3f - 20.f) * v * v * v; - if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 2.f / 3.f)) - cutoff *= bw_pow2f(8.333333333333333e-2f * (instance->note - 60)); - else if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 1.f / 3.f)) - cutoff *= bw_pow2f((0.793700525984100f * 8.333333333333333e-2f) * (instance->note - 60)); - else if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 2.f / 3.f)) - cutoff *= bw_pow2f((0.629960524947437f * 8.333333333333333e-2f) * (instance->note - 60)); - // otherwise no kbd control - instance->vcf.setCutoff(bw_clipf(cutoff, 20.f, 20e3f)); - instance->vcf.process({out}, {out}, {nullptr}, {nullptr}, n); - - instance->vcaEnvGen.process({instance->gate}, {instance->buf[0]}, n); - bufMul<1>({out}, {instance->buf[0]}, {out}, n); - - instance->a440PhaseGen.process({nullptr}, {instance->buf[0]}, {nullptr}, n); - oscSinProcess<1>({instance->buf[0]}, {instance->buf[0]}, n); - if (instance->params[p_a440] >= 0.5f) - bufMix<1>({out}, {instance->buf[0]}, {out}, n); - - instance->gain.process({out}, {out}, n); - instance->ppm.process({out}, {nullptr}, n); - } -} - -void bw_example_synthpp_mono_set_parameter(bw_example_synthpp_mono *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_volume: - instance->gain.setGainLin(value * value * value); - break; - case p_portamento: - instance->vco1PhaseGen.setPortamentoTau(value); - instance->vco2PhaseGen.setPortamentoTau(value); - instance->vco3PhaseGen.setPortamentoTau(value); - break; - case p_vco1_pw_slope: - instance->vco1OscPulse.setPulseWidth(value); - instance->vco1OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco1_level: - instance->vco1Gain.setGainLin(value * value * value); - break; - case p_vco2_pw_slope: - instance->vco2OscPulse.setPulseWidth(value); - instance->vco2OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco2_level: - instance->vco2Gain.setGainLin(value * value * value); - break; - case p_vco3_pw_slope: - instance->vco3OscPulse.setPulseWidth(value); - instance->vco3OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco3_level: - instance->vco3Gain.setGainLin(value * value * value); - break; - case p_noise_level: - instance->noiseGain.setGainLin(value * value * value); - break; - case p_vcf_Q: - instance->vcf.setQ(0.5f + 9.5f * value); - break; - case p_vcf_attack: - instance->vcfEnvGen.setAttack(value); - break; - case p_vcf_decay: - instance->vcfEnvGen.setDecay(value); - break; - case p_vcf_sustain: - instance->vcfEnvGen.setSustain(value); - break; - case p_vcf_release: - instance->vcfEnvGen.setRelease(value); - break; - case p_vca_attack: - instance->vcaEnvGen.setAttack(bw_maxf(0.002f, value)); - break; - case p_vca_decay: - instance->vcaEnvGen.setDecay(value); - break; - case p_vca_sustain: - instance->vcaEnvGen.setSustain(value); - break; - case p_vca_release: - instance->vcaEnvGen.setRelease(bw_maxf(0.002f, value)); - break; - } -} - -float bw_example_synthpp_mono_get_parameter(bw_example_synthpp_mono *instance, int index) { - if (index < p_n) - return instance->params[index]; - const float v = instance->ppm.getYZ1(0); - return v < -200.f ? 0.f : bw_clipf(0.01666666666666666f * v + 1.f, 0.f, 1.f); -} - -static void update_note_gate(bw_example_synthpp_mono *instance) { - for (int i = 0; i < 128; i++) - if (instance->notes_pressed[i]) { - instance->note = i; - instance->gate = 1; - return; - } - instance->gate = 0; -} - -void bw_example_synthpp_mono_note_on(bw_example_synthpp_mono *instance, char note, char velocity) { - if (velocity == 0) - bw_example_synthpp_mono_note_off(instance, note); - else { - instance->notes_pressed[(int)note] = 1; - update_note_gate(instance); - } -} - -void bw_example_synthpp_mono_note_off(bw_example_synthpp_mono *instance, char note) { - if (instance->notes_pressed[(int)note]) { - instance->notes_pressed[(int)note] = 0; - update_note_gate(instance); - } -} - -void bw_example_synthpp_mono_pitch_bend(bw_example_synthpp_mono *instance, int value) { - instance->pitch_bend = (value - 0x2000) / (float)0x4000; -} - -void bw_example_synthpp_mono_mod_wheel(bw_example_synthpp_mono *instance, char value) { - instance->mod_wheel = (float)value / 0x80; -} diff --git a/examples/synthpp_mono/src/bw_example_synthpp_mono.h b/examples/synthpp_mono/src/bw_example_synthpp_mono.h deleted file mode 100644 index 59d9eb6..0000000 --- a/examples/synthpp_mono/src/bw_example_synthpp_mono.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_SYNTHPP_MONO_H -#define _BW_EXAMPLE_SYNTHPP_MONO_H - -#include "platform.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_volume, - p_master_tune, - p_portamento, - p_mod_mix, - p_vco1_mod, - p_vco1_coarse, - p_vco1_fine, - p_vco1_waveform, - p_vco1_pw_slope, - p_vco1_level, - p_vco2_mod, - p_vco2_coarse, - p_vco2_fine, - p_vco2_waveform, - p_vco2_pw_slope, - p_vco2_level, - p_vco3_kbd, - p_vco3_coarse, - p_vco3_fine, - p_vco3_waveform, - p_vco3_pw_slope, - p_vco3_level, - p_noise_color, - p_noise_level, - p_vcf_mod, - p_vcf_kbd_ctrl, - p_vcf_cutoff, - p_vcf_Q, - p_vcf_contour, - p_vcf_attack, - p_vcf_decay, - p_vcf_sustain, - p_vcf_release, - p_vca_attack, - p_vca_decay, - p_vca_sustain, - p_vca_release, - p_a440, - p_n -}; - -#define BUFFER_SIZE 32 - -struct _bw_example_synthpp_mono { - // Sub-components - PhaseGen<1> vco1PhaseGen; - OscSaw<1> vco1OscSaw; - OscPulse<1> vco1OscPulse; - OscTri<1> vco1OscTri; - Gain<1> vco1Gain; - PhaseGen<1> vco2PhaseGen; - OscSaw<1> vco2OscSaw; - OscPulse<1> vco2OscPulse; - OscTri<1> vco2OscTri; - Gain<1> vco2Gain; - PhaseGen<1> vco3PhaseGen; - OscSaw<1> vco3OscSaw; - OscPulse<1> vco3OscPulse; - OscTri<1> vco3OscTri; - Gain<1> vco3Gain; - OscFilt<1> oscFilt; - NoiseGen<1> noiseGen; - PinkFilt<1> pinkFilt; - Gain<1> noiseGain; - EnvGen<1> vcfEnvGen; - SVF<1> vcf; - EnvGen<1> vcaEnvGen; - PhaseGen<1> a440PhaseGen; - Gain<1> gain; - PPM<1> ppm; - - // Parameters - float params[p_n]; - - // States - uint64_t rand_state; - int note; - char gate; - float pitch_bend; - float mod_wheel; - char notes_pressed[128]; - - // Buffers - float buf[4][BUFFER_SIZE]; - - _bw_example_synthpp_mono() : noiseGen(&rand_state) {} -}; -typedef struct _bw_example_synthpp_mono bw_example_synthpp_mono; - -void bw_example_synthpp_mono_init(bw_example_synthpp_mono *instance); -void bw_example_synthpp_mono_set_sample_rate(bw_example_synthpp_mono *instance, float sample_rate); -void bw_example_synthpp_mono_reset(bw_example_synthpp_mono *instance); -void bw_example_synthpp_mono_process(bw_example_synthpp_mono *instance, const float** x, float** y, int n_samples); -void bw_example_synthpp_mono_set_parameter(bw_example_synthpp_mono *instance, int index, float value); -float bw_example_synthpp_mono_get_parameter(bw_example_synthpp_mono *instance, int index); -void bw_example_synthpp_mono_note_on(bw_example_synthpp_mono *instance, char note, char velocity); -void bw_example_synthpp_mono_note_off(bw_example_synthpp_mono *instance, char note); -void bw_example_synthpp_mono_pitch_bend(bw_example_synthpp_mono *instance, int value); -void bw_example_synthpp_mono_mod_wheel(bw_example_synthpp_mono *instance, char value); - -} - -#endif diff --git a/examples/synthpp_mono/src/config.h b/examples/synthpp_mono/src/config.h deleted file mode 100644 index 490a7a4..0000000 --- a/examples/synthpp_mono/src/config.h +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_synthpp_mono" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 0 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 0 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 39 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Volume", "Volume", "", 0, 0, 0, 0.5f }, - { "Master tune", "Master tune", "st", 0, 0, 0, 0.5f }, - { "Portamento", "Portamento", "s", 0, 0, 0, 0.f }, - { "Modulation mix", "Mod mix", "%", 0, 0, 0, 0.f }, - { "VCO1 modulation", "VCO1 mod", "%", 0, 0, 0, 0.f }, - { "VCO1 coarse", "VCO1 coarse", "", 0, 0, 6, 0.5f }, - { "VCO1 fine", "VCO1 fine", "st", 0, 0, 0, 0.5f }, - { "VCO1 waveform", "VCO1 wave", "", 0, 0, 2, 0.f }, - { "VCO1 pulse width/slope", "VCO1 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO1 level", "VCO1 level", "%", 0, 0, 0, 1.f }, - { "VCO2 modulation", "VCO2 mod", "%", 0, 0, 0, 0.f }, - { "VCO2 coarse", "VCO2 coarse", "", 0, 0, 6, 0.5f }, - { "VCO2 fine", "VCO2 fine", "st", 0, 0, 0, 0.5f }, - { "VCO2 waveform", "VCO2 wave", "", 0, 0, 2, 0.f }, - { "VCO2 pulse width/slope", "VCO2 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO2 level", "VCO2 level", "%", 0, 0, 0, 0.f }, - { "VCO3 kyboard control", "VCO3 kbd ctrl", "", 0, 0, 1, 1.f }, - { "VCO3 coarse", "VCO3 coarse", "", 0, 0, 6, 0.5f }, - { "VCO3 fine", "VCO3 fine", "st", 0, 0, 0, 0.5f }, - { "VCO3 waveform", "VCO3 wave", "", 0, 0, 2, 0.f }, - { "VCO3 pulse width/slope", "VCO3 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO3 level", "VCO3 level", "%", 0, 0, 0, 0.f }, - { "Noise color", "Noise color", "", 0, 0, 1, 0.f }, - { "Noise level", "Noise level", "%", 0, 0, 0, 0.f }, - { "VCF modulation", "VCF mod", "%", 0, 0, 0, 0.f }, - { "VCF keyboard control", "VCF kbd ctrl", "", 0, 0, 3, 0.f }, - { "VCF cutoff", "VCF cutoff", "Hz", 0, 0, 0, 1.f }, - { "VCF Q", "VCF Q", "", 0, 0, 0, 0.f }, - { "VCF contour", "VCF contour", "%", 0, 0, 0, 0.f }, - { "VCF attack", "VCF attack", "s", 0, 0, 0, 0.f }, - { "VCF decay", "VCF decay", "s", 0, 0, 0, 0.f }, - { "VCF sustain", "VCF sustain", "%", 0, 0, 0, 1.f }, - { "VCF release", "VCF release", "s", 0, 0, 0, 0.f }, - { "VCA attack", "VCA attack", "s", 0, 0, 0, 0.f }, - { "VCA decay", "VCA decay", "s", 0, 0, 0, 0.f }, - { "VCA sustain", "VCA sustain", "%", 0, 0, 0, 1.f }, - { "VCA release", "VCA release", "s", 0, 0, 0, 0.f }, - { "A440", "A440", "", 0, 0, 1, 0.f }, - { "Level", "Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_synthpp_mono.h" - -#define P_TYPE bw_example_synthpp_mono -#define P_INIT bw_example_synthpp_mono_init -#define P_SET_SAMPLE_RATE bw_example_synthpp_mono_set_sample_rate -#define P_RESET bw_example_synthpp_mono_reset -#define P_PROCESS bw_example_synthpp_mono_process -#define P_SET_PARAMETER bw_example_synthpp_mono_set_parameter -#define P_GET_PARAMETER bw_example_synthpp_mono_get_parameter -#define P_NOTE_ON bw_example_synthpp_mono_note_on -#define P_NOTE_OFF bw_example_synthpp_mono_note_off -#define P_PITCH_BEND bw_example_synthpp_mono_pitch_bend -#define P_MOD_WHEEL bw_example_synthpp_mono_mod_wheel - -#endif diff --git a/examples/synthpp_mono/src/config.js b/examples/synthpp_mono/src/config.js deleted file mode 100644 index cf29faa..0000000 --- a/examples/synthpp_mono/src/config.js +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Volume", - output: false, - defaultValue: 0.5 - }, - { - name: "Master tune", - output: false, - defaultValue: 0.5 - }, - { - name: "Portamento", - output: false, - defaultValue: 0.0 - }, - { - name: "Modulation mix", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO1 modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO1 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO1 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO1 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO1 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO1 level", - output: false, - defaultValue: 1.0 - }, - { - name: "VCO2 modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO2 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO2 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO2 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO2 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO2 level", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO3 keyboard control", - output: false, - defaultValue: 1.0, - step: 1 - }, - { - name: "VCO3 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO3 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO3 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO3 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO3 level", - output: false, - defaultValue: 0.0 - }, - { - name: "Noise color", - output: false, - defaultValue: 0.0, - step: 1 - }, - { - name: "Noise level", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF keyboard control", - output: false, - defaultValue: 0.0, - step: 3 - }, - { - name: "VCF cutoff", - output: false, - defaultValue: 1.0 - }, - { - name: "VCF Q", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF contour", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF attack", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF decay", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF sustain", - output: false, - defaultValue: 1.0 - }, - { - name: "VCF release", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA attack", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA decay", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA sustain", - output: false, - defaultValue: 1.0 - }, - { - name: "VCA release", - output: false, - defaultValue: 0.0 - }, - { - name: "A440", - output: false, - defaultValue: 0.0, - step: 1 - }, - { - name: "Level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/synthpp_mono/vst3/Makefile b/examples/synthpp_mono/vst3/Makefile deleted file mode 100644 index 585ac50..0000000 --- a/examples/synthpp_mono/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_mono -SOURCE := bw_example_synthpp_mono.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/synthpp_mono/vst3/config_vst3.h b/examples/synthpp_mono/vst3/config_vst3.h deleted file mode 100644 index ce35f51..0000000 --- a/examples/synthpp_mono/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Instrument|Synth" - -#define PLUGIN_GUID_1 0xcee19b6e -#define PLUGIN_GUID_2 0xa6f7497e -#define PLUGIN_GUID_3 0x96c7f307 -#define PLUGIN_GUID_4 0x60ef624f - -#define CTRL_GUID_1 0x6aaf5238 -#define CTRL_GUID_2 0xa4024120 -#define CTRL_GUID_3 0xb7bc3d3b -#define CTRL_GUID_4 0xb64f3a94 - -#endif diff --git a/examples/synthpp_poly/android/Makefile b/examples/synthpp_poly/android/Makefile deleted file mode 100644 index d36ad49..0000000 --- a/examples/synthpp_poly/android/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_poly -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_synthpp_poly.cpp -SYNTH := yes - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/synthpp_poly/daisy-seed/Makefile b/examples/synthpp_poly/daisy-seed/Makefile deleted file mode 100644 index 072afa0..0000000 --- a/examples/synthpp_poly/daisy-seed/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_synthpp_poly - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_synthpp_poly.cpp - -SYNTH := yes - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/synthpp_poly/daisy-seed/config_daisy_seed.h b/examples/synthpp_poly/daisy-seed/config_daisy_seed.h deleted file mode 100644 index d363122..0000000 --- a/examples/synthpp_poly/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_cc { - int param_index; - unsigned char cc; -}; - -#define NUM_CCS 38 - -static struct config_cc config_ccs[NUM_CCS] = { - { 0, 7 }, // Volume - { 1, 3 }, // Master tune - { 2, 5 }, // Portamento - { 3, 9 }, // Modulation mix - { 4, 14 }, // VCO1 modulation - { 5, 15 }, // VCO1 coarse - { 6, 20 }, // VCO1 fine - { 7, 21 }, // VCO1 waveform - { 8, 22 }, // VCO1 pulse width/slope - { 9, 23 }, // VCO1 level - { 10, 24 }, // VCO2 modulation - { 11, 25 }, // VCO2 coarse - { 12, 26 }, // VCO2 fine - { 13, 27 }, // VCO2 waveform - { 14, 28 }, // VCO2 pulse width/slope - { 15, 29 }, // VCO2 level - { 16, 30 }, // VCO3 keyboard control - { 17, 31 }, // VCO3 coarse - { 18, 85 }, // VCO3 fine - { 19, 86 }, // VCO3 waveform - { 20, 87 }, // VCO3 puslse width/slope - { 21, 89 }, // VCO3 level - { 22, 90 }, // Noise color - { 23, 102 }, // Noise level - { 24, 103 }, // VCF modulation - { 25, 104 }, // VCF keyboard control - { 26, 74 }, // VCF cutoff - { 27, 71 }, // VCF Q - { 28, 105 }, // VCF contour - { 29, 106 }, // VCF attack - { 30, 107 }, // VCF decay - { 31, 108 }, // VCF sustain - { 32, 109 }, // VCF release - { 33, 73 }, // VCA attack - { 34, 110 }, // VCA decay - { 35, 111 }, // VCA sustain - { 36, 72 }, // VCA release - { 37, 112 } // A440 -}; - -#endif diff --git a/examples/synthpp_poly/ios/Makefile b/examples/synthpp_poly/ios/Makefile deleted file mode 100644 index be438f0..0000000 --- a/examples/synthpp_poly/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_poly -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_poly/src/bw_example_synthpp_poly.cpp b/examples/synthpp_poly/src/bw_example_synthpp_poly.cpp deleted file mode 100644 index 8a9c047..0000000 --- a/examples/synthpp_poly/src/bw_example_synthpp_poly.cpp +++ /dev/null @@ -1,392 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_synthpp_poly.h" - -#include -#include -#include - -void bw_example_synthpp_poly_init(bw_example_synthpp_poly *instance) { - instance->vco1OscSaw.setAntialiasing(true); - instance->vco1OscPulse.setAntialiasing(true); - instance->vco1OscTri.setAntialiasing(true); - instance->vco2OscSaw.setAntialiasing(true); - instance->vco2OscPulse.setAntialiasing(true); - instance->vco2OscTri.setAntialiasing(true); - instance->vco3OscSaw.setAntialiasing(true); - instance->vco3OscPulse.setAntialiasing(true); - instance->vco3OscTri.setAntialiasing(true); - instance->a440PhaseGen.setFrequency(440.f); - - instance->rand_state = 0xbaddecaf600dfeed; - - for (int i = 0; i < N_VOICES; i++) { - instance->voices[i].instance = instance; - instance->voices[i].index = i; - } -} - -void bw_example_synthpp_poly_set_sample_rate(bw_example_synthpp_poly *instance, float sample_rate) { - instance->vco1OscSaw.setSampleRate(sample_rate); - instance->vco1OscPulse.setSampleRate(sample_rate); - instance->vco1OscTri.setSampleRate(sample_rate); - instance->vco1Gain.setSampleRate(sample_rate); - instance->vco2OscSaw.setSampleRate(sample_rate); - instance->vco2OscPulse.setSampleRate(sample_rate); - instance->vco2OscTri.setSampleRate(sample_rate); - instance->vco2Gain.setSampleRate(sample_rate); - instance->vco3OscSaw.setSampleRate(sample_rate); - instance->vco3OscPulse.setSampleRate(sample_rate); - instance->vco3OscTri.setSampleRate(sample_rate); - instance->vco3Gain.setSampleRate(sample_rate); - instance->noiseGen.setSampleRate(sample_rate); - instance->pinkFilt.setSampleRate(sample_rate); - instance->noiseGain.setSampleRate(sample_rate); - instance->vcfEnvGen.setSampleRate(sample_rate); - instance->vcaEnvGen.setSampleRate(sample_rate); - instance->a440PhaseGen.setSampleRate(sample_rate); - instance->gain.setSampleRate(sample_rate); - instance->ppm.setSampleRate(sample_rate); - - for (int i = 0; i < N_VOICES; i++) { - instance->voices[i].vco1PhaseGen.setSampleRate(sample_rate); - instance->voices[i].vco2PhaseGen.setSampleRate(sample_rate); - instance->voices[i].vco3PhaseGen.setSampleRate(sample_rate); - instance->voices[i].vcf.setSampleRate(sample_rate); - } -} - -void bw_example_synthpp_poly_reset(bw_example_synthpp_poly *instance) { - const float v = instance->params[p_vcf_cutoff]; - const float cutoff = 20.f + (20e3f - 20.f) * v * v * v; - for (int i = 0; i < N_VOICES; i++) - instance->voices[i].vcf.setCutoff(bw_clipf(cutoff, 20.f, 20e3f)); - - instance->noteQueue = NoteQueue(); - instance->vco1OscSaw.reset(); - instance->vco1OscPulse.reset(); - instance->vco1OscTri.reset(); - instance->vco1Gain.reset(); - instance->vco2OscSaw.reset(); - instance->vco2OscPulse.reset(); - instance->vco2OscTri.reset(); - instance->vco2Gain.reset(); - instance->vco3OscSaw.reset(); - instance->vco3OscPulse.reset(); - instance->vco3OscTri.reset(); - instance->vco3Gain.reset(); - instance->oscFilt.reset(); - instance->noiseGen.reset(); - instance->pinkFilt.reset(); - instance->noiseGain.reset(); - instance->vcfEnvGen.reset(); - instance->vcaEnvGen.reset(); - instance->a440PhaseGen.reset(); - instance->gain.reset(); - instance->ppm.reset(); - for (int i = 0; i < N_VOICES; i++) { - instance->voices[i].vco1PhaseGen.reset(); - instance->voices[i].vco2PhaseGen.reset(); - instance->voices[i].vco3PhaseGen.reset(); - instance->voices[i].vcf.reset(); - - instance->voices[i].note = 69; - instance->voices[i].gate = 0; - } - - instance->pitch_bend = 0.f; - instance->mod_wheel = 0.f; -} - -static void note_on(void *BW_RESTRICT voice, unsigned char note, float velocity) { - (void)velocity; - bw_example_synthpp_poly_voice *v = (bw_example_synthpp_poly_voice *)voice; - v->note = note; - v->gate = 1; -} - -static void note_off(void *BW_RESTRICT voice, float velocity) { - (void)velocity; - bw_example_synthpp_poly_voice *v = (bw_example_synthpp_poly_voice *)voice; - v->gate = 0; -} - -static unsigned char get_note(const void *BW_RESTRICT voice) { - bw_example_synthpp_poly_voice *v = (bw_example_synthpp_poly_voice *)voice; - return v->note; -} - -static char is_free(const void *BW_RESTRICT voice) { - bw_example_synthpp_poly_voice *v = (bw_example_synthpp_poly_voice *)voice; - bw_env_gen_phase phase = v->instance->vcaEnvGen.getPhase(v->index); - return !v->gate && phase == bw_env_gen_phase_off; -} - -void bw_example_synthpp_poly_process(bw_example_synthpp_poly *instance, const float** x, float** y, int n_samples) { - // FIXME: control-rate modulations are asynchronous here... - // it's all good as long as hosts gives us buffers whose length is a multiple of 32, - // otherwise it's probably still ok but a bit "swingy" - - (void)x; - - static bw_voice_alloc_opts alloc_opts = { bw_voice_alloc_priority_low, note_on, note_off, get_note, is_free }; - void *voices[N_VOICES]; - for (int i = 0; i < N_VOICES; i++) - voices[i] = (void *)(instance->voices + i); - bw_voice_alloc(&alloc_opts, &instance->noteQueue.queue, voices, N_VOICES); - instance->noteQueue.clear(); - - const float df1 = - 6.f * instance->params[p_vco1_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * (2.f * (instance->params[p_master_tune] + instance->params[p_vco1_fine]) - 71.f); - const float df2 = - 6.f * instance->params[p_vco2_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * (2.f * (instance->params[p_master_tune] + instance->params[p_vco2_fine]) - 71.f); - const float df3 = - 6.f * instance->params[p_vco3_coarse] - 3.f - + 2.f * instance->pitch_bend - 1.f - + 8.333333333333333e-2f * (2.f * (instance->params[p_master_tune] + instance->params[p_vco3_fine]) - 71.f); - for (int i = 0; i < N_VOICES; i++) { - int n3 = instance->params[p_vco3_kbd] >= 0.5f ? instance->voices[i].note : 0; - instance->voices[i].vco1PhaseGen.setFrequency(440.f * bw_pow2f(df1 + 8.333333333333333e-2f * instance->voices[i].note)); - instance->voices[i].vco2PhaseGen.setFrequency(440.f * bw_pow2f(df2 + 8.333333333333333e-2f * instance->voices[i].note)); - instance->voices[i].vco3PhaseGen.setFrequency(440.f * bw_pow2f(df3 + 8.333333333333333e-2f * n3)); - } - - const float vcf_mod_k = 0.3f * instance->params[p_vcf_mod]; - - float *b0[N_VOICES], *b1[N_VOICES], *b2[N_VOICES], *b3[N_VOICES], *b4[N_VOICES]; - char xgates[N_VOICES]; - for (int j = 0; j < N_VOICES; j++) { - b0[j] = instance->voices[j].buf[0]; - b1[j] = instance->voices[j].buf[1]; - b2[j] = instance->voices[j].buf[2]; - b3[j] = instance->voices[j].buf[3]; - b4[j] = instance->voices[j].buf[4]; - xgates[j] = instance->voices[j].gate; - } - - for (int i = 0; i < n_samples; i += BUFFER_SIZE) { - float *out = y[0] + i; - int n = bw_minf(n_samples - i, BUFFER_SIZE); - - for (int j = 0; j < N_VOICES; j++) - instance->voices[j].vco3PhaseGen.process({nullptr}, {b0[j]}, {b1[j]}, n); - if (instance->params[p_vco3_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco3OscTri.process(b0, b1, b0, n); - instance->vco3OscPulse.reset(); - } else if (instance->params[p_vco3_waveform] >= (1.f / 4.f)) { - instance->vco3OscPulse.process(b0, b1, b0, n); - instance->vco3OscTri.reset(); - } else { - instance->vco3OscSaw.process(b0, b1, b0, n); - instance->vco3OscPulse.reset(); - instance->vco3OscTri.reset(); - } - - instance->noiseGen.process(b1, n); - if (instance->params[p_noise_color] >= 0.5f) - instance->pinkFilt.process(b1, b1, n); - else - instance->pinkFilt.reset(); // FIXME: calling this here is sloppy coding - bufScale(b1, 5.f, b1, n); - - float vcf_mod[N_VOICES]; - for (int j = 0; j < N_VOICES; j++) { - for (int k = 0; k < n; k++) - b2[j][k] = instance->mod_wheel * (b0[j][k] + instance->params[p_mod_mix] * (b1[j][k] - b0[j][k])); - vcf_mod[j] = vcf_mod_k * b2[j][0]; - } - - for (int j = 0; j < N_VOICES; j++) { - bufScale<1>({b2[j]}, instance->params[p_vco1_mod], {b3[j]}, n); - instance->voices[j].vco1PhaseGen.process({b3[j]}, {b3[j]}, {b4[j]}, n); - } - if (instance->params[p_vco1_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco1OscTri.process(b3, b4, b3, n); - instance->vco1OscPulse.reset(); - } else if (instance->params[p_vco1_waveform] >= (1.f / 4.f)) { - instance->vco1OscPulse.process(b3, b4, b3, n); - instance->vco1OscTri.reset(); - } else { - instance->vco1OscSaw.process(b3, b4, b3, n); - instance->vco1OscPulse.reset(); - instance->vco1OscTri.reset(); - } - - for (int j = 0; j < N_VOICES; j++) { - bufScale<1>({b2[j]}, instance->params[p_vco2_mod], {b2[j]}, n); - instance->voices[j].vco2PhaseGen.process({b2[j]}, {b2[j]}, {b4[j]}, n); - } - if (instance->params[p_vco2_waveform] >= (1.f / 4.f + 1.f / 2.f)) { - instance->vco2OscTri.process(b2, b4, b2, n); - instance->vco2OscPulse.reset(); - } else if (instance->params[p_vco2_waveform] >= (1.f / 4.f)) { - instance->vco2OscPulse.process(b2, b4, b2, n); - instance->vco2OscTri.reset(); - } else { - instance->vco2OscSaw.process(b2, b4, b2, n); - instance->vco2OscPulse.reset(); - instance->vco2OscTri.reset(); - } - - instance->vco1Gain.process(b3, b3, n); - instance->vco2Gain.process(b2, b2, n); - instance->vco3Gain.process(b0, b0, n); - instance->noiseGain.process(b1, b1, n); - bufMix(b0, b2, b0, n); - bufMix(b0, b3, b0, n); - - instance->oscFilt.process(b0, b0, n); - - const float k = instance->params[p_noise_color] >= 0.5f - ? 6.f * instance->noiseGen.getScalingK() * instance->pinkFilt.getScalingK() - : 0.1f * instance->noiseGen.getScalingK(); - bufScale(b1, k, b1, n); - bufMix(b0, b1, b0, n); - - instance->vcfEnvGen.process(xgates, {}, n); - for (int j = 0; j < N_VOICES; j++) { - float v = instance->params[p_vcf_cutoff] + instance->params[p_vcf_contour] * instance->vcfEnvGen.getYZ1(j) + vcf_mod[j]; - float cutoff = 20.f + (20e3f - 20.f) * v * v * v; - if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 2.f / 3.f)) - cutoff *= bw_pow2f(8.333333333333333e-2f * (instance->voices[j].note - 60)); - else if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 1.f / 3.f)) - cutoff *= bw_pow2f((0.793700525984100f * 8.333333333333333e-2f) * (instance->voices[j].note - 60)); - else if (instance->params[p_vcf_kbd_ctrl] >= (1.f / 6.f + 2.f / 3.f)) - cutoff *= bw_pow2f((0.629960524947437f * 8.333333333333333e-2f) * (instance->voices[j].note - 60)); - // otherwise no kbd control - instance->voices[j].vcf.setCutoff(bw_clipf(cutoff, 20.f, 20e3f)); - instance->voices[j].vcf.process({b0[j]}, {b0[j]}, {nullptr}, {nullptr}, n); - } - - instance->vcaEnvGen.process(xgates, b1, n); - bufMul(b0, b1, b0, n); - - bufFill<1>(0.f, {out}, n); - for (int j = 0; j < N_VOICES; j++) - bufMix<1>({out}, {b0[j]}, {out}, n); - - instance->a440PhaseGen.process({nullptr}, {instance->buf}, {nullptr}, n); - oscSinProcess<1>({instance->buf}, {instance->buf}, n); - if (instance->params[p_a440] >= 0.5f) - bufMix<1>({out}, {instance->buf}, {out}, n); - - instance->gain.process({out}, {out}, n); - instance->ppm.process({out}, {nullptr}, n); - } -} - -void bw_example_synthpp_poly_set_parameter(bw_example_synthpp_poly *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_volume: - instance->gain.setGainLin(value * value * value); - break; - case p_portamento: - for (int i = 0; i < N_VOICES; i++) { - instance->voices[i].vco1PhaseGen.setPortamentoTau(value); - instance->voices[i].vco2PhaseGen.setPortamentoTau(value); - instance->voices[i].vco3PhaseGen.setPortamentoTau(value); - } - break; - case p_vco1_pw_slope: - instance->vco1OscPulse.setPulseWidth(value); - instance->vco1OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco1_level: - instance->vco1Gain.setGainLin(value * value * value); - break; - case p_vco2_pw_slope: - instance->vco2OscPulse.setPulseWidth(value); - instance->vco2OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco2_level: - instance->vco2Gain.setGainLin(value * value * value); - break; - case p_vco3_pw_slope: - instance->vco3OscPulse.setPulseWidth(value); - instance->vco3OscTri.setSlope(bw_clipf(value, 0.001f, 0.999f)); - break; - case p_vco3_level: - instance->vco3Gain.setGainLin(value * value * value); - break; - case p_noise_level: - instance->noiseGain.setGainLin(value * value * value); - break; - case p_vcf_Q: - { - const float v = 0.5f + 9.5f * value; - for (int i = 0; i < N_VOICES; i++) - instance->voices[i].vcf.setQ(v); - break; - } - case p_vcf_attack: - instance->vcfEnvGen.setAttack(value); - break; - case p_vcf_decay: - instance->vcfEnvGen.setDecay(value); - break; - case p_vcf_sustain: - instance->vcfEnvGen.setSustain(value); - break; - case p_vcf_release: - instance->vcfEnvGen.setRelease(value); - break; - case p_vca_attack: - instance->vcaEnvGen.setAttack(bw_maxf(0.002f, value)); - break; - case p_vca_decay: - instance->vcaEnvGen.setDecay(value); - break; - case p_vca_sustain: - instance->vcaEnvGen.setSustain(value); - break; - case p_vca_release: - instance->vcaEnvGen.setRelease(bw_maxf(0.002f, value)); - break; - } -} - -float bw_example_synthpp_poly_get_parameter(bw_example_synthpp_poly *instance, int index) { - if (index < p_n) - return instance->params[index]; - const float v = instance->ppm.getYZ1(0); - return v < -200.f ? 0.f : bw_clipf(0.01666666666666666f * v + 1.f, 0.f, 1.f); -} - -void bw_example_synthpp_poly_note_on(bw_example_synthpp_poly *instance, char note, char velocity) { - instance->noteQueue.add(note, velocity != 0, (1.f / 127.f) * velocity, false); -} - -void bw_example_synthpp_poly_note_off(bw_example_synthpp_poly *instance, char note) { - instance->noteQueue.add(note, false, 0, false); -} - -void bw_example_synthpp_poly_pitch_bend(bw_example_synthpp_poly *instance, int value) { - instance->pitch_bend = (value - 0x2000) / (float)0x4000; -} - -void bw_example_synthpp_poly_mod_wheel(bw_example_synthpp_poly *instance, char value) { - instance->mod_wheel = (float)value / 0x80; -} diff --git a/examples/synthpp_poly/src/bw_example_synthpp_poly.h b/examples/synthpp_poly/src/bw_example_synthpp_poly.h deleted file mode 100644 index bdf3a8d..0000000 --- a/examples/synthpp_poly/src/bw_example_synthpp_poly.h +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_SYNTHPP_MONO_H -#define _BW_EXAMPLE_SYNTHPP_MONO_H - -#include "platform.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_volume, - p_master_tune, - p_portamento, - p_mod_mix, - p_vco1_mod, - p_vco1_coarse, - p_vco1_fine, - p_vco1_waveform, - p_vco1_pw_slope, - p_vco1_level, - p_vco2_mod, - p_vco2_coarse, - p_vco2_fine, - p_vco2_waveform, - p_vco2_pw_slope, - p_vco2_level, - p_vco3_kbd, - p_vco3_coarse, - p_vco3_fine, - p_vco3_waveform, - p_vco3_pw_slope, - p_vco3_level, - p_noise_color, - p_noise_level, - p_vcf_mod, - p_vcf_kbd_ctrl, - p_vcf_cutoff, - p_vcf_Q, - p_vcf_contour, - p_vcf_attack, - p_vcf_decay, - p_vcf_sustain, - p_vcf_release, - p_vca_attack, - p_vca_decay, - p_vca_sustain, - p_vca_release, - p_a440, - p_n -}; - -#define BUFFER_SIZE 32 -#define N_VOICES 8 - -struct _bw_example_synthpp_poly; -typedef struct _bw_example_synthpp_poly bw_example_synthpp_poly; - -struct _bw_example_synthpp_poly_voice { - PhaseGen<1> vco1PhaseGen; - PhaseGen<1> vco2PhaseGen; - PhaseGen<1> vco3PhaseGen; - SVF<1> vcf; - - unsigned char note; - char gate; - - float buf[5][BUFFER_SIZE]; - - bw_example_synthpp_poly *instance; - int index; -}; -typedef struct _bw_example_synthpp_poly_voice bw_example_synthpp_poly_voice; - -struct _bw_example_synthpp_poly { - // Sub-components - NoteQueue noteQueue; - OscSaw vco1OscSaw; - OscPulse vco1OscPulse; - OscTri vco1OscTri; - Gain vco1Gain; - OscSaw vco2OscSaw; - OscPulse vco2OscPulse; - OscTri vco2OscTri; - Gain vco2Gain; - OscSaw vco3OscSaw; - OscPulse vco3OscPulse; - OscTri vco3OscTri; - Gain vco3Gain; - OscFilt oscFilt; - NoiseGen noiseGen; - PinkFilt pinkFilt; - Gain noiseGain; - EnvGen vcfEnvGen; - EnvGen vcaEnvGen; - PhaseGen<1> a440PhaseGen; - Gain<1> gain; - PPM<1> ppm; - - bw_example_synthpp_poly_voice voices[N_VOICES]; - - // Parameters - float params[p_n]; - - // States - uint64_t rand_state; - float pitch_bend; - float mod_wheel; - - // Buffers - float buf[BUFFER_SIZE]; - - _bw_example_synthpp_poly() : noiseGen(&rand_state) {} -}; - -void bw_example_synthpp_poly_init(bw_example_synthpp_poly *instance); -void bw_example_synthpp_poly_set_sample_rate(bw_example_synthpp_poly *instance, float sample_rate); -void bw_example_synthpp_poly_reset(bw_example_synthpp_poly *instance); -void bw_example_synthpp_poly_process(bw_example_synthpp_poly *instance, const float** x, float** y, int n_samples); -void bw_example_synthpp_poly_set_parameter(bw_example_synthpp_poly *instance, int index, float value); -float bw_example_synthpp_poly_get_parameter(bw_example_synthpp_poly *instance, int index); -void bw_example_synthpp_poly_note_on(bw_example_synthpp_poly *instance, char note, char velocity); -void bw_example_synthpp_poly_note_off(bw_example_synthpp_poly *instance, char note); -void bw_example_synthpp_poly_pitch_bend(bw_example_synthpp_poly *instance, int value); -void bw_example_synthpp_poly_mod_wheel(bw_example_synthpp_poly *instance, char value); - -} - -#endif diff --git a/examples/synthpp_poly/src/config.h b/examples/synthpp_poly/src/config.h deleted file mode 100644 index 7948e14..0000000 --- a/examples/synthpp_poly/src/config.h +++ /dev/null @@ -1,125 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_synthpp_poly" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 0 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 0 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 39 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Volume", "Volume", "", 0, 0, 0, 0.5f }, - { "Master tune", "Master tune", "st", 0, 0, 0, 0.5f }, - { "Portamento", "Portamento", "s", 0, 0, 0, 0.f }, - { "Modulation mix", "Mod mix", "%", 0, 0, 0, 0.f }, - { "VCO1 modulation", "VCO1 mod", "%", 0, 0, 0, 0.f }, - { "VCO1 coarse", "VCO1 coarse", "", 0, 0, 6, 0.5f }, - { "VCO1 fine", "VCO1 fine", "st", 0, 0, 0, 0.5f }, - { "VCO1 waveform", "VCO1 wave", "", 0, 0, 2, 0.f }, - { "VCO1 pulse width/slope", "VCO1 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO1 level", "VCO1 level", "%", 0, 0, 0, 1.f }, - { "VCO2 modulation", "VCO2 mod", "%", 0, 0, 0, 0.f }, - { "VCO2 coarse", "VCO2 coarse", "", 0, 0, 6, 0.5f }, - { "VCO2 fine", "VCO2 fine", "st", 0, 0, 0, 0.5f }, - { "VCO2 waveform", "VCO2 wave", "", 0, 0, 2, 0.f }, - { "VCO2 pulse width/slope", "VCO2 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO2 level", "VCO2 level", "%", 0, 0, 0, 0.f }, - { "VCO3 kyboard control", "VCO3 kbd ctrl", "", 0, 0, 1, 1.f }, - { "VCO3 coarse", "VCO3 coarse", "", 0, 0, 6, 0.5f }, - { "VCO3 fine", "VCO3 fine", "st", 0, 0, 0, 0.5f }, - { "VCO3 waveform", "VCO3 wave", "", 0, 0, 2, 0.f }, - { "VCO3 pulse width/slope", "VCO3 pw/slope", "%", 0, 0, 0, 0.5f }, - { "VCO3 level", "VCO3 level", "%", 0, 0, 0, 0.f }, - { "Noise color", "Noise color", "", 0, 0, 1, 0.f }, - { "Noise level", "Noise level", "%", 0, 0, 0, 0.f }, - { "VCF modulation", "VCF mod", "%", 0, 0, 0, 0.f }, - { "VCF keyboard control", "VCF kbd ctrl", "", 0, 0, 3, 0.f }, - { "VCF cutoff", "VCF cutoff", "Hz", 0, 0, 0, 1.f }, - { "VCF Q", "VCF Q", "", 0, 0, 0, 0.f }, - { "VCF contour", "VCF contour", "%", 0, 0, 0, 0.f }, - { "VCF attack", "VCF attack", "s", 0, 0, 0, 0.f }, - { "VCF decay", "VCF decay", "s", 0, 0, 0, 0.f }, - { "VCF sustain", "VCF sustain", "%", 0, 0, 0, 1.f }, - { "VCF release", "VCF release", "s", 0, 0, 0, 0.f }, - { "VCA attack", "VCA attack", "s", 0, 0, 0, 0.f }, - { "VCA decay", "VCA decay", "s", 0, 0, 0, 0.f }, - { "VCA sustain", "VCA sustain", "%", 0, 0, 0, 1.f }, - { "VCA release", "VCA release", "s", 0, 0, 0, 0.f }, - { "A440", "A440", "", 0, 0, 1, 0.f }, - { "Level", "Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_synthpp_poly.h" - -#define P_TYPE bw_example_synthpp_poly -#define P_INIT bw_example_synthpp_poly_init -#define P_SET_SAMPLE_RATE bw_example_synthpp_poly_set_sample_rate -#define P_RESET bw_example_synthpp_poly_reset -#define P_PROCESS bw_example_synthpp_poly_process -#define P_SET_PARAMETER bw_example_synthpp_poly_set_parameter -#define P_GET_PARAMETER bw_example_synthpp_poly_get_parameter -#define P_NOTE_ON bw_example_synthpp_poly_note_on -#define P_NOTE_OFF bw_example_synthpp_poly_note_off -#define P_PITCH_BEND bw_example_synthpp_poly_pitch_bend -#define P_MOD_WHEEL bw_example_synthpp_poly_mod_wheel - -#endif diff --git a/examples/synthpp_poly/src/config.js b/examples/synthpp_poly/src/config.js deleted file mode 100644 index cf29faa..0000000 --- a/examples/synthpp_poly/src/config.js +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Volume", - output: false, - defaultValue: 0.5 - }, - { - name: "Master tune", - output: false, - defaultValue: 0.5 - }, - { - name: "Portamento", - output: false, - defaultValue: 0.0 - }, - { - name: "Modulation mix", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO1 modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO1 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO1 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO1 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO1 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO1 level", - output: false, - defaultValue: 1.0 - }, - { - name: "VCO2 modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO2 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO2 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO2 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO2 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO2 level", - output: false, - defaultValue: 0.0 - }, - { - name: "VCO3 keyboard control", - output: false, - defaultValue: 1.0, - step: 1 - }, - { - name: "VCO3 coarse", - output: false, - defaultValue: 0.5, - step: 6 - }, - { - name: "VCO3 fine", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO3 waveform", - output: false, - defaultValue: 0.5, - step: 2 - }, - { - name: "VCO3 pulse width/slope", - output: false, - defaultValue: 0.5 - }, - { - name: "VCO3 level", - output: false, - defaultValue: 0.0 - }, - { - name: "Noise color", - output: false, - defaultValue: 0.0, - step: 1 - }, - { - name: "Noise level", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF modulation", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF keyboard control", - output: false, - defaultValue: 0.0, - step: 3 - }, - { - name: "VCF cutoff", - output: false, - defaultValue: 1.0 - }, - { - name: "VCF Q", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF contour", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF attack", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF decay", - output: false, - defaultValue: 0.0 - }, - { - name: "VCF sustain", - output: false, - defaultValue: 1.0 - }, - { - name: "VCF release", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA attack", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA decay", - output: false, - defaultValue: 0.0 - }, - { - name: "VCA sustain", - output: false, - defaultValue: 1.0 - }, - { - name: "VCA release", - output: false, - defaultValue: 0.0 - }, - { - name: "A440", - output: false, - defaultValue: 0.0, - step: 1 - }, - { - name: "Level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/synthpp_poly/vst3/Makefile b/examples/synthpp_poly/vst3/Makefile deleted file mode 100644 index 5550f27..0000000 --- a/examples/synthpp_poly/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_poly -SOURCE := bw_example_synthpp_poly.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/synthpp_poly/vst3/config_vst3.h b/examples/synthpp_poly/vst3/config_vst3.h deleted file mode 100644 index 8e8de04..0000000 --- a/examples/synthpp_poly/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Instrument|Synth" - -#define PLUGIN_GUID_1 0x7f75d73b -#define PLUGIN_GUID_2 0xf5aa4d9d -#define PLUGIN_GUID_3 0xba2b1d54 -#define PLUGIN_GUID_4 0x83d45cfe - -#define CTRL_GUID_1 0x183b9664 -#define CTRL_GUID_2 0xaca74eaf -#define CTRL_GUID_3 0xad09b16b -#define CTRL_GUID_4 0x5d702155 - -#endif diff --git a/examples/synthpp_simple/android/Makefile b/examples/synthpp_simple/android/Makefile deleted file mode 100644 index 10d1bd3..0000000 --- a/examples/synthpp_simple/android/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_simple -SOURCES = ${SOURCES_COMMON} ${ROOT_DIR}/../src/bw_example_synthpp_simple.cpp -SYNTH := yes - -include ${ROOT_DIR}/../../common/android/android.mk diff --git a/examples/synthpp_simple/daisy-seed/Makefile b/examples/synthpp_simple/daisy-seed/Makefile deleted file mode 100644 index 0b0f7d5..0000000 --- a/examples/synthpp_simple/daisy-seed/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -TARGET = bw_example_synthpp_simple - -CPP_SOURCES_EXTRA = ${ROOT_DIR}/../src/bw_example_synthpp_simple.cpp - -SYNTH := yes - -include ${ROOT_DIR}/../../common/daisy-seed/daisy-seed.mk diff --git a/examples/synthpp_simple/daisy-seed/config_daisy_seed.h b/examples/synthpp_simple/daisy-seed/config_daisy_seed.h deleted file mode 100644 index 18f7136..0000000 --- a/examples/synthpp_simple/daisy-seed/config_daisy_seed.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_DAISY_SEED_H -#define _CONFIG_DAISY_SEED_H - -struct config_cc { - int param_index; - unsigned char cc; -}; - -#define NUM_CCS 10 - -static struct config_cc config_ccs[NUM_CCS] = { - { 0, 7 }, // Volume - { 1, 3 }, // Master tune - { 2, 5 }, // Portamento - { 3, 28 }, // Pulse width - { 4, 74 }, // Cutoff - { 5, 71 }, // Q - { 6, 73 }, // Attack - { 7, 109 }, // Decay - { 8, 110 }, // Sustain - { 9, 72 } // Release -}; - -#endif diff --git a/examples/synthpp_simple/ios/Makefile b/examples/synthpp_simple/ios/Makefile deleted file mode 100644 index 66b8403..0000000 --- a/examples/synthpp_simple/ios/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_simple -SOURCE := ${NAME}.cpp - -include ${ROOT_DIR}/../../common/ios/ios.mk diff --git a/examples/synthpp_simple/src/bw_example_synthpp_simple.cpp b/examples/synthpp_simple/src/bw_example_synthpp_simple.cpp deleted file mode 100644 index 829eba6..0000000 --- a/examples/synthpp_simple/src/bw_example_synthpp_simple.cpp +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#include "bw_example_synthpp_simple.h" - -#include - -void bw_example_synthpp_simple_init(bw_example_synthpp_simple *instance) { - instance->oscPulse.setAntialiasing(true); -} - -void bw_example_synthpp_simple_set_sample_rate(bw_example_synthpp_simple *instance, float sample_rate) { - instance->phaseGen.setSampleRate(sample_rate); - instance->oscPulse.setSampleRate(sample_rate); - instance->svf.setSampleRate(sample_rate); - instance->envGen.setSampleRate(sample_rate); - instance->gain.setSampleRate(sample_rate); - instance->ppm.setSampleRate(sample_rate); -} - -void bw_example_synthpp_simple_reset(bw_example_synthpp_simple *instance) { - instance->phaseGen.reset(); - instance->oscPulse.reset(); - instance->oscFilt.reset(); - instance->svf.reset(); - instance->envGen.reset(); - instance->gain.reset(); - instance->ppm.reset(); - instance->note = -1; -} - -void bw_example_synthpp_simple_process(bw_example_synthpp_simple *instance, const float** x, float** y, int n_samples) { - (void)x; - - if (instance->note >= 0) - instance->phaseGen.setFrequency( - 440.f * bw_pow2f(8.333333333333333e-2f * ((instance->note - 69) + 2.f * instance->params[p_master_tune] - 1.f))); - - for (int i = 0; i < n_samples; i += BUFFER_SIZE) { - float *out = y[0] + i; - int n = bw_minf(n_samples - i, BUFFER_SIZE); - - instance->phaseGen.process({nullptr}, {out}, {instance->buf}, n); - instance->oscPulse.process({out}, {instance->buf}, {out}, n); - instance->oscFilt.process({out}, {out}, n); - instance->svf.process({out}, {out}, {nullptr}, {nullptr}, n); - instance->envGen.process({instance->note >= 0}, {instance->buf}, n); - bufMul<1>({out}, {instance->buf}, {out}, n); - instance->gain.process({out}, {out}, n); - instance->ppm.process({out}, {nullptr}, n); - } -} - -void bw_example_synthpp_simple_set_parameter(bw_example_synthpp_simple *instance, int index, float value) { - instance->params[index] = value; - switch (index) { - case p_volume: - instance->gain.setGainLin(value * value * value); - break; - case p_portamento: - instance->phaseGen.setPortamentoTau(value); - break; - case p_pulse_width: - instance->oscPulse.setPulseWidth(value); - break; - case p_cutoff: - instance->svf.setCutoff(20.f + (20e3f - 20.f) * value * value * value); - break; - case p_Q: - instance->svf.setQ(0.5f + 9.5f * value); - break; - case p_attack: - instance->envGen.setAttack(bw_maxf(0.002f, value)); - break; - case p_decay: - instance->envGen.setDecay(value); - break; - case p_sustain: - instance->envGen.setSustain(value); - break; - case p_release: - instance->envGen.setRelease(bw_maxf(0.002f, value)); - break; - } -} - -float bw_example_synthpp_simple_get_parameter(bw_example_synthpp_simple *instance, int index) { - if (index < p_n) - return instance->params[index]; - const float v = instance->ppm.getYZ1(0); - return v < -200.f ? 0.f : bw_clipf(0.01666666666666666f * v + 1.f, 0.f, 1.f); -} - -void bw_example_synthpp_simple_note_on(bw_example_synthpp_simple *instance, char note, char velocity) { - if (velocity == 0) - bw_example_synthpp_simple_note_off(instance, note); - else - instance->note = note; -} - -void bw_example_synthpp_simple_note_off(bw_example_synthpp_simple *instance, char note) { - if (note == instance->note) - instance->note = -1; -} diff --git a/examples/synthpp_simple/src/bw_example_synthpp_simple.h b/examples/synthpp_simple/src/bw_example_synthpp_simple.h deleted file mode 100644 index 98214a2..0000000 --- a/examples/synthpp_simple/src/bw_example_synthpp_simple.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -#ifndef _BW_EXAMPLE_SYNTHPP_SIMPLE_H -#define _BW_EXAMPLE_SYNTHPP_SIMPLE_H - -#include "platform.h" - -#include -#include -#include -#include -#include -#include -#include - -using namespace Brickworks; - -extern "C" { - -enum { - p_volume, - p_master_tune, - p_portamento, - p_pulse_width, - p_cutoff, - p_Q, - p_attack, - p_decay, - p_sustain, - p_release, - p_n -}; - -#define BUFFER_SIZE 32 - -struct _bw_example_synthpp_simple { - // Sub-components - PhaseGen<1> phaseGen; - OscPulse<1> oscPulse; - OscFilt<1> oscFilt; - SVF<1> svf; - EnvGen<1> envGen; - Gain<1> gain; - PPM<1> ppm; - - // Parameters - float params[p_n]; - - // States - int note; - - // Buffers - float buf[BUFFER_SIZE]; -}; -typedef struct _bw_example_synthpp_simple bw_example_synthpp_simple; - -void bw_example_synthpp_simple_init(bw_example_synthpp_simple *instance); -void bw_example_synthpp_simple_set_sample_rate(bw_example_synthpp_simple *instance, float sample_rate); -void bw_example_synthpp_simple_reset(bw_example_synthpp_simple *instance); -void bw_example_synthpp_simple_process(bw_example_synthpp_simple *instance, const float** x, float** y, int n_samples); -void bw_example_synthpp_simple_set_parameter(bw_example_synthpp_simple *instance, int index, float value); -float bw_example_synthpp_simple_get_parameter(bw_example_synthpp_simple *instance, int index); -void bw_example_synthpp_simple_note_on(bw_example_synthpp_simple *instance, char note, char velocity); -void bw_example_synthpp_simple_note_off(bw_example_synthpp_simple *instance, char note); - -} - -#endif diff --git a/examples/synthpp_simple/src/config.h b/examples/synthpp_simple/src/config.h deleted file mode 100644 index 0222ff9..0000000 --- a/examples/synthpp_simple/src/config.h +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo - */ - -#ifndef _CONFIG_H -#define _CONFIG_H - -// Definitions - -#define IO_MONO 1 -#define IO_STEREO (1<<1) - -struct config_io_bus { - const char *name; - char out; - char aux; - char cv; - char configs; -}; - -struct config_parameter { - const char *name; - const char *shortName; - const char *units; - char out; - char bypass; - int steps; - float defaultValueUnmapped; -}; - -// Data - -#define COMPANY_NAME "Orastron" -#define COMPANY_WEBSITE "https://www.orastron.com/" -#define COMPANY_MAILTO "mailto:info@orastron.com" - -#define PLUGIN_NAME "bw_example_synthpp_simple" -#define PLUGIN_VERSION "1.0.0" - -#define NUM_BUSES_IN 0 -#define NUM_BUSES_OUT 1 -#define NUM_CHANNELS_IN 0 -#define NUM_CHANNELS_OUT 1 - -static struct config_io_bus config_buses_out[NUM_BUSES_OUT] = { - { "Audio out", 1, 0, 0, IO_MONO } -}; - -#define NUM_PARAMETERS 11 - -static struct config_parameter config_parameters[NUM_PARAMETERS] = { - { "Volume", "Volume", "", 0, 0, 0, 0.5f }, - { "Master tune", "Master tune", "st", 0, 0, 0, 0.5f }, - { "Portamento", "Portamento", "s", 0, 0, 0, 0.f }, - { "Pulse width", "PW", "%", 0, 0, 0, 0.5f }, - { "Cutoff", "Cutoff", "Hz", 0, 0, 0, 1.f }, - { "Q", "Q", "", 0, 0, 0, 0.f }, - { "Attack", "Attack", "s", 0, 0, 0, 0.f }, - { "Decay", "Decay", "s", 0, 0, 0, 0.f }, - { "Sustain", "Sustain", "%", 0, 0, 0, 1.f }, - { "Release", "Release", "0", 0, 0, 0, 0.f }, - { "Level", "Level", "", 1, 0, 0, 0.f } -}; - -// Internal API - -#include "bw_example_synthpp_simple.h" - -#define P_TYPE bw_example_synthpp_simple -#define P_INIT bw_example_synthpp_simple_init -#define P_SET_SAMPLE_RATE bw_example_synthpp_simple_set_sample_rate -#define P_RESET bw_example_synthpp_simple_reset -#define P_PROCESS bw_example_synthpp_simple_process -#define P_SET_PARAMETER bw_example_synthpp_simple_set_parameter -#define P_GET_PARAMETER bw_example_synthpp_simple_get_parameter -#define P_NOTE_ON bw_example_synthpp_simple_note_on -#define P_NOTE_OFF bw_example_synthpp_simple_note_off - -#endif diff --git a/examples/synthpp_simple/src/config.js b/examples/synthpp_simple/src/config.js deleted file mode 100644 index 2fb62da..0000000 --- a/examples/synthpp_simple/src/config.js +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2022 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File author: Stefano D'Angelo - */ - -var buses = [ - { - stereo: false, - output: true - } -]; - -var parameters = [ - { - name: "Volume", - output: false, - defaultValue: 0.5 - }, - { - name: "Master tune", - output: false, - defaultValue: 0.5 - }, - { - name: "Portamento", - output: false, - defaultValue: 0.0 - }, - { - name: "Pulse width", - output: false, - defaultValue: 0.5 - }, - { - name: "Cutoff", - output: false, - defaultValue: 1.0 - }, - { - name: "Q", - output: false, - defaultValue: 0.0 - }, - { - name: "Attack", - output: false, - defaultValue: 0.0 - }, - { - name: "Decay", - output: false, - defaultValue: 0.0 - }, - { - name: "Sustain", - output: false, - defaultValue: 1.0 - }, - { - name: "Release", - output: false, - defaultValue: 0.0 - }, - { - name: "Level", - output: true, - defaultValue: 0.0 - } -]; diff --git a/examples/synthpp_simple/vst3/Makefile b/examples/synthpp_simple/vst3/Makefile deleted file mode 100644 index dddcda2..0000000 --- a/examples/synthpp_simple/vst3/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) - -NAME := bw_example_synthpp_simple -SOURCE := bw_example_synthpp_simple.cpp - -include ${ROOT_DIR}/../../common/vst3/vst3.mk - -CXXFLAGS += -DRELEASE=1 -DNDEBUG -DBW_NO_DEBUG -#CXXFLAGS += -DDEVELOPMENT=1 -DBW_DEBUG_DEEP diff --git a/examples/synthpp_simple/vst3/config_vst3.h b/examples/synthpp_simple/vst3/config_vst3.h deleted file mode 100644 index d19b0e0..0000000 --- a/examples/synthpp_simple/vst3/config_vst3.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Brickworks - * - * Copyright (C) 2023 Orastron Srl unipersonale - * - * Brickworks 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, version 3 of the License. - * - * Brickworks 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. - * - * You should have received a copy of the GNU General Public License - * along with Brickworks. If not, see . - * - * File authors: Stefano D'Angelo, Paolo Marrone - */ - -#ifndef _VST3_CONFIG_H -#define _VST3_CONFIG_H - -#define PLUGIN_SUBCATEGORY "Instrument|Synth" - -#define PLUGIN_GUID_1 0x5008d6f4 -#define PLUGIN_GUID_2 0x7b104d36 -#define PLUGIN_GUID_3 0x8163d0a0 -#define PLUGIN_GUID_4 0x4a599a52 - -#define CTRL_GUID_1 0xe6967755 -#define CTRL_GUID_2 0xdaf84890 -#define CTRL_GUID_3 0x8858da74 -#define CTRL_GUID_4 0x887ca242 - -#endif