aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/LV2/src/AtmosphereChannel/AtmosphereChannel.cpp
blob: 81709e7cedef33a122abe2ede42859b7f26b1f32 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
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;