Droplet size

This commit is contained in:
Christian Colglazier 2020-09-13 09:04:24 -04:00
parent bdb0e33d49
commit 2922aca05a
4 changed files with 14 additions and 4 deletions

View File

@ -7,8 +7,11 @@
using namespace daisy;
enum class DropletState {kFull, kLeft, kRight};
class Droplet {
public:
DropletState state;
virtual ~Droplet() {};
virtual void Control()=0;
virtual void Process(float**, float**, size_t)=0;

View File

@ -1,11 +1,16 @@
#include "noise_droplet.h"
NoiseDroplet::NoiseDroplet(DaisyPatch* m_patch, float sample_rate) {
NoiseDroplet::NoiseDroplet(DaisyPatch* m_patch,
float sample_rate,
DropletState m_state) {
noise.Init();
filter.Init();
patch = m_patch;
state = m_state;
}
void NoiseDroplet::Control() {}
void NoiseDroplet::Process(float** in, float** out, size_t size) {
for (size_t i = 0; i < size; i += 2) {
float sig = noise.Process();
@ -14,6 +19,7 @@ void NoiseDroplet::Process(float** in, float** out, size_t size) {
}
}
}
void NoiseDroplet::Draw() {
WriteString(*patch, 0, 30, Font_6x8, "Test");
}

View File

@ -13,8 +13,9 @@ class NoiseDroplet: public Droplet {
private:
DaisyPatch* patch;
daisysp::WhiteNoise noise;
daisysp::NlFilt filter;
public:
NoiseDroplet(DaisyPatch*, float);
NoiseDroplet(DaisyPatch*, float, DropletState);
void Control();
void Process(float**, float**, size_t);
void Draw();

View File

@ -19,7 +19,7 @@ Droplet* droplet;
int main(void) {
patch.Init();
float samplerate = patch.AudioSampleRate();
droplet = new NoiseDroplet(&patch, samplerate);
droplet = new NoiseDroplet(&patch, samplerate, DropletState::kFull);
patch.StartAdc();
patch.StartAudio(AudioThrough);
@ -54,9 +54,9 @@ void ProcessOled() {
if (menu.InMenu()) {
menu.ProcessMenuOled();
} else {
droplet->Draw();
WriteString(patch, 0, 0, Font_6x8, menu.SelectedName());
}
droplet->Draw();
patch.display.Update();
}