aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/xsample/source/groove.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/xsample/source/groove.cpp')
-rw-r--r--externals/grill/xsample/source/groove.cpp41
1 files changed, 18 insertions, 23 deletions
diff --git a/externals/grill/xsample/source/groove.cpp b/externals/grill/xsample/source/groove.cpp
index 795eb654..e756f28a 100644
--- a/externals/grill/xsample/source/groove.cpp
+++ b/externals/grill/xsample/source/groove.cpp
@@ -22,8 +22,7 @@ WARRANTIES, see the file, "license.txt," in this distribution.
class xgroove:
public xinter
{
-// FLEXT_HEADER_S(xgroove,xinter,setup)
- FLEXT_HEADER(xgroove,xinter)
+ FLEXT_HEADER_S(xgroove,xinter,setup)
public:
xgroove(I argc,const t_atom *argv);
@@ -87,7 +86,7 @@ protected:
V mg_pos(F &v) const { v = curpos*s2u; }
private:
-// static V setup(t_class *c);
+ static V setup(t_class *c);
virtual V s_dsp();
@@ -129,14 +128,24 @@ private:
FLEXT_LIB_DSP_V("xgroove~",xgroove)
-/*
-V xgroove::setup(t_class *)
+
+V xgroove::setup(t_class *c)
{
-#ifndef PD
- post("loaded xgroove~ - part of xsample objects, version " XSAMPLE_VERSION " - (C) Thomas Grill, 2001-2002");
-#endif
+ FLEXT_CADDMETHOD_(c,0,"all",m_all);
+ FLEXT_CADDMETHOD(c,1,m_min);
+ FLEXT_CADDMETHOD(c,2,m_max);
+
+ FLEXT_CADDATTR_VAR(c,"min",mg_min,m_min);
+ FLEXT_CADDATTR_VAR(c,"max",mg_max,m_max);
+ FLEXT_CADDATTR_VAR(c,"pos",mg_pos,m_pos);
+
+ FLEXT_CADDATTR_VAR_E(c,"loop",loopmode,m_loop);
+
+ FLEXT_CADDMETHOD_F(c,0,"xzone",m_xzone);
+ FLEXT_CADDMETHOD_F(c,0,"xsymm",m_xsymm);
+ FLEXT_CADDMETHOD_(c,0,"xshape",m_xshape);
+ FLEXT_CADDMETHOD_B(c,0,"xkeep",m_xkeep);
}
-*/
xgroove::xgroove(I argc,const t_atom *argv):
loopmode(xsl_loop),curpos(0),
@@ -175,20 +184,6 @@ xgroove::xgroove(I argc,const t_atom *argv):
AddOutFloat(2); // play min & max
AddOutBang(); // loop bang
- FLEXT_ADDMETHOD_(0,"all",m_all);
- FLEXT_ADDMETHOD(1,m_min);
- FLEXT_ADDMETHOD(2,m_max);
-
- FLEXT_ADDATTR_VAR("min",mg_min,m_min);
- FLEXT_ADDATTR_VAR("max",mg_max,m_max);
- FLEXT_ADDATTR_VAR("pos",mg_pos,m_pos);
-
- FLEXT_ADDATTR_VAR_E("loop",loopmode,m_loop);
-
- FLEXT_ADDMETHOD_F(0,"xzone",m_xzone);
- FLEXT_ADDMETHOD_F(0,"xsymm",m_xsymm);
- FLEXT_ADDMETHOD_(0,"xshape",m_xshape);
- FLEXT_ADDMETHOD_B(0,"xkeep",m_xkeep);
znbuf = new S *[outchns];
for(I i = 0; i < outchns; ++i) znbuf[i] = new S[0];