From bee242f29045b82e50a4f112ac17f7e14344df78 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 26 Jul 2007 19:16:52 +0000 Subject: Use PathTable for engine side objects. Re-implement renaming and destroying more cleanly (not to mention workingly). git-svn-id: http://svn.drobilla.net/lad/ingen@638 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/client/Store.cpp | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/libs/client/Store.cpp') diff --git a/src/libs/client/Store.cpp b/src/libs/client/Store.cpp index 674fc24e..360b1053 100644 --- a/src/libs/client/Store.cpp +++ b/src/libs/client/Store.cpp @@ -15,6 +15,7 @@ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include #include "Store.hpp" #include "ObjectModel.hpp" #include "PatchModel.hpp" @@ -25,7 +26,7 @@ #include "SigClientInterface.hpp" using namespace std; -using Raul::Path; +using namespace Raul; namespace Ingen { namespace Client { @@ -358,11 +359,11 @@ Store::rename_event(const Path& old_path, const Path& new_path) Objects::iterator descendants_end = _objects.find_descendants_end(parent); - vector > > objs = _objects.yank(parent, descendants_end); + Table > removed = _objects.yank(parent, descendants_end); - assert(objs.size() > 0); + assert(removed.size() > 0); - for (vector > >::iterator i = objs.begin(); i != objs.end(); ++i) { + for (Table >::iterator i = removed.begin(); i != removed.end(); ++i) { const Path& child_old_path = i->first; assert(Path::descendant_comparator(old_path, child_old_path)); @@ -377,15 +378,15 @@ Store::rename_event(const Path& old_path, const Path& new_path) i->first = child_new_path; } - _objects.cram(objs); + _objects.cram(removed); - cerr << "[Store] Table:" << endl; - //for (size_t i=0; i < objs.size(); ++i) { - // cerr << objs[i].first << "\t\t: " << objs[i].second << endl; + //cerr << "[Store] Table:" << endl; + //for (size_t i=0; i < removed.size(); ++i) { + // cerr << removed[i].first << "\t\t: " << removed[i].second << endl; //} - for (Objects::iterator i = _objects.begin(); i != _objects.end(); ++i) { + /*for (Objects::iterator i = _objects.begin(); i != _objects.end(); ++i) { cerr << i->first << "\t\t: " << i->second << endl; - } + }*/ } void -- cgit v1.2.1