summaryrefslogtreecommitdiff
path: root/chugins/Clipper.cpp
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2012-08-30 17:17:38 +0200
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2012-08-30 17:17:38 +0200
commit3c19adc8a7d67305631d560ac69a8e6f74f052f8 (patch)
tree3bf7d48107feeaa885425980942667f482e6e639 /chugins/Clipper.cpp
parentfd7a7851ef99dedf5116dc5dff772445eb670218 (diff)
downloaddigitale-debutanten-3c19adc8a7d67305631d560ac69a8e6f74f052f8.tar.gz
replace Chubgraph Clipper with Chugin Clipper, giving a significant speed increase
* Chubgraph Clipper now available as ClipperGraph * Chugins are built in chugins/ and do not need to be installed * additional command line options to ./start_chuck are passed to chuck
Diffstat (limited to 'chugins/Clipper.cpp')
-rw-r--r--chugins/Clipper.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/chugins/Clipper.cpp b/chugins/Clipper.cpp
new file mode 100644
index 0000000..7c80793
--- /dev/null
+++ b/chugins/Clipper.cpp
@@ -0,0 +1,22 @@
+#include <chuck_dl.h>
+#include <chuck_def.h>
+
+CK_DLL_TICK(clipper_tick);
+
+CK_DLL_QUERY(Clipper)
+{
+ QUERY->setname(QUERY, "Clipper");
+
+ QUERY->begin_class(QUERY, "Clipper", "UGen");
+ QUERY->add_ugen_func(QUERY, clipper_tick, NULL, 1, 1);
+ QUERY->end_class(QUERY);
+
+ return TRUE;
+}
+
+CK_DLL_TICK(clipper_tick)
+{
+ *out = in > 1. ? 1. : (in < -1. ? -1. : in);
+
+ return TRUE;
+}