aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/source/fllib.cpp
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2006-05-24 12:20:57 +0000
committerThomas Grill <xovo@users.sourceforge.net>2006-05-24 12:20:57 +0000
commit576b21b58cced4bb319131114fca3590d58a3f6b (patch)
treede69230eaff3a87a0674131fd4696ec1508da2c7 /externals/grill/flext/source/fllib.cpp
parent3ae6505abbd8887a65935f53591e7b0be89791c4 (diff)
enabled FLEXT_(C)ADDMETHOD as an alias of FLEXT_(C)ADDBANG
bugfixes and optimizations, especially for DSP under Max/MSP added thisParent type attribute generation is now determined exclusively by the object class setup (not library as before). avoid trying to send empty message bundles - preprocessor symbol FLEXT_COMPATIBLE - if defined don't implement specialities of either PD or Max/MSP small changes for attribute functions - Max: fixed reported bug (#67), where list elements are distributed over inlets svn path=/trunk/; revision=5113
Diffstat (limited to 'externals/grill/flext/source/fllib.cpp')
-rwxr-xr-xexternals/grill/flext/source/fllib.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/externals/grill/flext/source/fllib.cpp b/externals/grill/flext/source/fllib.cpp
index 4670858b..13690a24 100755
--- a/externals/grill/flext/source/fllib.cpp
+++ b/externals/grill/flext/source/fllib.cpp
@@ -163,6 +163,7 @@ static flext_class *FindName(const t_symbol *s,flext_class *o = NULL)
t_class *flext_obj::getClass(t_classid cl) { return cl->clss; }
+bool flext_obj::HasAttributes(t_classid cl) { return cl->attr; }
bool flext_obj::IsDSP(t_classid cl) { return cl->dsp; }
bool flext_obj::IsLib(t_classid cl) { return cl->lib != NULL; }
@@ -176,15 +177,13 @@ bool flext_obj::NeedDSP() const { return clss->dsp || (clss->lib && clss->lib->d
static flext_library *curlib = NULL;
-void flext_obj::lib_init(const char *name,void setupfun(),bool attr)
+void flext_obj::lib_init(const char *name,void setupfun())
{
// make new library instance
curlib = new flext_library(MakeSymbol(name));
flext::Setup();
- process_attributes = attr;
-
// first register all classes
try {
setupfun();
@@ -236,7 +235,7 @@ void flext_obj::obj_add(bool lib,bool dsp,bool attr,const char *idname,const cha
}
else {
FLEXT_ASSERT(!curlib);
- process_attributes = attr;
+// process_attributes = attr;
}
// set dynamic class pointer
@@ -269,7 +268,7 @@ void flext_obj::obj_add(bool lib,bool dsp,bool attr,const char *idname,const cha
flext_class *lo = new flext_class(*cl,newfun,freefun);
lo->lib = curlib;
lo->dsp = dsp;
- lo->attr = process_attributes;
+ lo->attr = attr;
// post("ADDCLASS %s,%s = %p -> LIBOBJ %p -> %p (lib=%i,dsp=%i)",idname,names,*cl,lo,lo->clss,lib?1:0,dsp?1:0);