diff options
author | David Robillard <d@drobilla.net> | 2007-10-08 16:30:57 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-10-08 16:30:57 +0000 |
commit | 763bba9de67fb1bd06658a0bac91440727ee5a51 (patch) | |
tree | 39e7af069828981c2c06d78e015686062eba73dc /src/libs/engine/ObjectStore.hpp | |
parent | 260a406b12997fdab7446a9980e921d8cfc46915 (diff) | |
download | ingen-763bba9de67fb1bd06658a0bac91440727ee5a51.tar.gz ingen-763bba9de67fb1bd06658a0bac91440727ee5a51.tar.bz2 ingen-763bba9de67fb1bd06658a0bac91440727ee5a51.zip |
SharedPtr-ify engine side store.
Fix reattaching to engine.
Fix connection paths.
Remove last dependencies on client (model) library from Serialiser.
Fix Raul::PathTable::find_descendants_end.
git-svn-id: http://svn.drobilla.net/lad/ingen@847 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/ObjectStore.hpp')
-rw-r--r-- | src/libs/engine/ObjectStore.hpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/libs/engine/ObjectStore.hpp b/src/libs/engine/ObjectStore.hpp index 66d182ba..cc83d85a 100644 --- a/src/libs/engine/ObjectStore.hpp +++ b/src/libs/engine/ObjectStore.hpp @@ -20,13 +20,16 @@ #include <string> #include <raul/PathTable.hpp> +#include <raul/SharedPtr.hpp> using std::string; using namespace Raul; namespace Ingen { -class Patch; +namespace Shared { class GraphObject; } + +class PatchImpl; class NodeImpl; class PortImpl; class GraphObjectImpl; @@ -44,9 +47,9 @@ class GraphObjectImpl; class ObjectStore { public: - typedef Raul::PathTable<GraphObjectImpl*> Objects; + typedef Raul::PathTable< SharedPtr<Shared::GraphObject> > Objects; - Patch* find_patch(const Path& path); + PatchImpl* find_patch(const Path& path); NodeImpl* find_node(const Path& path); PortImpl* find_port(const Path& path); GraphObjectImpl* find_object(const Path& path); @@ -54,11 +57,11 @@ public: Objects::iterator find(const Path& path) { return _objects.find(path); } void add(GraphObjectImpl* o); - void add(const Table<Path,GraphObjectImpl*>& family); + void add(const Table<Path, SharedPtr<Shared::GraphObject> >& family); //void add(TreeNode<GraphObjectImpl*>* o); - Table<Path,GraphObjectImpl*> remove(const Path& path); - Table<Path,GraphObjectImpl*> remove(Objects::iterator i); + Table<Path, SharedPtr<Shared::GraphObject> > remove(const Path& path); + Table<Path, SharedPtr<Shared::GraphObject> > remove(Objects::iterator i); const Objects& objects() const { return _objects; } Objects& objects() { return _objects; } |