Update of /cvsroot/foo/foo/elkfoo/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28202
Modified Files:
Makefile.am modules.m
Log Message:
added support for experimental 'banff' modules
Index: modules.m
===================================================================
RCS file: /cvsroot/foo/foo/elkfoo/src/modules.m,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** modules.m 16 Aug 2004 04:42:26 -0000 1.6
--- modules.m 26 Aug 2004 09:52:02 -0000 1.7
***************
*** 37,40 ****
--- 37,41 ----
#include <FOO/FOOBreakpointFunction.h>
+ // orthodox modules
#include "FOOMAdd.h"
#include "FOOMBandlimitedNoise.h"
***************
*** 69,72 ****
--- 70,77 ----
#include "FOOMVariableTwoPole.h"
+ // banff edition
+ #include "FOOMAllpass.h"
+ #include "FOOMComb.h"
+
#include <sys/types.h>
#include <sys/timeb.h>
***************
*** 1210,1213 ****
--- 1215,1265 ----
+ static SchemeObject
+ P_Make_Allpass (SchemeObject in1,
+ SchemeObject in2,
+ SchemeObject in3)
+ {
+ SchemeObject module;
+ id input = A_Get_Input(in1);
+ id rho = A_Get_Input(in2);
+ int order = Get_Integer(in3);
+
+ module = A_Make_Module([FOOMAllpass class]);
+ [IdOf(module) initWithOrder: order];
+ [IdOf(module) connectInput: 0 to: input];
+ [IdOf(module) connectInput: 1 to: rho];
+
+ return A_Make_Terminal_Signal(module, 0, 0.);
+ }
+
+
+ static SchemeObject
+ P_Make_Comb (SchemeObject in1,
+ SchemeObject in2,
+ SchemeObject in3,
+ SchemeObject in4,
+ SchemeObject in5,
+ SchemeObject in6)
+ {
+ SchemeObject module;
+ id input = A_Get_Input(in1);
+ id delay = A_Get_Input(in2);
+ id feedback = A_Get_Input(in3);
+ id wetdry = A_Get_Input(in4);
+ int taps = Get_Integer(in5);
+ double max_delay = Get_Double(in6);
+
+ module = A_Make_Module([FOOMComb class]);
+ [IdOf(module) initWithTaps: taps maxDelay: max_delay];
+ [IdOf(module) connectInput: 0 to: input];
+ [IdOf(module) connectInput: 1 to: delay];
+ [IdOf(module) connectInput: 2 to: feedback];
+ [IdOf(module) connectInput: 3 to: wetdry];
+
+ return A_Make_Terminal_Signal(module, 0, 0.);
+ }
+
+
+
//
// math modules
***************
*** 1308,1311 ****
--- 1360,1366 ----
DP(P_Make_Min, "foo:make-min", 2, 2, EVAL);
DP(P_Make_Max, "foo:make-max", 2, 2, EVAL);
+ // banff edition
+ DP(P_Make_Allpass, "foo:make-allpass", 3, 3, EVAL);
+ DP(P_Make_Comb, "foo:make-comb", 6, 6, EVAL);
P_Provide(Intern("modules"));
Index: Makefile.am
===================================================================
RCS file: /cvsroot/foo/foo/elkfoo/src/Makefile.am,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** Makefile.am 9 Aug 2004 01:42:05 -0000 1.8
--- Makefile.am 26 Aug 2004 09:52:02 -0000 1.9
***************
*** 48,52 ****
elkfoo_la_OBJCFLAGS = $(ELKFOO_OBJCFLAGS) \
$(FND_DEFINE) \
! -I../../libfoo/modules/orthodox
elkfoo_la_LDFLAGS = $(ELKFOO_LDFLAGS) \
-module -avoid-version
--- 48,54 ----
elkfoo_la_OBJCFLAGS = $(ELKFOO_OBJCFLAGS) \
$(FND_DEFINE) \
! -I../../libfoo/modules/orthodox \
! -I../../libfoo/modules/banff \
! $(NULL)
elkfoo_la_LDFLAGS = $(ELKFOO_LDFLAGS) \
-module -avoid-version
|