diff options
73 files changed, 436 insertions, 148 deletions
diff --git a/externals/grill/flext/config-pd-bcc.txt b/externals/grill/flext/config-pd-bcc.txt index ab2d2824..3d989e3e 100644 --- a/externals/grill/flext/config-pd-bcc.txt +++ b/externals/grill/flext/config-pd-bcc.txt @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/config-pd-cygwin.txt b/externals/grill/flext/config-pd-cygwin.txt index 2407cb05..667af1ef 100644 --- a/externals/grill/flext/config-pd-cygwin.txt +++ b/externals/grill/flext/config-pd-cygwin.txt @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/config-pd-darwin.txt b/externals/grill/flext/config-pd-darwin.txt index 3b8ba1f8..7daaa036 100644 --- a/externals/grill/flext/config-pd-darwin.txt +++ b/externals/grill/flext/config-pd-darwin.txt @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where are the PD header files? diff --git a/externals/grill/flext/config-pd-linux.txt b/externals/grill/flext/config-pd-linux.txt index d745339e..3995e500 100644 --- a/externals/grill/flext/config-pd-linux.txt +++ b/externals/grill/flext/config-pd-linux.txt @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # your c++ compiler (normally g++) diff --git a/externals/grill/flext/config-pd-msvc.txt b/externals/grill/flext/config-pd-msvc.txt index f29e66dd..6b8102ce 100644 --- a/externals/grill/flext/config-pd-msvc.txt +++ b/externals/grill/flext/config-pd-msvc.txt @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/flext.cw b/externals/grill/flext/flext.cw Binary files differindex 3bb70947..6ff16f56 100644 --- a/externals/grill/flext/flext.cw +++ b/externals/grill/flext/flext.cw diff --git a/externals/grill/flext/flext.dsp b/externals/grill/flext/flext.dsp index da59dfb9..2c1656e5 100644 --- a/externals/grill/flext/flext.dsp +++ b/externals/grill/flext/flext.dsp @@ -43,7 +43,7 @@ RSC=rc.exe # PROP Intermediate_Dir "pd-msvc\s" # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /G6 /W3 /O2 /I "c:\programme\audio\pd\src" /I "f:\prog\packs\sndobj\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D FLEXT_SYS=2 /YX"flext.h" /FD /c +# ADD CPP /nologo /G6 /W3 /O2 /I "c:\programme\audio\pd\src" /I "f:\prog\packs\sndobj\include" /I "f:\prog\packs\stk\include" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /D FLEXT_SYS=2 /YX"flext.h" /FD /c # ADD BASE RSC /l 0xc07 /d "NDEBUG" # ADD RSC /l 0xc07 /d "NDEBUG" BSC32=bscmake.exe @@ -303,11 +303,11 @@ SOURCE=.\source\flsndobj.h # PROP Default_Filter "" # Begin Source File -SOURCE=.\flstk.cpp +SOURCE=.\source\flstk.cpp # End Source File # Begin Source File -SOURCE=.\flstk.h +SOURCE=.\source\flstk.h # End Source File # End Group # End Target diff --git a/externals/grill/flext/license.txt b/externals/grill/flext/license.txt index 1e0de2f2..190802c2 100644 --- a/externals/grill/flext/license.txt +++ b/externals/grill/flext/license.txt @@ -1,5 +1,5 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (C) 2001,2002 Thomas Grill +Copyright (C) 2001-2003 Thomas Grill This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License diff --git a/externals/grill/flext/make-inc.pd-msvc b/externals/grill/flext/make-inc.pd-msvc index 04ade4a2..7de273bc 100644 --- a/externals/grill/flext/make-inc.pd-msvc +++ b/externals/grill/flext/make-inc.pd-msvc @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # ----- for internal use ---------------------- # diff --git a/externals/grill/flext/makefile.pd-bcc b/externals/grill/flext/makefile.pd-bcc index eece2120..f7899c66 100644 --- a/externals/grill/flext/makefile.pd-bcc +++ b/externals/grill/flext/makefile.pd-bcc @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for BorlandC++ # diff --git a/externals/grill/flext/makefile.pd-cygwin b/externals/grill/flext/makefile.pd-cygwin index 5209c02c..31cce707 100644 --- a/externals/grill/flext/makefile.pd-cygwin +++ b/externals/grill/flext/makefile.pd-cygwin @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ cygwin # diff --git a/externals/grill/flext/makefile.pd-darwin b/externals/grill/flext/makefile.pd-darwin index d2b94560..89b77f00 100644 --- a/externals/grill/flext/makefile.pd-darwin +++ b/externals/grill/flext/makefile.pd-darwin @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ darwin # diff --git a/externals/grill/flext/makefile.pd-linux b/externals/grill/flext/makefile.pd-linux index 21863ab3..4ec7cb96 100644 --- a/externals/grill/flext/makefile.pd-linux +++ b/externals/grill/flext/makefile.pd-linux @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ linux # diff --git a/externals/grill/flext/makefile.pd-msvc b/externals/grill/flext/makefile.pd-msvc index d775ab08..986fd9db 100644 --- a/externals/grill/flext/makefile.pd-msvc +++ b/externals/grill/flext/makefile.pd-msvc @@ -1,5 +1,5 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for MSVC++ # diff --git a/externals/grill/flext/readme.txt b/externals/grill/flext/readme.txt index 37e600a8..9c7b2d60 100644 --- a/externals/grill/flext/readme.txt +++ b/externals/grill/flext/readme.txt @@ -1,6 +1,6 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flatom.cpp b/externals/grill/flext/source/flatom.cpp index 3d5db8f2..9f905d7b 100644 --- a/externals/grill/flext/source/flatom.cpp +++ b/externals/grill/flext/source/flatom.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flatom_app.cpp b/externals/grill/flext/source/flatom_app.cpp index aedaadcd..90b4af82 100755 --- a/externals/grill/flext/source/flatom_app.cpp +++ b/externals/grill/flext/source/flatom_app.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flatom_part.cpp b/externals/grill/flext/source/flatom_part.cpp index b736666a..05a3710d 100755 --- a/externals/grill/flext/source/flatom_part.cpp +++ b/externals/grill/flext/source/flatom_part.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flatom_pr.cpp b/externals/grill/flext/source/flatom_pr.cpp index 854ae379..d6f030b5 100644 --- a/externals/grill/flext/source/flatom_pr.cpp +++ b/externals/grill/flext/source/flatom_pr.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flattr.cpp b/externals/grill/flext/source/flattr.cpp index c6e88fe5..3a898498 100644 --- a/externals/grill/flext/source/flattr.cpp +++ b/externals/grill/flext/source/flattr.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. @@ -24,8 +24,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. flext_base::attritem::attritem(const t_symbol *t,metharg tp,methfun f,int fl): item(t,0,NULL),argtp(tp), fun(f),flags(fl) -{ -} +{} flext_base::attritem::~attritem() { @@ -94,6 +93,29 @@ void flext_base::AddAttrib(t_class *c,const char *attr,metharg tp,methfun gfun,m AddAttrib(ClAttrs(c),ClMeths(c),attr,tp,gfun,sfun); } +int flext_base::ListAttr(AtomList &la) const +{ + int cnt = attrhead?attrhead->Count():0; + int ccnt = clattrhead?clattrhead->Count():0; + la(ccnt+cnt); + + int ix = 0; + for(int i = 0; i <= 1; ++i) { + itemarr *a = i?attrhead:clattrhead; + if(a) { + for(int ai = 0; ai < a->Size(); ++ai) { + for(item *l = a->Item(ai); l; l = l->nxt) + { + attritem *a = (attritem *)l; + if(!a->BothExist() || a->IsGet()) + SetSymbol(la[ix++],a->tag); + } + } + } + } + return ix; +} + int flext_base::CheckAttrib(int argc,const t_atom *argv) { @@ -120,42 +142,30 @@ bool flext_base::InitAttrib(int argc,const t_atom *argv) bool flext_base::ListAttrib() { if(outattr) { - int cnt = attrhead?attrhead->Count():0; - int ccnt = clattrhead?clattrhead->Count():0; - AtomList la(ccnt+cnt); - - int ix = 0; - for(int i = 0; i <= 1; ++i) { - itemarr *a = i?attrhead:clattrhead; - if(a) { - for(int ai = 0; ai < a->Size(); ++ai) { - for(item *l = a->Item(ai); l; l = l->nxt) - { - attritem *a = (attritem *)l; - if(!a->BothExist() || a->IsGet()) - SetSymbol(la[ix++],a->tag); - } - } - } - } - - ToOutAnything(outattr,MakeSymbol("attributes"),ix,la.Atoms()); + AtomList la; + int c = ListAttr(la); + ToOutAnything(outattr,MakeSymbol("attributes"),c,la.Atoms()); return true; } else return false; } -bool flext_base::SetAttrib(const t_symbol *tag,int argc,const t_atom *argv) +flext_base::attritem *flext_base::FindAttr(const t_symbol *tag,bool get) const { - // search for matching attribute attritem *a = (attritem *)attrhead->Find(tag); - while(a && (a->tag != tag || a->inlet != 0 || a->IsGet())) a = (attritem *)a->nxt; + while(a && (a->tag != tag || a->inlet != 0 || (get?a->IsSet():a->IsGet()))) a = (attritem *)a->nxt; if(!a) { a = (attritem *)clattrhead->Find(tag); - while(a && (a->tag != tag || a->inlet != 0 || a->IsGet())) a = (attritem *)a->nxt; + while(a && (a->tag != tag || a->inlet != 0 || (get?a->IsSet():a->IsGet()))) a = (attritem *)a->nxt; } + return a; +} +bool flext_base::SetAttrib(const t_symbol *tag,int argc,const t_atom *argv) +{ + // search for matching attribute + attritem *a = FindAttr(tag,false); if(a) return SetAttrib(a,argc,argv); else { diff --git a/externals/grill/flext/source/flbase.cpp b/externals/grill/flext/source/flbase.cpp index 9840bfc2..f9aaffca 100644 --- a/externals/grill/flext/source/flbase.cpp +++ b/externals/grill/flext/source/flbase.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flbase.h b/externals/grill/flext/source/flbase.h index 8b8577ea..e89dd032 100644 --- a/externals/grill/flext/source/flbase.h +++ b/externals/grill/flext/source/flbase.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flbuf.cpp b/externals/grill/flext/source/flbuf.cpp index 91ac8ce6..7a2a21b6 100644 --- a/externals/grill/flext/source/flbuf.cpp +++ b/externals/grill/flext/source/flbuf.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flclass.h b/externals/grill/flext/source/flclass.h index 208a37fd..87e0a154 100644 --- a/externals/grill/flext/source/flclass.h +++ b/externals/grill/flext/source/flclass.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. @@ -20,6 +20,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #include "flbase.h" #include "flsupport.h" + #ifdef _MSC_VER #pragma warning(disable: 4786) #endif @@ -33,9 +34,6 @@ WARRANTIES, see the file, "license.txt," in this distribution. // === flext_base ================================================== -//class qmsg; -//class thr_entry; - /*! \brief Flext message only base object */ @@ -587,7 +585,8 @@ protected: enum { afl_getset = 0x01, afl_get = 0x00, afl_set = 0x01, - afl_bothexist = 0x02 + afl_bothexist = 0x02, + afl_save = 0x04 }; bool IsGet() const { return (flags&afl_getset) == afl_get; } @@ -657,6 +656,9 @@ private: itemarr *attrhead,*clattrhead; + attritem *FindAttr(const t_symbol *tag,bool get) const; + int ListAttr(AtomList &a) const; + static int CheckAttrib(int argc,const t_atom *argv); bool InitAttrib(int argc,const t_atom *argv); diff --git a/externals/grill/flext/source/flcwmax-x-thr.h b/externals/grill/flext/source/flcwmax-x-thr.h index 205dbd1f..13fcbfd3 100755 --- a/externals/grill/flext/source/flcwmax-x-thr.h +++ b/externals/grill/flext/source/flcwmax-x-thr.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flcwmax-x.h b/externals/grill/flext/source/flcwmax-x.h index 1887c6e3..59c677fb 100755 --- a/externals/grill/flext/source/flcwmax-x.h +++ b/externals/grill/flext/source/flcwmax-x.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flcwmax.h b/externals/grill/flext/source/flcwmax.h index d637d0cc..fea603ca 100644 --- a/externals/grill/flext/source/flcwmax.h +++ b/externals/grill/flext/source/flcwmax.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/fldefs.h b/externals/grill/flext/source/fldefs.h index 66c56123..55922a2b 100644 --- a/externals/grill/flext/source/fldefs.h +++ b/externals/grill/flext/source/fldefs.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/fldoxygen.h b/externals/grill/flext/source/fldoxygen.h index 6a04d08b..03ac7e0b 100644 --- a/externals/grill/flext/source/fldoxygen.h +++ b/externals/grill/flext/source/fldoxygen.h @@ -55,7 +55,7 @@ Currently, flext supports Flext is covered by the GPL. flext - C++ layer for Max/MSP and pd (pure data) externals<BR> -Copyright (C) 2001,2002 Thomas Grill +Copyright (C) 2001-2003 Thomas Grill This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License diff --git a/externals/grill/flext/source/fldsp.cpp b/externals/grill/flext/source/fldsp.cpp index 0a0a3276..3d7b723c 100644 --- a/externals/grill/flext/source/fldsp.cpp +++ b/externals/grill/flext/source/fldsp.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/fldsp.h b/externals/grill/flext/source/fldsp.h index 6299544a..da686ce7 100644 --- a/externals/grill/flext/source/fldsp.h +++ b/externals/grill/flext/source/fldsp.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flext.cpp b/externals/grill/flext/source/flext.cpp index 08e4cdd1..13ed9c48 100644 --- a/externals/grill/flext/source/flext.cpp +++ b/externals/grill/flext/source/flext.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flext.h b/externals/grill/flext/source/flext.h index 9b5da4e6..aef173e7 100644 --- a/externals/grill/flext/source/flext.h +++ b/externals/grill/flext/source/flext.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flinternal.h b/externals/grill/flext/source/flinternal.h index 87f04882..016a0bd7 100644 --- a/externals/grill/flext/source/flinternal.h +++ b/externals/grill/flext/source/flinternal.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flitem.cpp b/externals/grill/flext/source/flitem.cpp index cd5aed9e..70ea41f7 100755 --- a/externals/grill/flext/source/flitem.cpp +++ b/externals/grill/flext/source/flitem.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/fllib.cpp b/externals/grill/flext/source/fllib.cpp index 4c66d0b5..315d4eda 100755 --- a/externals/grill/flext/source/fllib.cpp +++ b/externals/grill/flext/source/fllib.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flmeth.cpp b/externals/grill/flext/source/flmeth.cpp index c5b4499b..3b40cd1a 100755 --- a/externals/grill/flext/source/flmeth.cpp +++ b/externals/grill/flext/source/flmeth.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flmsg.cpp b/externals/grill/flext/source/flmsg.cpp index 57f21d03..99eabc10 100755 --- a/externals/grill/flext/source/flmsg.cpp +++ b/externals/grill/flext/source/flmsg.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flmspbuffer.h b/externals/grill/flext/source/flmspbuffer.h index 9a18499d..c09f690f 100755 --- a/externals/grill/flext/source/flmspbuffer.h +++ b/externals/grill/flext/source/flmspbuffer.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flout.cpp b/externals/grill/flext/source/flout.cpp index 2ad12597..382c7e39 100644 --- a/externals/grill/flext/source/flout.cpp +++ b/externals/grill/flext/source/flout.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flprefix.h b/externals/grill/flext/source/flprefix.h index 6aa1e0ac..fc9846a9 100755 --- a/externals/grill/flext/source/flprefix.h +++ b/externals/grill/flext/source/flprefix.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flproxy.cpp b/externals/grill/flext/source/flproxy.cpp index c1a6930c..185700a5 100755 --- a/externals/grill/flext/source/flproxy.cpp +++ b/externals/grill/flext/source/flproxy.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flqueue.cpp b/externals/grill/flext/source/flqueue.cpp index 537101bc..8c3be318 100755 --- a/externals/grill/flext/source/flqueue.cpp +++ b/externals/grill/flext/source/flqueue.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flsndobj.cpp b/externals/grill/flext/source/flsndobj.cpp index 090b5034..a18da9d3 100644 --- a/externals/grill/flext/source/flsndobj.cpp +++ b/externals/grill/flext/source/flsndobj.cpp @@ -1,6 +1,8 @@ /* -Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +flext - C++ layer for Max/MSP and pd (pure data) externals + +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flsndobj.h b/externals/grill/flext/source/flsndobj.h index fde0d177..66f98a94 100644 --- a/externals/grill/flext/source/flsndobj.h +++ b/externals/grill/flext/source/flsndobj.h @@ -1,6 +1,8 @@ /* -Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +flext - C++ layer for Max/MSP and pd (pure data) externals + +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flstdc.h b/externals/grill/flext/source/flstdc.h index 44252c3f..aedcdf83 100644 --- a/externals/grill/flext/source/flstdc.h +++ b/externals/grill/flext/source/flstdc.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flstk.cpp b/externals/grill/flext/source/flstk.cpp index 85d52751..6a56aacb 100644 --- a/externals/grill/flext/source/flstk.cpp +++ b/externals/grill/flext/source/flstk.cpp @@ -1,6 +1,8 @@ /* -Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +flext - C++ layer for Max/MSP and pd (pure data) externals + +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flstk.h b/externals/grill/flext/source/flstk.h index e9f12650..d340bcb1 100644 --- a/externals/grill/flext/source/flstk.h +++ b/externals/grill/flext/source/flstk.h @@ -1,6 +1,8 @@ /* -Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +flext - C++ layer for Max/MSP and pd (pure data) externals + +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flsupport.cpp b/externals/grill/flext/source/flsupport.cpp index 827896e3..ec3b5ef7 100644 --- a/externals/grill/flext/source/flsupport.cpp +++ b/externals/grill/flext/source/flsupport.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flsupport.h b/externals/grill/flext/source/flsupport.h index 470b73ca..329c147f 100644 --- a/externals/grill/flext/source/flsupport.h +++ b/externals/grill/flext/source/flsupport.h @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flthr.cpp b/externals/grill/flext/source/flthr.cpp index a9a68471..9ad4d75f 100644 --- a/externals/grill/flext/source/flthr.cpp +++ b/externals/grill/flext/source/flthr.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flutil.cpp b/externals/grill/flext/source/flutil.cpp index ea11b458..1b1d929a 100644 --- a/externals/grill/flext/source/flutil.cpp +++ b/externals/grill/flext/source/flutil.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/source/flxlet.cpp b/externals/grill/flext/source/flxlet.cpp index e47a92e3..76c02afb 100755 --- a/externals/grill/flext/source/flxlet.cpp +++ b/externals/grill/flext/source/flxlet.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/tutorial/config-pd-bcc.txt b/externals/grill/flext/tutorial/config-pd-bcc.txt index 2ce2b2c3..ca6e84c3 100644 --- a/externals/grill/flext/tutorial/config-pd-bcc.txt +++ b/externals/grill/flext/tutorial/config-pd-bcc.txt @@ -1,6 +1,6 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals # tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/tutorial/config-pd-cygwin.txt b/externals/grill/flext/tutorial/config-pd-cygwin.txt index a2ccf30c..fb87c554 100644 --- a/externals/grill/flext/tutorial/config-pd-cygwin.txt +++ b/externals/grill/flext/tutorial/config-pd-cygwin.txt @@ -1,6 +1,6 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals # tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/tutorial/config-pd-darwin.txt b/externals/grill/flext/tutorial/config-pd-darwin.txt index 286e9333..27afd885 100644 --- a/externals/grill/flext/tutorial/config-pd-darwin.txt +++ b/externals/grill/flext/tutorial/config-pd-darwin.txt @@ -1,6 +1,6 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals # tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where are the PD header files? diff --git a/externals/grill/flext/tutorial/config-pd-linux.txt b/externals/grill/flext/tutorial/config-pd-linux.txt index 3f45b687..75c7ea73 100644 --- a/externals/grill/flext/tutorial/config-pd-linux.txt +++ b/externals/grill/flext/tutorial/config-pd-linux.txt @@ -1,6 +1,6 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals # tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # your c++ compiler (normally g++) diff --git a/externals/grill/flext/tutorial/config-pd-msvc.txt b/externals/grill/flext/tutorial/config-pd-msvc.txt index b68fdadb..e864d423 100644 --- a/externals/grill/flext/tutorial/config-pd-msvc.txt +++ b/externals/grill/flext/tutorial/config-pd-msvc.txt @@ -1,6 +1,6 @@ # flext - C++ layer for Max/MSP and pd (pure data) externals # tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # where is PD? diff --git a/externals/grill/flext/tutorial/license.txt b/externals/grill/flext/tutorial/license.txt index f0d1a975..1b8f0c8b 100755 --- a/externals/grill/flext/tutorial/license.txt +++ b/externals/grill/flext/tutorial/license.txt @@ -1,5 +1,5 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (C) 2001,2002 Thomas Grill +Copyright (C) 2001-2003 Thomas Grill This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License diff --git a/externals/grill/flext/tutorial/makefile.pd-bcc b/externals/grill/flext/tutorial/makefile.pd-bcc index 0a21cfff..ae671ae0 100644 --- a/externals/grill/flext/tutorial/makefile.pd-bcc +++ b/externals/grill/flext/tutorial/makefile.pd-bcc @@ -1,5 +1,5 @@ # flext tutorial examples -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # This is a make include file for BorlandC++ # It can't be used on its own diff --git a/externals/grill/flext/tutorial/makefile.pd-cygwin b/externals/grill/flext/tutorial/makefile.pd-cygwin index 6568273a..c74855ad 100644 --- a/externals/grill/flext/tutorial/makefile.pd-cygwin +++ b/externals/grill/flext/tutorial/makefile.pd-cygwin @@ -1,4 +1,5 @@ # flext tutorial examples +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ cygwin # diff --git a/externals/grill/flext/tutorial/makefile.pd-darwin b/externals/grill/flext/tutorial/makefile.pd-darwin index 8a2ae255..3bd23066 100644 --- a/externals/grill/flext/tutorial/makefile.pd-darwin +++ b/externals/grill/flext/tutorial/makefile.pd-darwin @@ -1,4 +1,5 @@ # flext tutorial examples +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ darwin (OSX) # diff --git a/externals/grill/flext/tutorial/makefile.pd-linux b/externals/grill/flext/tutorial/makefile.pd-linux index 58fee63d..dadb861c 100644 --- a/externals/grill/flext/tutorial/makefile.pd-linux +++ b/externals/grill/flext/tutorial/makefile.pd-linux @@ -1,4 +1,5 @@ # flext tutorial examples +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for gcc @ linux # diff --git a/externals/grill/flext/tutorial/makefile.pd-msvc b/externals/grill/flext/tutorial/makefile.pd-msvc index 960ee14c..385630e0 100644 --- a/externals/grill/flext/tutorial/makefile.pd-msvc +++ b/externals/grill/flext/tutorial/makefile.pd-msvc @@ -1,5 +1,5 @@ -# flext - C++ layer for Max/MSP and pd (pure data) externals -# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +# flext tutorial examples +# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) # # Makefile for MSVC++ # diff --git a/externals/grill/flext/tutorial/readme.txt b/externals/grill/flext/tutorial/readme.txt index 3e7004a1..a059dc77 100644 --- a/externals/grill/flext/tutorial/readme.txt +++ b/externals/grill/flext/tutorial/readme.txt @@ -1,7 +1,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals tutorial examples -Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. diff --git a/externals/grill/flext/tutorial/sndobj1/main.cpp b/externals/grill/flext/tutorial/sndobj1/main.cpp index e293e6be..7e6c7663 100644 --- a/externals/grill/flext/tutorial/sndobj1/main.cpp +++ b/externals/grill/flext/tutorial/sndobj1/main.cpp @@ -1,8 +1,18 @@ -// signal1~ - a flext tutorial external written by Frank Barknecht -// -// This is a commented port of the pan~ example from the PD-Externals-Howto to -// illustrate the usage of flext. You can get the original code at -// http://iem.kug.ac.at/pd/externals-HOWTO/ +/* +flext tutorial - sndobj 1 + +Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +For information on usage and redistribution, and for a DISCLAIMER OF ALL +WARRANTIES, see the file, "license.txt," in this distribution. + +------------------------------------------------------------------------- + +This is an example of an external using the SndObj library. +See http://www.may.ie/academic/music/musictec/SndObj/ + +This object shows simple stereo pitch shifting. + +*/ #define FLEXT_ATTRIBUTES 1 diff --git a/externals/grill/flext/tutorial/stk1/main.cpp b/externals/grill/flext/tutorial/stk1/main.cpp new file mode 100644 index 00000000..31e10e70 --- /dev/null +++ b/externals/grill/flext/tutorial/stk1/main.cpp @@ -0,0 +1,95 @@ +/* +flext tutorial - stk 1 + +Copyright (c) 2002 Thomas Grill (xovo@gmx.net) +For information on usage and redistribution, and for a DISCLAIMER OF ALL +WARRANTIES, see the file, "license.txt," in this distribution. + +------------------------------------------------------------------------- + +This is an example of an external using the STK ("synthesis toolkit") library. +See http://ccrma-www.stanford.edu/software/stk + +*/ + +#define FLEXT_ATTRIBUTES 1 + +#include <flstk.h> + +#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 401) +#error You need at least flext version 0.4.1 +#endif + + +class stk1: + public flext_stk +{ + FLEXT_HEADER(stk1,flext_stk) + +public: + stk1(); + +protected: + + // these are obligatory! + virtual void NewObjs(); + virtual void FreeObjs(); + virtual void ProcessObjs(); + + // space for a few sndobjs +// Pitch *obj1,*obj2; + + float sh1,sh2; + + FLEXT_ATTRVAR_F(sh1) + FLEXT_ATTRVAR_F(sh2) +}; + +FLEXT_NEW_DSP("stk1~",stk1) + + +stk1::stk1(): + sh1(1),sh2(1) +{ + AddInSignal(2); // audio ins + AddOutSignal(2); // audio outs + +// obj1 = obj2 = NULL; + + FLEXT_ADDATTR_VAR1("shL",sh1); + FLEXT_ADDATTR_VAR1("shR",sh2); +} + +// construct needed SndObjs +void stk1::NewObjs() +{ + // set up objects +// obj1 = new Pitch(.1f,&InObj(0),sh1,Blocksize(),Samplerate()); +// obj2 = new Pitch(.1f,&InObj(1),sh2,Blocksize(),Samplerate()); +} + +// destroy the SndObjs +void stk1::FreeObjs() +{ +// if(obj1) delete obj1; +// if(obj2) delete obj2; +} + +// this is called on every DSP block +void stk1::ProcessObjs() +{ +/* + // set current pitch shift + obj1->SetPitch(sh1); + obj2->SetPitch(sh2); + + // do processing here!! + obj1->DoProcess(); + obj2->DoProcess(); + + // output + *obj1 >> OutObj(0); + *obj2 >> OutObj(1); +*/ +} + diff --git a/externals/grill/flext/tutorial/stk1/stk1.dsp b/externals/grill/flext/tutorial/stk1/stk1.dsp new file mode 100644 index 00000000..7ee60fdb --- /dev/null +++ b/externals/grill/flext/tutorial/stk1/stk1.dsp @@ -0,0 +1,95 @@ +# Microsoft Developer Studio Project File - Name="stk1" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** NICHT BEARBEITEN ** + +# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 + +CFG=stk1 - Win32 Debug +!MESSAGE Dies ist kein gültiges Makefile. Zum Erstellen dieses Projekts mit NMAKE +!MESSAGE verwenden Sie den Befehl "Makefile exportieren" und führen Sie den Befehl +!MESSAGE +!MESSAGE NMAKE /f "stk1.mak". +!MESSAGE +!MESSAGE Sie können beim Ausführen von NMAKE eine Konfiguration angeben +!MESSAGE durch Definieren des Makros CFG in der Befehlszeile. Zum Beispiel: +!MESSAGE +!MESSAGE NMAKE /f "stk1.mak" CFG="stk1 - Win32 Debug" +!MESSAGE +!MESSAGE Für die Konfiguration stehen zur Auswahl: +!MESSAGE +!MESSAGE "stk1 - Win32 Release" (basierend auf "Win32 (x86) Dynamic-Link Library") +!MESSAGE "stk1 - Win32 Debug" (basierend auf "Win32 (x86) Dynamic-Link Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "stk1" +# PROP Scc_LocalPath "." +CPP=cl.exe +MTL=midl.exe +RSC=rc.exe + +!IF "$(CFG)" == "stk1 - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "msvc" +# PROP Intermediate_Dir "msvc" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c +# ADD CPP /nologo /W3 /O2 /I "..\..\source" /I "f:\prog\packs\sndobj\include" /I "f:\prog\packs\stk\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "PD" /YX /FD /c +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD BASE RSC /l 0xc07 /d "NDEBUG" +# ADD RSC /l 0xc07 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib /nologo /dll /machine:I386 +# ADD LINK32 kernel32.lib user32.lib pd.lib flext-pdwin.lib stk.lib /nologo /dll /machine:I386 /out:"../pd-msvc/stk1~.dll" /libpath:"..\..\pd-msvc" /libpath:"f:\prog\packs\stk\lib" + +!ELSEIF "$(CFG)" == "stk1 - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "msvc-debug" +# PROP Intermediate_Dir "msvc-debug" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /GZ /c +# ADD CPP /nologo /W3 /Gm /ZI /Od /I "..\..\source" /I "f:\prog\packs\sndobj\include" /I "f:\prog\packs\stk\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "PD" /Fr /YX /FD /GZ /c +# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 +# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 +# ADD BASE RSC /l 0xc07 /d "_DEBUG" +# ADD RSC /l 0xc07 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib pd.lib flext_d-pdwin.lib stk.lib /nologo /dll /debug /machine:I386 /out:"msvc-debug/stk1~.dll" /pdbtype:sept /libpath:"..\..\pd-msvc" /libpath:"f:\prog\packs\stk\lib" + +!ENDIF + +# Begin Target + +# Name "stk1 - Win32 Release" +# Name "stk1 - Win32 Debug" +# Begin Source File + +SOURCE=.\main.cpp +# End Source File +# End Target +# End Project diff --git a/externals/grill/flext/tutorial/tutorial.dsw b/externals/grill/flext/tutorial/tutorial.dsw index e7338c60..9ef8d03f 100644 --- a/externals/grill/flext/tutorial/tutorial.dsw +++ b/externals/grill/flext/tutorial/tutorial.dsw @@ -227,6 +227,22 @@ Package=<4> ############################################################################### +Project: "stk1"=.\stk1\stk1.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + stk1 + .\stk1 + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + Project: "thread1"=.\thread1\thread1.dsp - Package Owner=<4> Package=<5> diff --git a/externals/grill/guitest/flgui.cpp b/externals/grill/guitest/flgui.cpp index 1bad0851..2753d303 100644 --- a/externals/grill/guitest/flgui.cpp +++ b/externals/grill/guitest/flgui.cpp @@ -107,7 +107,8 @@ void flext_gui::setup(t_class *c) #if FLEXT_SYS == FLEXT_SYS_PD -int flext_gui::evmask = evMotion|evMouseDown|evKeyDown|evKeyUp; +// this event mask declares supported events +int flext_gui::evmask = evMotion|evMouseDown|evMouseDrag|evKeyDown|evKeyUp|evKeyRepeat; int flext_gui::curmod = 0; flext_gui::pxkey_object *flext_gui::pxkey = NULL; flext_gui::guicanv *flext_gui::gcanv = NULL; @@ -228,8 +229,25 @@ void flext_gui::pxkey_method(pxkey_object *obj,const t_symbol *s,int argc,t_atom // post("Key down=%i c=%c mod=%i",down?1:0,code,curmod); if(code || mod) { + // remember past keycodes for repetition detection + static int lastcode = 0,lastasc = 0,lastmod = 0; + // button is pressed - p.kind = down?evKeyDown:evKeyUp; + if(down) { + if(lastcode == code && lastmod == curmod) + p.kind = evKeyRepeat; + else { + p.kind = evKeyDown; + lastcode = code; + lastasc = asc; + lastmod = curmod; + } + } + else { + p.kind = evKeyUp; + lastcode = lastasc = 0; + } + p.ext = true; p.pKey.k = code; //lastkey; p.pKey.a = asc; @@ -438,7 +456,7 @@ void flext_gui::sg_vis(t_gobj *c, t_glist *, int vis) } } -int flext_gui::sg_click(t_gobj *c, t_glist *,int xpix, int ypix, int shift, int alt, int dbl, int doit) +int flext_gui::sg_click(t_gobj *c, t_glist *gl,int xpix, int ypix, int shift, int alt, int dbl, int doit) { flext_gui *g = thisObject(c); CBParams p; @@ -451,10 +469,13 @@ int flext_gui::sg_click(t_gobj *c, t_glist *,int xpix, int ypix, int shift, int if(doit) { // button is pressed p.kind = evMouseDown; - p.pMouseKey.x = x; - p.pMouseKey.y = y; + p.pMouseKey.x = g->xdrag = x; + p.pMouseKey.y = g->ydrag = y; + g->dxdrag = g->dydrag = 0; p.pMouseKey.b = 1; p.pMouseKey.mod = curmod; //mod; + + glist_grab(gl,c,(t_glistmotionfn)sg_drag,0,xpix,ypix); } else { // only mouse position change @@ -467,6 +488,20 @@ int flext_gui::sg_click(t_gobj *c, t_glist *,int xpix, int ypix, int shift, int return 1; } +void flext_gui::sg_drag(t_gobj *c,t_floatarg dx,t_floatarg dy) +{ + flext_gui *g = thisObject(c); + CBParams p; + p.kind = evMouseDrag; + p.pMouseDrag.dx = (g->dxdrag += (int)dx); + p.pMouseDrag.dy = (g->dydrag += (int)dy); + p.pMouseDrag.x = g->xdrag+g->dxdrag; + p.pMouseDrag.y = g->ydrag+g->dydrag;; + p.pMouseDrag.b = 1; + p.pMouseDrag.mod = curmod; //mod; + g->m_Method(p); +} + void flext_gui::sg_delete(t_gobj *c, t_glist *) { thisObject(c)->g_Delete(); @@ -505,6 +540,7 @@ bool flext_gui::sg_KeyUp(flext_base *c,int &keynum) #else // MAXMSP +// this declared supported events int flext_gui::evmask = evMotion|evMouseDown|evKeyDown; static void dragfun() diff --git a/externals/grill/guitest/flgui.h b/externals/grill/guitest/flgui.h index 211a4935..3ca2b399 100644 --- a/externals/grill/guitest/flgui.h +++ b/externals/grill/guitest/flgui.h @@ -1,7 +1,7 @@ #ifndef __FLEXT_GUI #define __FLEXT_GUI -#define FLEXT_VIRT +//#define FLEXT_VIRT #include <flext.h> #if FLEXT_SYS == FLEXT_SYS_PD @@ -15,9 +15,9 @@ class GuiGroup; class GuiSingle; class flext_gui: - virtual public flext_base + public flext_base { - FLEXT_HEADER_S(flext_gui,flext_base,setup) + FLEXT_HEADER_S(flext_gui,flext_dsp,setup) public: flext_gui(int xs,int ys); @@ -29,8 +29,10 @@ public: evMouseDown = 0x02, evMouseUp = 0x04, evMouseWheel = 0x08, - evKeyDown = 0x10, - evKeyUp = 0x20 + evMouseDrag = 0x10, + evKeyDown = 0x20, + evKeyUp = 0x40, + evKeyRepeat = 0x80 }; class CBParams { @@ -42,6 +44,7 @@ public: struct { int x,y,mod; } pMotion; struct { int x,y,b,mod; } pMouseKey; struct { int x,y,mod,delta; } pMouseWheel; + struct { int x,y,dx,dy,b,mod; } pMouseDrag; struct { int k,a,mod; } pKey; }; bool ext; @@ -146,6 +149,7 @@ private: #if FLEXT_SYS == FLEXT_SYS_PD bool selected; int xsize,ysize; + int xdrag,ydrag,dxdrag,dydrag; static void sg_getrect(t_gobj *c, t_glist *,int *xp1, int *yp1, int *xp2, int *yp2); static void sg_displace(t_gobj *c, t_glist *, int dx, int dy); @@ -154,6 +158,7 @@ private: static void sg_delete(t_gobj *c, t_glist *); static void sg_vis(t_gobj *c, t_glist *, int vis); static int sg_click(t_gobj *c, t_glist *,int xpix, int ypix, int shift, int alt, int dbl, int doit); + static void sg_drag(t_gobj *x, t_floatarg dx, t_floatarg dy); static void sg_properties(t_gobj *c, t_glist *); static void sg_save(t_gobj *c, t_binbuf *b); // static void sg_motion(void *c, float dx,float dy) { thisObject((t_gobj *)c)->g_Motion(dx,dy); } @@ -210,7 +215,7 @@ public: static t_class *px_class,*pxkey_class; static void sg_tk(t_canvas *c,const t_symbol *s,int argc,t_atom *argv); -#else +#else // MAXMSP int curx,cury,curmod; bool created; static t_clock clock; diff --git a/externals/grill/guitest/main.cpp b/externals/grill/guitest/main.cpp index cfedfa86..661c3ad2 100644 --- a/externals/grill/guitest/main.cpp +++ b/externals/grill/guitest/main.cpp @@ -21,7 +21,7 @@ #define UL unsigned long class guitest: -public flext_gui,virtual public flext_base +public flext_gui //,virtual public flext_base { FLEXT_HEADER(guitest,flext_gui) @@ -29,7 +29,7 @@ public: guitest(I argc,t_atom *argv); ~guitest(); - virtual void m_bang() + void m_bang() { post("%s - bang!",thisName()); } @@ -69,9 +69,11 @@ void guitest::g_Create() delete[] p; if(!BindEvent(*frame,g_Motion,evMotion)) post("Motion not supported"); + if(!BindEvent(*frame,g_Motion,evMouseDrag)) post("MouseDrag not supported"); if(!BindEvent(*wave,g_MouseKey,evMouseDown)) post("MouseDown not supported"); if(!BindEvent(*wave,g_MouseKey,evKeyDown)) post("KeyDown not supported"); if(!BindEvent(*wave,g_MouseKey,evKeyUp)) post("KeyUp not supported"); + if(!BindEvent(*wave,g_MouseKey,evKeyRepeat)) post("KeyRepeat not supported"); } void guitest::g_Properties() @@ -107,6 +109,9 @@ bool guitest::g_Motion(flext_gui &g,GuiSingle &obj,const CBParams &p) if(p.kind == evMotion) { post("Motion %s x:%i y:%i mod:%i",GetString(obj.Id()),p.pMotion.x,p.pMotion.y,p.pMotion.mod); } + else if(p.kind == evMouseDrag) { + post("Drag %s x:%i y:%i dx:%i dy:%i b:%i mod:%i",GetString(obj.Id()),p.pMouseDrag.x,p.pMouseDrag.y,p.pMouseDrag.dx,p.pMouseDrag.dy,p.pMouseDrag.b,p.pMouseDrag.mod); + } else post("Motion"); return true; @@ -123,6 +128,9 @@ bool guitest::g_MouseKey(flext_gui &g,GuiSingle &obj,const CBParams &p) else if(p.kind == evKeyUp) { post("KeyUp %s asc:%i key:%i mod:%i",GetString(obj.Id()),p.pKey.a,p.pKey.k,p.pKey.mod); } + else if(p.kind == evKeyRepeat) { + post("KeyRepeat %s asc:%i key:%i mod:%i",GetString(obj.Id()),p.pKey.a,p.pKey.k,p.pKey.mod); + } return true; } diff --git a/externals/grill/pool/pool.pd b/externals/grill/pool/pool.pd index cdf0f6e6..14ac7d7d 100644 --- a/externals/grill/pool/pool.pd +++ b/externals/grill/pool/pool.pd @@ -1,5 +1,4 @@ -#N canvas 25 23 976 679 12;
-#X obj 260 478 pool;
+#N canvas 25 23 978 681 12;
#X msg 295 108 set 1 2 3;
#X obj 254 615 print K;
#X msg 607 211 getall;
@@ -13,7 +12,7 @@ #X msg 432 181 get A;
#X msg 432 213 get 2;
#X msg 40 132 echodir \$1;
-#X obj 40 111 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
+#X obj 40 111 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 40 213 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
@@ -177,36 +176,37 @@ #X msg 136 132 getechodir;
#X msg 132 232 getabsdir;
#X msg 146 313 getpool;
-#X connect 0 0 5 0;
-#X connect 0 1 2 0;
-#X connect 0 2 6 0;
-#X connect 0 3 19 0;
-#X connect 0 4 68 0;
-#X connect 1 0 0 0;
-#X connect 3 0 0 0;
-#X connect 4 0 0 0;
-#X connect 7 0 0 0;
-#X connect 8 0 0 0;
-#X connect 9 0 0 0;
-#X connect 10 0 0 0;
-#X connect 11 0 0 0;
-#X connect 12 0 0 0;
-#X connect 13 0 0 0;
-#X connect 14 0 13 0;
-#X connect 15 0 16 0;
-#X connect 16 0 0 0;
-#X connect 24 0 0 0;
-#X connect 25 0 0 0;
-#X connect 27 0 0 0;
-#X connect 29 0 0 0;
-#X connect 34 0 0 0;
-#X connect 35 0 0 0;
-#X connect 46 0 0 0;
-#X connect 49 0 0 0;
-#X connect 51 0 0 0;
-#X connect 54 0 0 0;
-#X connect 63 0 0 0;
-#X connect 70 0 0 0;
-#X connect 71 0 0 0;
-#X connect 72 0 0 0;
-#X connect 73 0 0 0;
+#X obj 260 478 pool;
+#X connect 0 0 73 0;
+#X connect 2 0 73 0;
+#X connect 3 0 73 0;
+#X connect 6 0 73 0;
+#X connect 7 0 73 0;
+#X connect 8 0 73 0;
+#X connect 9 0 73 0;
+#X connect 10 0 73 0;
+#X connect 11 0 73 0;
+#X connect 12 0 73 0;
+#X connect 13 0 12 0;
+#X connect 14 0 15 0;
+#X connect 15 0 73 0;
+#X connect 23 0 73 0;
+#X connect 24 0 73 0;
+#X connect 26 0 73 0;
+#X connect 28 0 73 0;
+#X connect 33 0 73 0;
+#X connect 34 0 73 0;
+#X connect 45 0 73 0;
+#X connect 48 0 73 0;
+#X connect 50 0 73 0;
+#X connect 53 0 73 0;
+#X connect 62 0 73 0;
+#X connect 69 0 73 0;
+#X connect 70 0 73 0;
+#X connect 71 0 73 0;
+#X connect 72 0 73 0;
+#X connect 73 0 4 0;
+#X connect 73 1 1 0;
+#X connect 73 2 5 0;
+#X connect 73 3 18 0;
+#X connect 73 4 67 0;
|