aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2020-07-21 22:46:15 +0200
committerHarald Eilertsen <haraldei@anduin.net>2020-07-21 22:46:15 +0200
commit77101140984ec2a9b2547987ceb01ba1f98bd544 (patch)
tree807cf7250383d9d287c1003d64fa2b2f4291316b /plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp
parent87e60a7db4d81c8548a753e7c9c7c0d6eec2065b (diff)
downloadairwindows-lv2-port-77101140984ec2a9b2547987ceb01ba1f98bd544.tar.gz
airwindows-lv2-port-77101140984ec2a9b2547987ceb01ba1f98bd544.tar.bz2
airwindows-lv2-port-77101140984ec2a9b2547987ceb01ba1f98bd544.zip
LV2: Add Atmosphere plugins (buss and channel.)
Diffstat (limited to 'plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp')
-rw-r--r--plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp b/plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp
new file mode 100644
index 0000000..81709e7
--- /dev/null
+++ b/plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp
@@ -0,0 +1,40 @@
+#include "AtmosphereChannel.h"
+#include <iostream>
+#include <lv2wrapper.h>
+
+AtmosphereChannel::AtmosphereChannel(double rate)
+ : LV2Plugin(rate)
+ , gainchase(-90.0)
+ , settingchase(-90.0)
+ , chasespeed(350.0)
+ , thresholdA(0.618033988749894)
+ , thresholdB(0.679837387624884)
+ , thresholdC(0.747821126387373)
+ , thresholdD(0.82260323902611)
+ , thresholdE(0.904863562928721)
+ , thresholdF(0.995349919221593)
+ , thresholdG(1.094884911143752)
+ , thresholdH(1.204373402258128)
+ , thresholdI(1.32481074248394)
+ , thresholdJ(1.457291816732335)
+ , thresholdK(1.603020998405568)
+ , thresholdL(1.763323098246125)
+ , thresholdM(1.939655408070737)
+{
+}
+
+void AtmosphereChannel::run(uint32_t num_samples)
+{
+ A = *params[0];
+
+ processReplacing(const_cast<float **>(in), out, num_samples);
+}
+
+//
+// Include the processing code from the VST version.
+//
+#include <cmath>
+#include "../../../LinuxVST/src/AtmosphereChannel/AtmosphereChannelProc.cpp"
+
+// Create the LV2Wrapper and register the plugin
+LV2Wrapper<AtmosphereChannel> plugin;