From 0aac9d7803bc367ec22ed9df292d8a71d6013b55 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Sat, 19 Apr 2003 02:32:31 +0000 Subject: "" svn path=/trunk/; revision=578 --- externals/grill/flext/source/flclass.h | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'externals/grill/flext/source/flclass.h') diff --git a/externals/grill/flext/source/flclass.h b/externals/grill/flext/source/flclass.h index 6e105551..7296c223 100644 --- a/externals/grill/flext/source/flclass.h +++ b/externals/grill/flext/source/flclass.h @@ -536,7 +536,7 @@ protected: class item { public: item(const t_symbol *t,int inl,attritem *a); - ~item(); + virtual ~item(); bool IsAttr() const { return attr != NULL; } @@ -546,22 +546,34 @@ protected: item *nxt; }; + //! This class holds hashed item entries class itemarr { public: itemarr(); ~itemarr(); - + + //! Add an entry void Add(item *it); + //! Remove an entry bool Remove(item *it); + //! Find an entry in the item array item *Find(const t_symbol *tag,int inlet = 0) const; + + //! Create hash table out of the preliminary linked lists void Finalize(); + //! Query whether the array has been finalized bool Ready() const { return bits >= 0; } + //! Number of items in the array int Count() const { return cnt; } + //! Number of array slots (0 if not finalized) int Size() const { return bits?1<