mirror of
https://github.com/AquaMorph/Droplets.git
synced 2025-04-30 09:45:35 +00:00
Droplet size
This commit is contained in:
parent
bdb0e33d49
commit
2922aca05a
@ -7,8 +7,11 @@
|
|||||||
|
|
||||||
using namespace daisy;
|
using namespace daisy;
|
||||||
|
|
||||||
|
enum class DropletState {kFull, kLeft, kRight};
|
||||||
|
|
||||||
class Droplet {
|
class Droplet {
|
||||||
public:
|
public:
|
||||||
|
DropletState state;
|
||||||
virtual ~Droplet() {};
|
virtual ~Droplet() {};
|
||||||
virtual void Control()=0;
|
virtual void Control()=0;
|
||||||
virtual void Process(float**, float**, size_t)=0;
|
virtual void Process(float**, float**, size_t)=0;
|
||||||
|
@ -1,11 +1,16 @@
|
|||||||
#include "noise_droplet.h"
|
#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();
|
noise.Init();
|
||||||
|
filter.Init();
|
||||||
patch = m_patch;
|
patch = m_patch;
|
||||||
|
state = m_state;
|
||||||
}
|
}
|
||||||
|
|
||||||
void NoiseDroplet::Control() {}
|
void NoiseDroplet::Control() {}
|
||||||
|
|
||||||
void NoiseDroplet::Process(float** in, float** out, size_t size) {
|
void NoiseDroplet::Process(float** in, float** out, size_t size) {
|
||||||
for (size_t i = 0; i < size; i += 2) {
|
for (size_t i = 0; i < size; i += 2) {
|
||||||
float sig = noise.Process();
|
float sig = noise.Process();
|
||||||
@ -14,6 +19,7 @@ void NoiseDroplet::Process(float** in, float** out, size_t size) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void NoiseDroplet::Draw() {
|
void NoiseDroplet::Draw() {
|
||||||
WriteString(*patch, 0, 30, Font_6x8, "Test");
|
WriteString(*patch, 0, 30, Font_6x8, "Test");
|
||||||
}
|
}
|
||||||
|
@ -13,8 +13,9 @@ class NoiseDroplet: public Droplet {
|
|||||||
private:
|
private:
|
||||||
DaisyPatch* patch;
|
DaisyPatch* patch;
|
||||||
daisysp::WhiteNoise noise;
|
daisysp::WhiteNoise noise;
|
||||||
|
daisysp::NlFilt filter;
|
||||||
public:
|
public:
|
||||||
NoiseDroplet(DaisyPatch*, float);
|
NoiseDroplet(DaisyPatch*, float, DropletState);
|
||||||
void Control();
|
void Control();
|
||||||
void Process(float**, float**, size_t);
|
void Process(float**, float**, size_t);
|
||||||
void Draw();
|
void Draw();
|
||||||
|
@ -19,7 +19,7 @@ Droplet* droplet;
|
|||||||
int main(void) {
|
int main(void) {
|
||||||
patch.Init();
|
patch.Init();
|
||||||
float samplerate = patch.AudioSampleRate();
|
float samplerate = patch.AudioSampleRate();
|
||||||
droplet = new NoiseDroplet(&patch, samplerate);
|
droplet = new NoiseDroplet(&patch, samplerate, DropletState::kFull);
|
||||||
patch.StartAdc();
|
patch.StartAdc();
|
||||||
patch.StartAudio(AudioThrough);
|
patch.StartAudio(AudioThrough);
|
||||||
|
|
||||||
@ -54,9 +54,9 @@ void ProcessOled() {
|
|||||||
if (menu.InMenu()) {
|
if (menu.InMenu()) {
|
||||||
menu.ProcessMenuOled();
|
menu.ProcessMenuOled();
|
||||||
} else {
|
} else {
|
||||||
|
droplet->Draw();
|
||||||
WriteString(patch, 0, 0, Font_6x8, menu.SelectedName());
|
WriteString(patch, 0, 0, Font_6x8, menu.SelectedName());
|
||||||
}
|
}
|
||||||
droplet->Draw();
|
|
||||||
patch.display.Update();
|
patch.display.Update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user