aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/source/fllib.cpp
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2005-03-15 04:56:36 +0000
committerThomas Grill <xovo@users.sourceforge.net>2005-03-15 04:56:36 +0000
commit31a2d9dcc2b3a519033918e180f81c4e7b9f8e7e (patch)
tree7eae5d3f1e302843147fdc6bc13c99e101906d32 /externals/grill/flext/source/fllib.cpp
parent3e0446e7fda10c3d85a628b8c1effaa5bf7f5529 (diff)
new data type flext::AtomListStatic using pre-allocated space if possible
fixes for OSX replaced memory-intensive STL maps by custom-made vector/map-container fix for gcc strangeness no more static assignment of symbols (problems with Metrowerks) small fix for gcc fixed bugs in SIMD code for non-power-of-2 lengths fixes for attribute editor (to deal with large dialogs) svn path=/trunk/; revision=2628
Diffstat (limited to 'externals/grill/flext/source/fllib.cpp')
-rwxr-xr-xexternals/grill/flext/source/fllib.cpp13
1 files changed, 4 insertions, 9 deletions
diff --git a/externals/grill/flext/source/fllib.cpp b/externals/grill/flext/source/fllib.cpp
index b7f32592..85589679 100755
--- a/externals/grill/flext/source/fllib.cpp
+++ b/externals/grill/flext/source/fllib.cpp
@@ -126,21 +126,16 @@ libclass::libclass(t_class *&cl,flext_obj *(*newf)(int,t_atom *),void (*freef)(f
{}
-typedef DataMap<const t_symbol *,libclass *> LibMap;
+typedef TableMap<const t_symbol *,libclass,8> LibMap;
static LibMap libnames;
//! Store or retrieve registered classes
static libclass *FindName(const t_symbol *s,libclass *o = NULL)
{
-// typedef std::map<const t_symbol *,libclass *> LibMap;
- LibMap::iterator it = libnames.find(s);
- if(it == libnames.end()) {
- if(o) libnames[s] = o;
- return o;
- }
- else
- return it.data();
+ libclass *cl = libnames.find(s);
+ if(!cl) libnames.insert(s,cl = o);
+ return cl;
}