Commit 9855ea7e authored by thomas's avatar thomas
Browse files

no message


git-svn-id: https://svn.grrrr.org/ext/trunk@311 4d9ac71a-51e6-0310-8455-cad1006bcd31
parent 63bc6ec4
......@@ -78,12 +78,13 @@ see flext.h, fldefs.h and flclass.h for the documented base definitions and clas
Version history:
0.3.4:
0.4.0:
- introduced a flext namespace instead of using numerous static class functions (better isolation of functions, easier usage of flext functions outside inherited flext classes)
- added OSX/darwin support (originally done by Adam T. Lindsay)
- SndObj interface now also available for cygwin and BCC
- added prepend and append functions to AtomList class
- added IsNothing, SetNothing, CanbeBool and GetABool functions
- deprecated the remaining Get*Flint and Set*Flint functions - will be eliminated in flext 0.4.0
- deprecated the remaining Get*Flint and Set*Flint functions
0.3.3:
- PD: fixed bug for DSP objects having no signal inlets
......
This diff is collapsed.
......@@ -129,9 +129,6 @@ const t_symbol *sym_int = NULL;
const t_symbol *sym_signal = NULL;
#endif
const t_symbol *MakeSymbol(const char *s) { return gensym(const_cast<char *>(s)); }
//flext_base::flext_base():
CBase::CBase():
inlist(NULL),outlist(NULL),
......
......@@ -23,10 +23,10 @@ WARRANTIES, see the file, "license.txt," in this distribution.
*/
//! \brief flext version number
#define FLEXT_VERSION 304
#define FLEXT_VERSION 400
//! \brief flext version string
#define FLEXT_VERSTR "0.3.4pre"
#define FLEXT_VERSTR "0.4.0pre"
//! @}
......
......@@ -26,6 +26,8 @@ WARRANTIES, see the file, "license.txt," in this distribution.
#endif
#include <errno.h>
namespace flext {
bool flext_base::StartThread(void *(*meth)(thr_params *p),thr_params *p,char *methname)
{
static bool init = false;
......@@ -164,7 +166,6 @@ void flext_base::YTick(flext_base *th)
}
#endif
flext_base::thrid_t flext_base::GetThreadId()
{
return pthread_self();
......@@ -245,8 +246,8 @@ public:
void SetFloat(outlet *o,float f) { Clear(); out = o; tp = tp_float; _float = f; }
void SetInt(outlet *o,int i) { Clear(); out = o; tp = tp_int; _int = i; }
void SetSymbol(outlet *o,const t_symbol *s) { Clear(); out = o; tp = tp_sym; _sym = s; }
void SetList(outlet *o,int argc,t_atom *argv) { Clear(); out = o; tp = tp_list; _list.argc = argc,_list.argv = flext_base::CopyList(argc,argv); }
void SetAny(outlet *o,const t_symbol *s,int argc,t_atom *argv) { Clear(); out = o; tp = tp_any; _any.s = s,_any.argc = argc,_any.argv = flext_base::CopyList(argc,argv); }
void SetList(outlet *o,int argc,t_atom *argv) { Clear(); out = o; tp = tp_list; _list.argc = argc,_list.argv = CopyList(argc,argv); }
void SetAny(outlet *o,const t_symbol *s,int argc,t_atom *argv) { Clear(); out = o; tp = tp_any; _any.s = s,_any.argc = argc,_any.argv = CopyList(argc,argv); }
outlet *out;
enum { tp_none,tp_bang,tp_float,tp_int,tp_sym,tp_list,tp_any } tp;
......@@ -389,5 +390,6 @@ flext_base::thr_params::~thr_params() { if(var) delete[] var; }
void flext_base::thr_params::set_any(const t_symbol *s,int argc,t_atom *argv) { var[0]._any.args = new AtomAnything(s,argc,argv); }
void flext_base::thr_params::set_list(int argc,t_atom *argv) { var[0]._list.args = new AtomList(argc,argv); }
} // namespace flext
#endif // FLEXT_THREADS
......@@ -12,8 +12,12 @@ This is an example of a simplified prepend object
#include <flext.h>
#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 301)
#error You need at least flext version 0.3.1
#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 400)
#error You need at least flext version 0.4.0
#endif
#if FLEXT_VERSION >= 400
namespace flext {
#endif
......@@ -101,3 +105,7 @@ void adv1::m_any(const t_symbol *s,int argc,t_atom *argv)
ToOutAnything(0,GetSymbol(result[0]),ix-1,result.Atoms()+1);
}
#if FLEXT_VERSION >= 400
}
#endif
......@@ -6,7 +6,7 @@
#include <flext.h>
#include <math.h>
#if !defined(FLEXT_VERSION) || (FLEXT_VERSION < 300)
#error You need at least flext version 0.3.0
#endif
......
......@@ -19,6 +19,9 @@ This is an example of an object digesting several "tagged" messages
#error You need at least flext version 0.3.0
#endif
#if FLEXT_VERSION >= 400
namespace flext {
#endif
class simple3:
public flext_base
......@@ -88,3 +91,7 @@ void simple3::m_help()
post("%s - example for tagged messages",thisName());
}
#if FLEXT_VERSION >= 400
}
#endif
......@@ -22,6 +22,10 @@ This shows an example of a method running as a thread
#endif
#if FLEXT_VERSION >= 400
namespace flext {
#endif
class thread1:
public flext_base
......@@ -76,3 +80,8 @@ void thread1::m_start()
ToOutInt(0,0);
}
#if FLEXT_VERSION >= 400
}
#endif
......@@ -22,6 +22,10 @@ This shows an example of multiple threads and syncing with a thread conditional
#endif
#if FLEXT_VERSION >= 400
namespace flext {
#endif
class thread2:
public flext_base
......@@ -130,3 +134,8 @@ void thread2::m_textout()
cond.Signal(); // signal changed flag to watiting "stop" method
cond.Unlock(); // unlock conditional
}
#if FLEXT_VERSION >= 400
}
#endif
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment