00001 /* 00002 $Id: OnezeroUG.h 3255 2005-05-14 03:27:27Z leighsmith $ 00003 00004 Defined In: The MusicKit 00005 Description: 00006 OnezeroUG - from dsp macro /usr/lib/dsp/ugsrc/onezero.asm (see source for details). 00007 00008 You instantiate a subclass of the form OnezeroUG<a><b>, where 00009 <a> = space of output and <b> = space of input. 00010 00011 The onezero unit-generator implements a one-zero 00012 filter section in direct form. For best performance, 00013 the input and output signals should be in separate 00014 memory spaces x or y. 00015 00016 Original Author: David A. Jaffe 00017 00018 Copyright (c) 1988-1992, NeXT Computer, Inc. 00019 Portions Copyright (c) 1994 NeXT Computer, Inc. and reproduced under license from NeXT 00020 Portions Copyright (c) 1994 Stanford University. 00021 Portions Copyright (c) 1999-2001, The MusicKit Project. 00022 */ 00023 // classgroup Filters 00064 #ifndef __MK_OnezeroUG_H___ 00065 #define __MK_OnezeroUG_H___ 00066 00067 #import <MusicKit/MKUnitGenerator.h> 00068 00069 @interface OnezeroUG: MKUnitGenerator 00070 00080 -setInput: (id) aPatchPoint; 00081 /* Sets filter input. */ 00082 00083 00093 -setOutput: (id) aPatchPoint; 00094 /* Sets filter output. */ 00095 00096 00106 -setB0:(double)value; 00107 /* Sets gain of filter. */ 00108 00109 00120 -setB1:(double)value; 00121 /* Sets coefficient of once-delayed input sample. */ 00122 00131 +(BOOL)shouldOptimize:(unsigned) arg; 00132 00140 -clear; 00141 /* Clears filter's state variable. */ 00142 00143 @end 00144 00145 #endif