mirror of
				https://github.com/AquaMorph/Droplets.git
				synced 2025-10-31 16:23:19 +00:00 
			
		
		
		
	Refactored droplet design
This commit is contained in:
		| @@ -3,12 +3,16 @@ | ||||
| #ifndef CASCADE_DROPLETS_DROPLET_H_ | ||||
| #define CASCADE_DROPLETS_DROPLET_H_ | ||||
|  | ||||
| #include "daisy_patch.h" | ||||
|  | ||||
| using namespace daisy; | ||||
|  | ||||
| class Droplet { | ||||
|  public: | ||||
|   virtual ~Droplet() {}; | ||||
|   virtual void Control(float, float, float, float)=0; | ||||
|   virtual void Control()=0; | ||||
|   virtual void Process(float**, float**, size_t)=0; | ||||
|   virtual void Draw(int*, int, int)=0; | ||||
|   virtual void Draw()=0; | ||||
| }; | ||||
|  | ||||
| #endif // CASCADE_DROPLETS_DROPLET_H_ | ||||
|   | ||||
| @@ -1,10 +1,11 @@ | ||||
| #include "noise_droplet.h" | ||||
|  | ||||
| NoiseDroplet::NoiseDroplet(float sample_rate) { | ||||
| NoiseDroplet::NoiseDroplet(DaisyPatch* m_patch, float sample_rate) { | ||||
|   noise.Init(); | ||||
|   patch = m_patch; | ||||
| } | ||||
|  | ||||
| void NoiseDroplet::Control(float ctr_1, float ctr_2, float ctr_3, float ctr_4) {} | ||||
| 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(); | ||||
| @@ -13,4 +14,6 @@ void NoiseDroplet::Process(float** in, float** out, size_t size) { | ||||
|     } | ||||
|   } | ||||
| } | ||||
| void NoiseDroplet::Draw(int* d, int width, int height) {} | ||||
| void NoiseDroplet::Draw() { | ||||
|   WriteString(*patch, 0, 30, Font_6x8, "Test"); | ||||
| } | ||||
|   | ||||
| @@ -7,15 +7,17 @@ | ||||
| #include "daisy_patch.h" | ||||
|  | ||||
| #include "droplet.h" | ||||
| #include "../util.h" | ||||
|  | ||||
| class NoiseDroplet: public Droplet { | ||||
|  private: | ||||
|   DaisyPatch* patch; | ||||
|   daisysp::WhiteNoise noise; | ||||
|  public: | ||||
|   NoiseDroplet(float); | ||||
|   void Control(float, float, float, float); | ||||
|   NoiseDroplet(DaisyPatch*, float); | ||||
|   void Control(); | ||||
|   void Process(float**, float**, size_t); | ||||
|   void Draw(int*, int, int); | ||||
|   void Draw(); | ||||
| }; | ||||
|  | ||||
| #endif // CASCADE_DROPLETS_NOISE_DROPLET_H_ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user