1 2 /* 3 * Diverse Bristol audio routines. 4 * Copyright (c) by Nick Copeland <nickycopeland@hotmail.com> 1996,2012 5 * 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, see <http://www.gnu.org/licenses/>. 19 * 20 */ 21 22 #ifndef HCHORUS_H 23 #define HCHORUS_H 24 25 #define TAPS 9 26 #define HISTSIZE 32 27 #define MEMSIZE (HISTSIZE * TAPS) 28 29 typedef struct BristolHCHORUS { 30 bristolOPSpec spec; 31 } bristolHCHORUS; 32 33 typedef struct BristolHCTap { 34 float last; 35 float out; 36 } bristolHCTap; 37 38 typedef struct BristolHCHORUSlocal { 39 unsigned int flags; 40 bristolHCTap phase[TAPS+1]; 41 float tap[TAPS+1]; 42 int tcount; 43 int dir; 44 int ctap; 45 int clab; 46 float ph; 47 float g1; 48 float g2; 49 float g3; 50 float g4; 51 float g5; 52 float g6; 53 int mstart[TAPS+1]; 54 int mend[TAPS+1]; 55 int mcur[TAPS+1]; 56 } bristolHCHORUSlocal; 57 58 #endif /* HCHORUS_H */ 59 60