Skip to content

File drip.h

File List > DaisySP > Source > PhysicalModeling > drip.h

Go to the documentation of this file

Source Code

/*
Copyright (c) 2020 Electrosmith, Corp, Paul Batchelor

Use of this source code is governed by an MIT-style
license that can be found in the LICENSE file or at
https://opensource.org/licenses/MIT.
*/

#pragma once
#ifndef DSY_DRIP_H
#define DSY_DRIP_H

#include <stdint.h>
#ifdef __cplusplus

namespace daisysp
{
class Drip
{
  public:
    Drip() {}
    ~Drip() {}

    void Init(float sample_rate, float dettack);

    float Process(bool trig);

  private:
    float gains0_, gains1_, gains2_, kloop_, dettack_, num_tubes_, damp_,
        shake_max_, freq_, freq1_, freq2_, amp_, snd_level_, outputs00_,
        outputs01_, outputs10_, outputs11_, outputs20_, outputs21_,
        total_energy_, center_freqs0_, center_freqs1_, center_freqs2_,
        num_objects_save_, sound_decay_, system_decay_, finalZ0_, finalZ1_,
        finalZ2_, coeffs01_, coeffs00_, coeffs11_, coeffs10_, coeffs21_,
        coeffs20_, shake_energy_, shake_damp_, shake_max_save_, num_objects_,
        sample_rate_, res_freq0_, res_freq1_, res_freq2_, inputs1_, inputs2_;

    int   my_random(int max);
    float noise_tick();
};
} // namespace daisysp
#endif
#endif