1 /* 2 Copyright (C) 2009 Fons Adriaensen <fons@kokkinizita.net> 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 2 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program; if not, write to the Free Software 16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 17 */ 18 19 20 #ifndef __AUTOWAH_H 21 #define __AUTOWAH_H 22 23 24 #include "ladspaplugin.h" 25 26 27 class Ladspa_Autowah : public LadspaPlugin 28 { 29 public: 30 31 enum { A_INP, A_OUT, C_DRIVE, C_DECAY, C_RANGE, C_FREQ, C_OPMIX, NPORT }; 32 Ladspa_Autowah(SampleRate fsam)33 Ladspa_Autowah (SampleRate fsam) : LadspaPlugin (fsam) {} 34 virtual void setport (PortIndex port, PortData *data); 35 virtual void active (bool act); 36 virtual void runproc (SampleCount len, bool add); ~Ladspa_Autowah(void)37 virtual ~Ladspa_Autowah (void) {} 38 39 private: 40 41 float *_port [NPORT]; 42 float _wbase; 43 float _bbase; 44 float _rfact; 45 float _z1, _z2; 46 float _s1, _s2; 47 float _gx, _gy; 48 float _dr; 49 }; 50 51 52 #endif 53