#ifndef HECK_DAISY_INSTR_KICK_HH #define HECK_DAISY_INSTR_KICK_HH #include "perkons_instrument_interface.hh" #include "daisy_seed.h" #include "daisysp.h" namespace ld = daisy; namespace dsp = daisysp; namespace Heck { namespace Instrument { class Kick : public PerkonsInstrumentInterface { public: void init(float samplerate); void trigger() override; void ctl(unsigned int ctl_nr, float val) override; void switch_mode(unsigned int pos) override; void switch_variation(unsigned int pos) override; void switch_filter(unsigned int pos) override; float nextsample() override; private: dsp::Oscillator osc; dsp::AdEnv volEnv; dsp::AdEnv pitchEnv; }; } // namespace Instrument } // namespace Heck #endif