diff options
author | David Robillard <d@drobilla.net> | 2006-10-04 21:45:20 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2006-10-04 21:45:20 +0000 |
commit | 30cb85c307b4c1273791721a782337742ade222c (patch) | |
tree | 020932d6f50ebbcd813c58f6f23e85a293587665 /src/libs/client | |
parent | 32261ba465be203f973a0e126672b8d7188ba327 (diff) | |
download | ingen-30cb85c307b4c1273791721a782337742ade222c.tar.gz ingen-30cb85c307b4c1273791721a782337742ade222c.tar.bz2 ingen-30cb85c307b4c1273791721a782337742ade222c.zip |
Moved generic utility stuff to new library "raul".
git-svn-id: http://svn.drobilla.net/lad/ingen@156 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/client')
-rw-r--r-- | src/libs/client/ConnectionModel.cpp | 6 | ||||
-rw-r--r-- | src/libs/client/ConnectionModel.h | 20 | ||||
-rw-r--r-- | src/libs/client/ControlModel.h | 2 | ||||
-rw-r--r-- | src/libs/client/DeprecatedSerializer.cpp | 6 | ||||
-rw-r--r-- | src/libs/client/DeprecatedSerializer.h | 8 | ||||
-rw-r--r-- | src/libs/client/Makefile.am | 4 | ||||
-rw-r--r-- | src/libs/client/NodeModel.cpp | 18 | ||||
-rw-r--r-- | src/libs/client/NodeModel.h | 26 | ||||
-rw-r--r-- | src/libs/client/OSCClientReceiver.cpp | 4 | ||||
-rw-r--r-- | src/libs/client/OSCEngineSender.cpp | 6 | ||||
-rw-r--r-- | src/libs/client/OSCEngineSender.h | 2 | ||||
-rw-r--r-- | src/libs/client/ObjectModel.cpp | 2 | ||||
-rw-r--r-- | src/libs/client/ObjectModel.h | 18 | ||||
-rw-r--r-- | src/libs/client/PatchModel.cpp | 42 | ||||
-rw-r--r-- | src/libs/client/PatchModel.h | 24 | ||||
-rw-r--r-- | src/libs/client/PluginModel.h | 2 | ||||
-rw-r--r-- | src/libs/client/PortModel.h | 18 | ||||
-rw-r--r-- | src/libs/client/Serializer.cpp | 30 | ||||
-rw-r--r-- | src/libs/client/Serializer.h | 20 | ||||
-rw-r--r-- | src/libs/client/Store.cpp | 114 | ||||
-rw-r--r-- | src/libs/client/Store.h | 52 | ||||
-rw-r--r-- | src/libs/client/ThreadedSigClientInterface.h | 4 |
22 files changed, 214 insertions, 214 deletions
diff --git a/src/libs/client/ConnectionModel.cpp b/src/libs/client/ConnectionModel.cpp index e7f66077..bb2f2424 100644 --- a/src/libs/client/ConnectionModel.cpp +++ b/src/libs/client/ConnectionModel.cpp @@ -33,7 +33,7 @@ ConnectionModel::ConnectionModel(const Path& src_port, const Path& dst_port) } -ConnectionModel::ConnectionModel(CountedPtr<PortModel> src, CountedPtr<PortModel> dst) +ConnectionModel::ConnectionModel(SharedPtr<PortModel> src, SharedPtr<PortModel> dst) : _src_port_path(src->path()), _dst_port_path(dst->path()), _src_port(src), @@ -77,7 +77,7 @@ ConnectionModel::patch_path() const // Direct connection from patch input to patch output (pass through) // (parent patch is parent of ports) if (_src_port->parent() == _dst_port->parent()) { - CountedPtr<PatchModel> parent_patch = PtrCast<PatchModel>(_src_port->parent()); + SharedPtr<PatchModel> parent_patch = PtrCast<PatchModel>(_src_port->parent()); if (parent_patch) return parent_patch->path(); } @@ -101,7 +101,7 @@ ConnectionModel::patch_path() const return patch_path; } -typedef list<CountedPtr<ConnectionModel> > ConnectionList; +typedef list<SharedPtr<ConnectionModel> > ConnectionList; } // namespace Client diff --git a/src/libs/client/ConnectionModel.h b/src/libs/client/ConnectionModel.h index e1530f88..6dc85405 100644 --- a/src/libs/client/ConnectionModel.h +++ b/src/libs/client/ConnectionModel.h @@ -18,8 +18,8 @@ #define CONNECTIONMODEL_H #include <string> -#include "util/Path.h" -#include "util/CountedPtr.h" +#include "raul/Path.h" +#include "raul/SharedPtr.h" #include "PortModel.h" #include <cassert> using std::string; @@ -43,8 +43,8 @@ class Store; class ConnectionModel { public: - CountedPtr<PortModel> src_port() const { return _src_port; } - CountedPtr<PortModel> dst_port() const { return _dst_port; } + SharedPtr<PortModel> src_port() const { return _src_port; } + SharedPtr<PortModel> dst_port() const { return _dst_port; } const Path& src_port_path() const; const Path& dst_port_path() const; @@ -54,21 +54,21 @@ private: friend class Store; ConnectionModel(const Path& src_port, const Path& dst_port); - ConnectionModel(CountedPtr<PortModel> src, CountedPtr<PortModel> dst); + ConnectionModel(SharedPtr<PortModel> src, SharedPtr<PortModel> dst); - void set_src_port(CountedPtr<PortModel> port) { _src_port = port; _src_port_path = port->path(); } - void set_dst_port(CountedPtr<PortModel> port) { _dst_port = port; _dst_port_path = port->path(); } + void set_src_port(SharedPtr<PortModel> port) { _src_port = port; _src_port_path = port->path(); } + void set_dst_port(SharedPtr<PortModel> port) { _dst_port = port; _dst_port_path = port->path(); } void src_port_path(const string& s) { _src_port_path = s; } void dst_port_path(const string& s) { _dst_port_path = s; } Path _src_port_path; ///< Only used if _src_port == NULL Path _dst_port_path; ///< Only used if _dst_port == NULL - CountedPtr<PortModel> _src_port; - CountedPtr<PortModel> _dst_port; + SharedPtr<PortModel> _src_port; + SharedPtr<PortModel> _dst_port; }; -typedef list<CountedPtr<ConnectionModel> > ConnectionList; +typedef list<SharedPtr<ConnectionModel> > ConnectionList; } // namespace Client diff --git a/src/libs/client/ControlModel.h b/src/libs/client/ControlModel.h index 08143c73..337acfc6 100644 --- a/src/libs/client/ControlModel.h +++ b/src/libs/client/ControlModel.h @@ -18,7 +18,7 @@ #define CONTROLMODEL_H #include <string> -#include "util/Path.h" +#include "raul/Path.h" namespace Ingen { namespace Client { diff --git a/src/libs/client/DeprecatedSerializer.cpp b/src/libs/client/DeprecatedSerializer.cpp index 1526c527..d3d5a09f 100644 --- a/src/libs/client/DeprecatedSerializer.cpp +++ b/src/libs/client/DeprecatedSerializer.cpp @@ -26,7 +26,7 @@ #include "PresetModel.h" #include "ModelEngineInterface.h" #include "PluginModel.h" -#include "util/Path.h" +#include "raul/Path.h" #include <iostream> #include <fstream> #include <vector> @@ -335,7 +335,7 @@ DeprecatedSerializer::load_node(const Path& parent, xmlDocPtr doc, const xmlNode assert(Path::is_valid(path)); // FIXME: /nasty/ assumptions - CountedPtr<PortModel> pm(new PortModel(Path(path).base() + port_name, + SharedPtr<PortModel> pm(new PortModel(Path(path).base() + port_name, PortModel::CONTROL, PortModel::INPUT, PortModel::NONE, 0.0, user_min, user_max)); //pm->set_parent(nm); @@ -459,7 +459,7 @@ DeprecatedSerializer::load_node(const Path& parent, xmlDocPtr doc, const xmlNode _engine->set_metadata_map(path, initial_data); - return CountedPtr<NodeModel>(); + return SharedPtr<NodeModel>(); } else { if (plugin_label == "note_in") { diff --git a/src/libs/client/DeprecatedSerializer.h b/src/libs/client/DeprecatedSerializer.h index 645c03f7..5ffe8731 100644 --- a/src/libs/client/DeprecatedSerializer.h +++ b/src/libs/client/DeprecatedSerializer.h @@ -22,8 +22,8 @@ #include <string> #include <libxml/tree.h> #include <cassert> -#include "util/CountedPtr.h" -#include "util/Path.h" +#include "raul/SharedPtr.h" +#include "raul/Path.h" #include "ObjectModel.h" using std::string; @@ -45,7 +45,7 @@ class ModelEngineInterface; class DeprecatedSerializer { public: - DeprecatedSerializer(CountedPtr<ModelEngineInterface> engine) + DeprecatedSerializer(SharedPtr<ModelEngineInterface> engine) : _patch_search_path("."), _engine(engine) { assert(_engine); @@ -67,7 +67,7 @@ private: string translate_load_path(const string& path); string _patch_search_path; - CountedPtr<ModelEngineInterface> _engine; + SharedPtr<ModelEngineInterface> _engine; /// Translations of paths from the loading file to actual paths (for deprecated patches) std::map<string, string> _load_path_translations; diff --git a/src/libs/client/Makefile.am b/src/libs/client/Makefile.am index de9b1ca4..6c8b93dd 100644 --- a/src/libs/client/Makefile.am +++ b/src/libs/client/Makefile.am @@ -3,8 +3,8 @@ AM_CXXFLAGS = -I$(top_srcdir)/src/common if BUILD_CLIENT_LIB noinst_LTLIBRARIES = libingenclient.la -libingenclient_la_CXXFLAGS = -I$(top_srcdir)/src/common -DPKGDATADIR=\"$(pkgdatadir)\" @LXML2_CFLAGS@ @RAPTOR_CFLAGS@ @LSIGCPP_CFLAGS@ -libingenclient_la_LIBADD = @LXML2_LIBS@ @LOSC_LIBS@ @RAPTOR_LIBS@ @LSIGCPP_LIBS@ +libingenclient_la_CXXFLAGS = -I$(top_srcdir)/src/common -DPKGDATADIR=\"$(pkgdatadir)\" @LXML2_CFLAGS@ @RAPTOR_CFLAGS@ @LSIGCPP_CFLAGS@ @RAUL_CFLAGS@ +libingenclient_la_LIBADD = @LXML2_LIBS@ @LOSC_LIBS@ @RAPTOR_LIBS@ @LSIGCPP_LIBS@ @RAUL_LIBS@ libingenclient_la_SOURCES = \ OSCEngineSender.h \ diff --git a/src/libs/client/NodeModel.cpp b/src/libs/client/NodeModel.cpp index c5e399d2..56df1a12 100644 --- a/src/libs/client/NodeModel.cpp +++ b/src/libs/client/NodeModel.cpp @@ -22,7 +22,7 @@ namespace Ingen { namespace Client { -NodeModel::NodeModel(CountedPtr<PluginModel> plugin, const Path& path, bool polyphonic) +NodeModel::NodeModel(SharedPtr<PluginModel> plugin, const Path& path, bool polyphonic) : ObjectModel(path), m_polyphonic(polyphonic), m_plugin_uri(plugin->uri()), @@ -45,7 +45,7 @@ NodeModel::~NodeModel() void -NodeModel::remove_port(CountedPtr<PortModel> port) +NodeModel::remove_port(SharedPtr<PortModel> port) { m_ports.remove(port); removed_port_sig.emit(port); @@ -89,30 +89,30 @@ NodeModel::set_path(const Path& p) void -NodeModel::add_child(CountedPtr<ObjectModel> c) +NodeModel::add_child(SharedPtr<ObjectModel> c) { assert(c->parent().get() == this); - CountedPtr<PortModel> pm = PtrCast<PortModel>(c); + SharedPtr<PortModel> pm = PtrCast<PortModel>(c); assert(pm); add_port(pm); } void -NodeModel::remove_child(CountedPtr<ObjectModel> c) +NodeModel::remove_child(SharedPtr<ObjectModel> c) { assert(c->path().is_child_of(_path)); assert(c->parent().get() == this); - CountedPtr<PortModel> pm = PtrCast<PortModel>(c); + SharedPtr<PortModel> pm = PtrCast<PortModel>(c); assert(pm); remove_port(pm); } void -NodeModel::add_port(CountedPtr<PortModel> pm) +NodeModel::add_port(SharedPtr<PortModel> pm) { assert(pm); assert(pm->path().is_child_of(_path)); @@ -128,14 +128,14 @@ NodeModel::add_port(CountedPtr<PortModel> pm) } -CountedPtr<PortModel> +SharedPtr<PortModel> NodeModel::get_port(const string& port_name) const { assert(port_name.find("/") == string::npos); for (PortModelList::const_iterator i = m_ports.begin(); i != m_ports.end(); ++i) if ((*i)->path().name() == port_name) return (*i); - return CountedPtr<PortModel>(); + return SharedPtr<PortModel>(); } diff --git a/src/libs/client/NodeModel.h b/src/libs/client/NodeModel.h index 71c77022..e251d8ad 100644 --- a/src/libs/client/NodeModel.h +++ b/src/libs/client/NodeModel.h @@ -24,8 +24,8 @@ #include <sigc++/sigc++.h> #include "ObjectModel.h" #include "PortModel.h" -#include "util/Path.h" -#include "util/CountedPtr.h" +#include "raul/Path.h" +#include "raul/SharedPtr.h" #include "PluginModel.h" using std::string; using std::map; using std::find; @@ -47,30 +47,30 @@ class NodeModel : public ObjectModel public: virtual ~NodeModel(); - CountedPtr<PortModel> get_port(const string& port_name) const; + SharedPtr<PortModel> get_port(const string& port_name) const; const map<int, map<int, string> >& get_programs() const { return m_banks; } const string& plugin_uri() const { return m_plugin_uri; } - CountedPtr<PluginModel> plugin() const { return m_plugin; } + SharedPtr<PluginModel> plugin() const { return m_plugin; } int num_ports() const { return m_ports.size(); } const PortModelList& ports() const { return m_ports; } virtual bool polyphonic() const { return m_polyphonic; } // Signals - sigc::signal<void, CountedPtr<PortModel> > new_port_sig; - sigc::signal<void, CountedPtr<PortModel> > removed_port_sig; + sigc::signal<void, SharedPtr<PortModel> > new_port_sig; + sigc::signal<void, SharedPtr<PortModel> > removed_port_sig; protected: friend class Store; NodeModel(const string& plugin_uri, const Path& path, bool polyphonic); - NodeModel(CountedPtr<PluginModel> plugin, const Path& path, bool polyphonic); + NodeModel(SharedPtr<PluginModel> plugin, const Path& path, bool polyphonic); NodeModel(const Path& path); - void add_child(CountedPtr<ObjectModel> c); - void remove_child(CountedPtr<ObjectModel> c); - void add_port(CountedPtr<PortModel> pm); - void remove_port(CountedPtr<PortModel> pm); + void add_child(SharedPtr<ObjectModel> c); + void remove_child(SharedPtr<ObjectModel> c); + void add_port(SharedPtr<PortModel> pm); + void remove_port(SharedPtr<PortModel> pm); void remove_port(const Path& port_path); void add_program(int bank, int program, const string& name); void remove_program(int bank, int program); @@ -83,7 +83,7 @@ protected: bool m_polyphonic; PortModelList m_ports; ///< List of ports (not a map to preserve order) string m_plugin_uri; ///< Plugin URI (if PluginModel is unknown) - CountedPtr<PluginModel> m_plugin; ///< The plugin this node is an instance of + SharedPtr<PluginModel> m_plugin; ///< The plugin this node is an instance of map<int, map<int, string> > m_banks; ///< DSSI banks private: @@ -93,7 +93,7 @@ private: }; -typedef map<string, CountedPtr<NodeModel> > NodeModelMap; +typedef map<string, SharedPtr<NodeModel> > NodeModelMap; } // namespace Client diff --git a/src/libs/client/OSCClientReceiver.cpp b/src/libs/client/OSCClientReceiver.cpp index 0ae41e75..eb320df0 100644 --- a/src/libs/client/OSCClientReceiver.cpp +++ b/src/libs/client/OSCClientReceiver.cpp @@ -15,7 +15,7 @@ */ #include "OSCClientReceiver.h" -#include "util/LibloAtom.h" +#include "raul/AtomLiblo.h" #include <list> #include <cassert> #include <cstring> @@ -338,7 +338,7 @@ OSCClientReceiver::m_metadata_update_cb(const char* path, const char* types, lo_ const char* obj_path = &argv[0]->s; const char* key = &argv[1]->s; - Atom value = LibloAtom::lo_arg_to_atom(types[2], argv[2]); + Atom value = AtomLiblo::lo_arg_to_atom(types[2], argv[2]); metadata_update(obj_path, key, value); diff --git a/src/libs/client/OSCEngineSender.cpp b/src/libs/client/OSCEngineSender.cpp index 826b53b2..6ba3dfb5 100644 --- a/src/libs/client/OSCEngineSender.cpp +++ b/src/libs/client/OSCEngineSender.cpp @@ -17,7 +17,7 @@ #include <iostream> #include "OSCEngineSender.h" #include "interface/ClientKey.h" -#include "util/LibloAtom.h" +#include "raul/AtomLiblo.h" using std::cout; using std::cerr; using std::endl; namespace Ingen { @@ -107,7 +107,7 @@ OSCEngineSender::attach(int32_t ping_id, bool block) * traversal. It is a parameter to remain compatible with EngineInterface. */ void -OSCEngineSender::register_client(ClientKey key, CountedPtr<ClientInterface> client) +OSCEngineSender::register_client(ClientKey key, SharedPtr<ClientInterface> client) { // FIXME: use parameters.. er, somehow. assert(_engine_addr); @@ -381,7 +381,7 @@ OSCEngineSender::set_metadata(const string& obj_path, lo_message_add_int32(m, next_id()); lo_message_add_string(m, obj_path.c_str()); lo_message_add_string(m, predicate.c_str()); - LibloAtom::lo_message_add_atom(m, value); + AtomLiblo::lo_message_add_atom(m, value); lo_send_message(_engine_addr, "/om/metadata/set", m); } diff --git a/src/libs/client/OSCEngineSender.h b/src/libs/client/OSCEngineSender.h index fb133706..e46542b6 100644 --- a/src/libs/client/OSCEngineSender.h +++ b/src/libs/client/OSCEngineSender.h @@ -58,7 +58,7 @@ public: /* *** EngineInterface implementation below here *** */ // Client registration - void register_client(ClientKey key, CountedPtr<ClientInterface> client); + void register_client(ClientKey key, SharedPtr<ClientInterface> client); void unregister_client(ClientKey key); diff --git a/src/libs/client/ObjectModel.cpp b/src/libs/client/ObjectModel.cpp index 50f8b56d..6b60c5a4 100644 --- a/src/libs/client/ObjectModel.cpp +++ b/src/libs/client/ObjectModel.cpp @@ -63,7 +63,7 @@ ObjectModel::add_metadata(const MetadataMap& data) * @a model as correct. The paths of the two models MUST be equal. */ void -ObjectModel::set(CountedPtr<ObjectModel> model) +ObjectModel::set(SharedPtr<ObjectModel> model) { assert(_path == model->path()); diff --git a/src/libs/client/ObjectModel.h b/src/libs/client/ObjectModel.h index bc780cba..8b6b72ba 100644 --- a/src/libs/client/ObjectModel.h +++ b/src/libs/client/ObjectModel.h @@ -24,9 +24,9 @@ #include <algorithm> #include <cassert> #include <sigc++/sigc++.h> -#include "util/Atom.h" -#include "util/Path.h" -#include "util/CountedPtr.h" +#include "raul/Atom.h" +#include "raul/Path.h" +#include "raul/SharedPtr.h" using std::string; using std::map; using std::find; using std::cout; using std::cerr; using std::endl; @@ -56,7 +56,7 @@ public: const MetadataMap& metadata() const { return _metadata; } inline const Path& path() const { return _path; } - CountedPtr<ObjectModel> parent() const { return _parent; } + SharedPtr<ObjectModel> parent() const { return _parent; } // Signals sigc::signal<void, const string&, const Atom&> metadata_update_sig; @@ -68,20 +68,20 @@ protected: ObjectModel(const Path& path); virtual void set_path(const Path& p) { _path = p; } - virtual void set_parent(CountedPtr<ObjectModel> p) { assert(p); _parent = p; } - virtual void add_child(CountedPtr<ObjectModel> c) = 0; - virtual void remove_child(CountedPtr<ObjectModel> c) = 0; + virtual void set_parent(SharedPtr<ObjectModel> p) { assert(p); _parent = p; } + virtual void add_child(SharedPtr<ObjectModel> c) = 0; + virtual void remove_child(SharedPtr<ObjectModel> c) = 0; void add_metadata(const MetadataMap& data); - void set(CountedPtr<ObjectModel> model); + void set(SharedPtr<ObjectModel> model); void set_metadata(const string& key, const Atom& value) { _metadata[key] = value; metadata_update_sig.emit(key, value); } Path _path; - CountedPtr<ObjectModel> _parent; + SharedPtr<ObjectModel> _parent; MetadataMap _metadata; diff --git a/src/libs/client/PatchModel.cpp b/src/libs/client/PatchModel.cpp index 1d2078c2..22d39d42 100644 --- a/src/libs/client/PatchModel.cpp +++ b/src/libs/client/PatchModel.cpp @@ -41,7 +41,7 @@ PatchModel::set_path(const Path& new_path) #ifdef DEBUG // Be sure connection paths are updated and sane - for (list<CountedPtr<ConnectionModel> >::iterator j = m_connections.begin(); + for (list<SharedPtr<ConnectionModel> >::iterator j = m_connections.begin(); j != m_connections.end(); ++j) { assert((*j)->src_port_path().parent().parent() == new_path); assert((*j)->src_port_path().parent().parent() == new_path); @@ -51,17 +51,17 @@ PatchModel::set_path(const Path& new_path) void -PatchModel::add_child(CountedPtr<ObjectModel> c) +PatchModel::add_child(SharedPtr<ObjectModel> c) { assert(c->parent().get() == this); - CountedPtr<PortModel> pm = PtrCast<PortModel>(c); + SharedPtr<PortModel> pm = PtrCast<PortModel>(c); if (pm) { add_port(pm); return; } - CountedPtr<NodeModel> nm = PtrCast<NodeModel>(c); + SharedPtr<NodeModel> nm = PtrCast<NodeModel>(c); if (nm) { add_node(nm); return; @@ -70,18 +70,18 @@ PatchModel::add_child(CountedPtr<ObjectModel> c) void -PatchModel::remove_child(CountedPtr<ObjectModel> c) +PatchModel::remove_child(SharedPtr<ObjectModel> c) { assert(c->path().is_child_of(_path)); assert(c->parent().get() == this); - CountedPtr<PortModel> pm = PtrCast<PortModel>(c); + SharedPtr<PortModel> pm = PtrCast<PortModel>(c); if (pm) { remove_port(pm); return; } - CountedPtr<NodeModel> nm = PtrCast<NodeModel>(c); + SharedPtr<NodeModel> nm = PtrCast<NodeModel>(c); if (nm) { remove_node(nm); return; @@ -89,17 +89,17 @@ PatchModel::remove_child(CountedPtr<ObjectModel> c) } -CountedPtr<NodeModel> +SharedPtr<NodeModel> PatchModel::get_node(const string& name) const { assert(name.find("/") == string::npos); NodeModelMap::const_iterator i = m_nodes.find(name); - return ((i != m_nodes.end()) ? (*i).second : CountedPtr<NodeModel>()); + return ((i != m_nodes.end()) ? (*i).second : SharedPtr<NodeModel>()); } void -PatchModel::add_node(CountedPtr<NodeModel> nm) +PatchModel::add_node(SharedPtr<NodeModel> nm) { assert(nm); assert(nm->path().is_child_of(_path)); @@ -116,7 +116,7 @@ PatchModel::add_node(CountedPtr<NodeModel> nm) void -PatchModel::remove_node(CountedPtr<NodeModel> nm) +PatchModel::remove_node(SharedPtr<NodeModel> nm) { assert(nm->path().is_child_of(_path)); assert(nm->parent().get() == this); @@ -155,7 +155,7 @@ PatchModel::remove_node(const string& name) void PatchModel::clear() { - //for (list<CountedPtr<ConnectionModel> >::iterator j = m_connections.begin(); j != m_connections.end(); ++j) + //for (list<SharedPtr<ConnectionModel> >::iterator j = m_connections.begin(); j != m_connections.end(); ++j) // delete (*j); for (NodeModelMap::iterator i = m_nodes.begin(); i != m_nodes.end(); ++i) { @@ -190,8 +190,8 @@ PatchModel::rename_node(const Path& old_path, const Path& new_path) NodeModelMap::iterator i = m_nodes.find(old_path.name()); if (i != m_nodes.end()) { - CountedPtr<NodeModel> nm = (*i).second; - for (list<CountedPtr<ConnectionModel> >::iterator j = m_connections.begin(); j != m_connections.end(); ++j) { + SharedPtr<NodeModel> nm = (*i).second; + for (list<SharedPtr<ConnectionModel> >::iterator j = m_connections.begin(); j != m_connections.end(); ++j) { if ((*j)->src_port_path().parent() == old_path) (*j)->src_port_path(new_path.base() + (*j)->src_port_path().name()); if ((*j)->dst_port_path().parent() == old_path) @@ -208,13 +208,13 @@ PatchModel::rename_node(const Path& old_path, const Path& new_path) } -CountedPtr<ConnectionModel> +SharedPtr<ConnectionModel> PatchModel::get_connection(const string& src_port_path, const string& dst_port_path) const { - for (list<CountedPtr<ConnectionModel> >::const_iterator i = m_connections.begin(); i != m_connections.end(); ++i) + for (list<SharedPtr<ConnectionModel> >::const_iterator i = m_connections.begin(); i != m_connections.end(); ++i) if ((*i)->src_port_path() == src_port_path && (*i)->dst_port_path() == dst_port_path) return (*i); - return CountedPtr<ConnectionModel>(); + return SharedPtr<ConnectionModel>(); } @@ -226,7 +226,7 @@ PatchModel::get_connection(const string& src_port_path, const string& dst_port_p * this patch is a fatal error. */ void -PatchModel::add_connection(CountedPtr<ConnectionModel> cm) +PatchModel::add_connection(SharedPtr<ConnectionModel> cm) { // Store should have 'resolved' the connection already assert(cm); @@ -240,7 +240,7 @@ PatchModel::add_connection(CountedPtr<ConnectionModel> cm) assert(cm->dst_port()->parent().get() == this || cm->dst_port()->parent()->parent().get() == this); - CountedPtr<ConnectionModel> existing = get_connection(cm->src_port_path(), cm->dst_port_path()); + SharedPtr<ConnectionModel> existing = get_connection(cm->src_port_path(), cm->dst_port_path()); if (existing) { assert(cm->src_port() == existing->src_port()); @@ -256,8 +256,8 @@ void PatchModel::remove_connection(const string& src_port_path, const string& dst_port_path) { cerr << path() << " PatchModel::remove_connection: " << src_port_path << " -> " << dst_port_path << endl; - for (list<CountedPtr<ConnectionModel> >::iterator i = m_connections.begin(); i != m_connections.end(); ++i) { - CountedPtr<ConnectionModel> cm = (*i); + for (list<SharedPtr<ConnectionModel> >::iterator i = m_connections.begin(); i != m_connections.end(); ++i) { + SharedPtr<ConnectionModel> cm = (*i); if (cm->src_port_path() == src_port_path && cm->dst_port_path() == dst_port_path) { m_connections.erase(i); // cuts our reference assert(!get_connection(src_port_path, dst_port_path)); // no duplicates diff --git a/src/libs/client/PatchModel.h b/src/libs/client/PatchModel.h index a7679b15..7dbad00b 100644 --- a/src/libs/client/PatchModel.h +++ b/src/libs/client/PatchModel.h @@ -23,7 +23,7 @@ #include <map> #include <sigc++/sigc++.h> #include "NodeModel.h" -#include "util/CountedPtr.h" +#include "raul/SharedPtr.h" #include "ConnectionModel.h" using std::list; using std::string; using std::map; @@ -44,8 +44,8 @@ public: const NodeModelMap& nodes() const { return m_nodes; } const ConnectionList& connections() const { return m_connections; } - CountedPtr<ConnectionModel> get_connection(const string& src_port_path, const string& dst_port_path) const; - CountedPtr<NodeModel> get_node(const string& node_name) const; + SharedPtr<ConnectionModel> get_connection(const string& src_port_path, const string& dst_port_path) const; + SharedPtr<NodeModel> get_node(const string& node_name) const; size_t poly() const { return m_poly; } const string& filename() const { return m_filename; } @@ -53,9 +53,9 @@ public: bool polyphonic() const; // Signals - sigc::signal<void, CountedPtr<NodeModel> > new_node_sig; - sigc::signal<void, CountedPtr<NodeModel> > removed_node_sig; - sigc::signal<void, CountedPtr<ConnectionModel> > new_connection_sig; + sigc::signal<void, SharedPtr<NodeModel> > new_node_sig; + sigc::signal<void, SharedPtr<NodeModel> > removed_node_sig; + sigc::signal<void, SharedPtr<ConnectionModel> > new_connection_sig; sigc::signal<void, const Path&, const Path& > removed_connection_sig; sigc::signal<void> enabled_sig; sigc::signal<void> disabled_sig; @@ -76,12 +76,12 @@ private: void disable(); void clear(); void set_path(const Path& path); - void add_node(CountedPtr<NodeModel> nm); - void remove_node(CountedPtr<NodeModel> nm); - void add_child(CountedPtr<ObjectModel> c); - void remove_child(CountedPtr<ObjectModel> c); + void add_node(SharedPtr<NodeModel> nm); + void remove_node(SharedPtr<NodeModel> nm); + void add_child(SharedPtr<ObjectModel> c); + void remove_child(SharedPtr<ObjectModel> c); - void add_connection(CountedPtr<ConnectionModel> cm); + void add_connection(SharedPtr<ConnectionModel> cm); void remove_connection(const string& src_port_path, const string& dst_port_path); void rename_node(const Path& old_path, const Path& new_path); @@ -98,7 +98,7 @@ private: size_t m_poly; }; -typedef map<string, CountedPtr<PatchModel> > PatchModelMap; +typedef map<string, SharedPtr<PatchModel> > PatchModelMap; } // namespace Client diff --git a/src/libs/client/PluginModel.h b/src/libs/client/PluginModel.h index 42548f64..e4b4233d 100644 --- a/src/libs/client/PluginModel.h +++ b/src/libs/client/PluginModel.h @@ -19,7 +19,7 @@ #include <string> #include <iostream> -#include "util/Path.h" +#include "raul/Path.h" using std::string; using std::cerr; using std::endl; namespace Ingen { diff --git a/src/libs/client/PortModel.h b/src/libs/client/PortModel.h index c4b08ce8..b9254b84 100644 --- a/src/libs/client/PortModel.h +++ b/src/libs/client/PortModel.h @@ -22,8 +22,8 @@ #include <list> #include <sigc++/sigc++.h> #include "ObjectModel.h" -#include "util/CountedPtr.h" -#include "util/Path.h" +#include "raul/SharedPtr.h" +#include "raul/Path.h" using std::string; using std::list; namespace Ingen { @@ -58,8 +58,8 @@ public: // Signals sigc::signal<void, float> control_change_sig; ///< "Control" ports only - sigc::signal<void, CountedPtr<PortModel> > connection_sig; - sigc::signal<void, CountedPtr<PortModel> > disconnection_sig; + sigc::signal<void, SharedPtr<PortModel> > connection_sig; + sigc::signal<void, SharedPtr<PortModel> > disconnection_sig; private: friend class Store; @@ -86,15 +86,15 @@ private: inline void value(float f) { m_current_val = f; control_change_sig.emit(f); } - void add_child(CountedPtr<ObjectModel> c) { throw; } - void remove_child(CountedPtr<ObjectModel> c) { throw; } + void add_child(SharedPtr<ObjectModel> c) { throw; } + void remove_child(SharedPtr<ObjectModel> c) { throw; } // Prevent copies (undefined) PortModel(const PortModel& copy); PortModel& operator=(const PortModel& copy); - void connected_to(CountedPtr<PortModel> p) { ++m_connections; connection_sig.emit(p); } - void disconnected_from(CountedPtr<PortModel> p) { --m_connections; disconnection_sig.emit(p); } + void connected_to(SharedPtr<PortModel> p) { ++m_connections; connection_sig.emit(p); } + void disconnected_from(SharedPtr<PortModel> p) { --m_connections; disconnection_sig.emit(p); } Type m_type; @@ -104,7 +104,7 @@ private: size_t m_connections; }; -typedef list<CountedPtr<PortModel> > PortModelList; +typedef list<SharedPtr<PortModel> > PortModelList; } // namespace Client diff --git a/src/libs/client/Serializer.cpp b/src/libs/client/Serializer.cpp index 6bfa08d6..bfcb0de6 100644 --- a/src/libs/client/Serializer.cpp +++ b/src/libs/client/Serializer.cpp @@ -34,9 +34,9 @@ #include "PresetModel.h" #include "ModelEngineInterface.h" #include "PluginModel.h" -#include "util/Path.h" -#include "util/Atom.h" -#include "util/RedlandAtom.h" +#include "raul/Path.h" +#include "raul/Atom.h" +#include "raul/AtomRaptor.h" #define U(x) ((const unsigned char*)(x)) @@ -47,7 +47,7 @@ namespace Ingen { namespace Client { -Serializer::Serializer(CountedPtr<ModelEngineInterface> engine) +Serializer::Serializer(SharedPtr<ModelEngineInterface> engine) : _serializer(NULL) , _string_output(NULL) , _patch_search_path(".") @@ -70,7 +70,7 @@ Serializer::~Serializer() * This must be called before any serializing methods. */ void -Serializer::start_to_filename(const string& filename) throw(std::logic_error) +Serializer::start_to_filename(const string& filename) throw (std::logic_error) { if (_serializer) throw std::logic_error("start_to_string called with serialization in progress"); @@ -90,7 +90,7 @@ Serializer::start_to_filename(const string& filename) throw(std::logic_error) * the desired objects have been serialized. */ void -Serializer::start_to_string() throw(std::logic_error) +Serializer::start_to_string() throw (std::logic_error) { if (_serializer) throw std::logic_error("start_to_string called with serialization in progress"); @@ -282,31 +282,31 @@ Serializer::serialize_atom( triple.predicate = (void*)raptor_new_uri((const unsigned char*)predicate_uri.c_str()); triple.predicate_type = RAPTOR_IDENTIFIER_TYPE_RESOURCE; - RedlandAtom::atom_to_triple_object(&triple, atom); + AtomRaptor::atom_to_triple_object(&triple, atom); raptor_serialize_statement(_serializer, &triple); } void -Serializer::serialize(CountedPtr<ObjectModel> object) throw (std::logic_error) +Serializer::serialize(SharedPtr<ObjectModel> object) throw (std::logic_error) { if (!_serializer) throw std::logic_error("serialize_patch called without serialization in progress"); - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(object); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(object); if (patch) { serialize_patch(patch); return; } - CountedPtr<NodeModel> node = PtrCast<NodeModel>(object); + SharedPtr<NodeModel> node = PtrCast<NodeModel>(object); if (node) { serialize_node(node); return; } - CountedPtr<PortModel> port = PtrCast<PortModel>(object); + SharedPtr<PortModel> port = PtrCast<PortModel>(object); if (port) { serialize_port(port); return; @@ -318,7 +318,7 @@ Serializer::serialize(CountedPtr<ObjectModel> object) throw (std::logic_error) void -Serializer::serialize_patch(CountedPtr<PatchModel> patch) +Serializer::serialize_patch(SharedPtr<PatchModel> patch) { assert(_serializer); @@ -361,7 +361,7 @@ Serializer::serialize_patch(CountedPtr<PatchModel> patch) void Serializer::serialize_node( - CountedPtr<NodeModel> node, const string ns_prefix) + SharedPtr<NodeModel> node, const string ns_prefix) { assert(_serializer); @@ -394,7 +394,7 @@ Serializer::serialize_node( void -Serializer::serialize_port(CountedPtr<PortModel> port, const string ns_prefix) +Serializer::serialize_port(SharedPtr<PortModel> port, const string ns_prefix) { assert(_serializer); @@ -417,7 +417,7 @@ Serializer::serialize_port(CountedPtr<PortModel> port, const string ns_prefix) void -Serializer::serialize_connection(CountedPtr<ConnectionModel> connection) throw (std::logic_error) +Serializer::serialize_connection(SharedPtr<ConnectionModel> connection) throw (std::logic_error) { assert(_serializer); diff --git a/src/libs/client/Serializer.h b/src/libs/client/Serializer.h index 1af18de7..15c49101 100644 --- a/src/libs/client/Serializer.h +++ b/src/libs/client/Serializer.h @@ -23,9 +23,9 @@ #include <stdexcept> #include <raptor.h> #include <cassert> -#include "util/CountedPtr.h" -#include "util/Path.h" -#include "util/Atom.h" +#include "raul/SharedPtr.h" +#include "raul/Path.h" +#include "raul/Atom.h" #include "ObjectModel.h" using std::string; @@ -53,7 +53,7 @@ class ModelEngineInterface; class Serializer { public: - Serializer(CountedPtr<ModelEngineInterface> engine); + Serializer(SharedPtr<ModelEngineInterface> engine); ~Serializer(); void path(const string& path) { _patch_search_path = path; } @@ -70,19 +70,19 @@ public: void start_to_filename(const string& filename) throw (std::logic_error); void start_to_string() throw (std::logic_error); - void serialize(CountedPtr<ObjectModel> object) throw (std::logic_error); - void serialize_connection(CountedPtr<ConnectionModel> c) throw (std::logic_error); + void serialize(SharedPtr<ObjectModel> object) throw (std::logic_error); + void serialize_connection(SharedPtr<ConnectionModel> c) throw (std::logic_error); string finish() throw (std::logic_error); private: // Model -> RDF - void serialize_patch(CountedPtr<PatchModel> p); + void serialize_patch(SharedPtr<PatchModel> p); - void serialize_node(CountedPtr<NodeModel> n, const string ns_prefix=""); + void serialize_node(SharedPtr<NodeModel> n, const string ns_prefix=""); - void serialize_port(CountedPtr<PortModel> p, const string ns_prefix=""); + void serialize_port(SharedPtr<PortModel> p, const string ns_prefix=""); @@ -110,7 +110,7 @@ private: unsigned char* _string_output; string _patch_search_path; map<string, string> _prefixes; - CountedPtr<ModelEngineInterface> _engine; + SharedPtr<ModelEngineInterface> _engine; }; diff --git a/src/libs/client/Store.cpp b/src/libs/client/Store.cpp index fb16697b..30942ae3 100644 --- a/src/libs/client/Store.cpp +++ b/src/libs/client/Store.cpp @@ -28,7 +28,7 @@ namespace Client { -Store::Store(CountedPtr<EngineInterface> engine, CountedPtr<SigClientInterface> emitter) +Store::Store(SharedPtr<EngineInterface> engine, SharedPtr<SigClientInterface> emitter) : _engine(engine) , _emitter(emitter) { @@ -57,12 +57,12 @@ Store::clear() void -Store::add_plugin_orphan(CountedPtr<NodeModel> node) +Store::add_plugin_orphan(SharedPtr<NodeModel> node) { cerr << "WARNING: Node " << node->path() << " received, but plugin " << node->plugin_uri() << " unknown." << endl; - map<string, list<CountedPtr<NodeModel> > >::iterator spawn + map<string, list<SharedPtr<NodeModel> > >::iterator spawn = _plugin_orphans.find(node->plugin_uri()); _engine->request_plugin(node->plugin_uri()); @@ -70,7 +70,7 @@ Store::add_plugin_orphan(CountedPtr<NodeModel> node) if (spawn != _plugin_orphans.end()) { spawn->second.push_back(node); } else { - list<CountedPtr<NodeModel> > l; + list<SharedPtr<NodeModel> > l; l.push_back(node); _plugin_orphans[node->plugin_uri()] = l; } @@ -78,18 +78,18 @@ Store::add_plugin_orphan(CountedPtr<NodeModel> node) void -Store::resolve_plugin_orphans(CountedPtr<PluginModel> plugin) +Store::resolve_plugin_orphans(SharedPtr<PluginModel> plugin) { - map<string, list<CountedPtr<NodeModel> > >::iterator n + map<string, list<SharedPtr<NodeModel> > >::iterator n = _plugin_orphans.find(plugin->uri()); if (n != _plugin_orphans.end()) { - list<CountedPtr<NodeModel> > spawn = n->second; // take a copy + list<SharedPtr<NodeModel> > spawn = n->second; // take a copy _plugin_orphans.erase(plugin->uri()); // prevent infinite recursion - for (list<CountedPtr<NodeModel> >::iterator i = spawn.begin(); + for (list<SharedPtr<NodeModel> >::iterator i = spawn.begin(); i != spawn.end(); ++i) { add_object(*i); } @@ -98,7 +98,7 @@ Store::resolve_plugin_orphans(CountedPtr<PluginModel> plugin) void -Store::add_connection_orphan(CountedPtr<ConnectionModel> connection) +Store::add_connection_orphan(SharedPtr<ConnectionModel> connection) { cerr << "WARNING: Orphan connection " << connection->src_port_path() << " -> " << connection->dst_port_path() << " received." << endl; @@ -108,11 +108,11 @@ Store::add_connection_orphan(CountedPtr<ConnectionModel> connection) void -Store::resolve_connection_orphans(CountedPtr<PortModel> port) +Store::resolve_connection_orphans(SharedPtr<PortModel> port) { assert(port->parent()); - for (list<CountedPtr<ConnectionModel> >::iterator c = _connection_orphans.begin(); + for (list<SharedPtr<ConnectionModel> >::iterator c = _connection_orphans.begin(); c != _connection_orphans.end(); ) { if ((*c)->src_port_path() == port->path()) @@ -121,11 +121,11 @@ Store::resolve_connection_orphans(CountedPtr<PortModel> port) if ((*c)->dst_port_path() == port->path()) (*c)->set_dst_port(port); - list<CountedPtr<ConnectionModel> >::iterator next = c; + list<SharedPtr<ConnectionModel> >::iterator next = c; ++next; if ((*c)->src_port() && (*c)->dst_port()) { - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object((*c)->patch_path())); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object((*c)->patch_path())); if (patch) { cerr << "Resolved orphan connection " << (*c)->src_port_path() << (*c)->dst_port_path() << endl; @@ -140,11 +140,11 @@ Store::resolve_connection_orphans(CountedPtr<PortModel> port) void -Store::add_orphan(CountedPtr<ObjectModel> child) +Store::add_orphan(SharedPtr<ObjectModel> child) { cerr << "WARNING: Orphan object " << child->path() << " received." << endl; - map<Path, list<CountedPtr<ObjectModel> > >::iterator children + map<Path, list<SharedPtr<ObjectModel> > >::iterator children = _orphans.find(child->path().parent()); _engine->request_object(child->path().parent()); @@ -152,7 +152,7 @@ Store::add_orphan(CountedPtr<ObjectModel> child) if (children != _orphans.end()) { children->second.push_back(child); } else { - list<CountedPtr<ObjectModel> > l; + list<SharedPtr<ObjectModel> > l; l.push_back(child); _orphans[child->path().parent()] = l; } @@ -178,7 +178,7 @@ Store::add_metadata_orphan(const Path& subject_path, const string& predicate, co void -Store::resolve_metadata_orphans(CountedPtr<ObjectModel> subject) +Store::resolve_metadata_orphans(SharedPtr<ObjectModel> subject) { map<Path, list<std::pair<string, Atom> > >::iterator v = _metadata_orphans.find(subject->path()); @@ -198,18 +198,18 @@ Store::resolve_metadata_orphans(CountedPtr<ObjectModel> subject) void -Store::resolve_orphans(CountedPtr<ObjectModel> parent) +Store::resolve_orphans(SharedPtr<ObjectModel> parent) { - map<Path, list<CountedPtr<ObjectModel> > >::iterator c + map<Path, list<SharedPtr<ObjectModel> > >::iterator c = _orphans.find(parent->path()); if (c != _orphans.end()) { - list<CountedPtr<ObjectModel> > children = c->second; // take a copy + list<SharedPtr<ObjectModel> > children = c->second; // take a copy _orphans.erase(parent->path()); // prevent infinite recursion - for (list<CountedPtr<ObjectModel> >::iterator i = children.begin(); + for (list<SharedPtr<ObjectModel> >::iterator i = children.begin(); i != children.end(); ++i) { add_object(*i); } @@ -218,7 +218,7 @@ Store::resolve_orphans(CountedPtr<ObjectModel> parent) void -Store::add_object(CountedPtr<ObjectModel> object) +Store::add_object(SharedPtr<ObjectModel> object) { // If we already have "this" object, merge the existing one into the new // one (with precedence to the new values). @@ -228,7 +228,7 @@ Store::add_object(CountedPtr<ObjectModel> object) } else { if (object->path() != "/") { - CountedPtr<ObjectModel> parent = this->object(object->path().parent()); + SharedPtr<ObjectModel> parent = this->object(object->path().parent()); if (parent) { assert(object->path().is_child_of(parent->path())); object->set_parent(parent); @@ -241,7 +241,7 @@ Store::add_object(CountedPtr<ObjectModel> object) resolve_metadata_orphans(parent); resolve_orphans(parent); - CountedPtr<PortModel> port = PtrCast<PortModel>(object); + SharedPtr<PortModel> port = PtrCast<PortModel>(object); if (port) resolve_connection_orphans(port); @@ -259,14 +259,14 @@ Store::add_object(CountedPtr<ObjectModel> object) } -CountedPtr<ObjectModel> +SharedPtr<ObjectModel> Store::remove_object(const Path& path) { - map<Path, CountedPtr<ObjectModel> >::iterator i = _objects.find(path); + map<Path, SharedPtr<ObjectModel> >::iterator i = _objects.find(path); if (i != _objects.end()) { assert((*i).second->path() == path); - CountedPtr<ObjectModel> result = (*i).second; + SharedPtr<ObjectModel> result = (*i).second; _objects.erase(i); //cout << "[Store] Removed " << path << endl; @@ -276,7 +276,7 @@ Store::remove_object(const Path& path) if (result->path() != "/") { assert(result->parent()); - CountedPtr<ObjectModel> parent = this->object(result->path().parent()); + SharedPtr<ObjectModel> parent = this->object(result->path().parent()); if (parent) { parent->remove_child(result); } @@ -288,30 +288,30 @@ Store::remove_object(const Path& path) } else { cerr << "[Store] Unable to find object " << path << " to remove." << endl; - return CountedPtr<ObjectModel>(); + return SharedPtr<ObjectModel>(); } } -CountedPtr<PluginModel> +SharedPtr<PluginModel> Store::plugin(const string& uri) { assert(uri.length() > 0); - map<string, CountedPtr<PluginModel> >::iterator i = _plugins.find(uri); + map<string, SharedPtr<PluginModel> >::iterator i = _plugins.find(uri); if (i == _plugins.end()) - return CountedPtr<PluginModel>(); + return SharedPtr<PluginModel>(); else return (*i).second; } -CountedPtr<ObjectModel> +SharedPtr<ObjectModel> Store::object(const Path& path) { assert(path.length() > 0); - map<Path, CountedPtr<ObjectModel> >::iterator i = _objects.find(path); + map<Path, SharedPtr<ObjectModel> >::iterator i = _objects.find(path); if (i == _objects.end()) { - return CountedPtr<ObjectModel>(); + return SharedPtr<ObjectModel>(); } else { assert(i->second->path() == "/" || i->second->parent()); return i->second; @@ -319,7 +319,7 @@ Store::object(const Path& path) } void -Store::add_plugin(CountedPtr<PluginModel> pm) +Store::add_plugin(SharedPtr<PluginModel> pm) { // FIXME: dupes? merge, like with objects? @@ -334,7 +334,7 @@ Store::add_plugin(CountedPtr<PluginModel> pm) void Store::destruction_event(const Path& path) { - CountedPtr<ObjectModel> removed = remove_object(path); + SharedPtr<ObjectModel> removed = remove_object(path); removed.reset(); @@ -345,7 +345,7 @@ Store::destruction_event(const Path& path) void Store::new_plugin_event(const string& uri, const string& name) { - CountedPtr<PluginModel> p(new PluginModel(uri, name)); + SharedPtr<PluginModel> p(new PluginModel(uri, name)); add_plugin(p); resolve_plugin_orphans(p); } @@ -354,7 +354,7 @@ Store::new_plugin_event(const string& uri, const string& name) void Store::new_patch_event(const Path& path, uint32_t poly) { - CountedPtr<PatchModel> p(new PatchModel(path, poly)); + SharedPtr<PatchModel> p(new PatchModel(path, poly)); add_object(p); } @@ -364,12 +364,12 @@ Store::new_node_event(const string& plugin_uri, const Path& node_path, bool is_p { // FIXME: num_ports unused - CountedPtr<PluginModel> plug = plugin(plugin_uri); + SharedPtr<PluginModel> plug = plugin(plugin_uri); if (!plug) { - CountedPtr<NodeModel> n(new NodeModel(plugin_uri, node_path, is_polyphonic)); + SharedPtr<NodeModel> n(new NodeModel(plugin_uri, node_path, is_polyphonic)); add_plugin_orphan(n); } else { - CountedPtr<NodeModel> n(new NodeModel(plug, node_path, is_polyphonic)); + SharedPtr<NodeModel> n(new NodeModel(plug, node_path, is_polyphonic)); add_object(n); } } @@ -388,7 +388,7 @@ Store::new_port_event(const Path& path, const string& type, bool is_output) PortModel::Direction pdir = is_output ? PortModel::OUTPUT : PortModel::INPUT; - CountedPtr<PortModel> p(new PortModel(path, ptype, pdir)); + SharedPtr<PortModel> p(new PortModel(path, ptype, pdir)); add_object(p); if (p->parent()) resolve_connection_orphans(p); @@ -398,7 +398,7 @@ Store::new_port_event(const Path& path, const string& type, bool is_output) void Store::patch_enabled_event(const Path& path) { - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); if (patch) patch->enable(); } @@ -407,7 +407,7 @@ Store::patch_enabled_event(const Path& path) void Store::patch_disabled_event(const Path& path) { - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); if (patch) patch->disable(); } @@ -416,7 +416,7 @@ Store::patch_disabled_event(const Path& path) void Store::patch_cleared_event(const Path& path) { - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(object(path)); if (patch) { NodeModelMap children = patch->nodes(); // take a copy for (NodeModelMap::iterator i = children.begin(); i != children.end(); ++i) { @@ -429,7 +429,7 @@ Store::patch_cleared_event(const Path& path) void Store::metadata_update_event(const Path& subject_path, const string& predicate, const Atom& value) { - CountedPtr<ObjectModel> subject = object(subject_path); + SharedPtr<ObjectModel> subject = object(subject_path); if (subject) { subject->set_metadata(predicate, value); @@ -443,7 +443,7 @@ Store::metadata_update_event(const Path& subject_path, const string& predicate, void Store::control_change_event(const Path& port_path, float value) { - CountedPtr<PortModel> port = PtrCast<PortModel>(object(port_path)); + SharedPtr<PortModel> port = PtrCast<PortModel>(object(port_path)); if (port) port->value(value); else @@ -454,20 +454,20 @@ Store::control_change_event(const Path& port_path, float value) void Store::connection_event(const Path& src_port_path, const Path& dst_port_path) { - CountedPtr<PortModel> src_port = PtrCast<PortModel>(object(src_port_path)); - CountedPtr<PortModel> dst_port = PtrCast<PortModel>(object(dst_port_path)); + SharedPtr<PortModel> src_port = PtrCast<PortModel>(object(src_port_path)); + SharedPtr<PortModel> dst_port = PtrCast<PortModel>(object(dst_port_path)); - CountedPtr<ConnectionModel> dangling_cm(new ConnectionModel(src_port_path, dst_port_path)); + SharedPtr<ConnectionModel> dangling_cm(new ConnectionModel(src_port_path, dst_port_path)); if (src_port && dst_port) { assert(src_port->parent()); assert(dst_port->parent()); - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object(dangling_cm->patch_path())); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object(dangling_cm->patch_path())); assert(patch); - CountedPtr<ConnectionModel> cm(new ConnectionModel(src_port, dst_port)); + SharedPtr<ConnectionModel> cm(new ConnectionModel(src_port, dst_port)); src_port->connected_to(dst_port); dst_port->connected_to(src_port); @@ -488,8 +488,8 @@ Store::disconnection_event(const Path& src_port_path, const Path& dst_port_path) // Find the ports and create a ConnectionModel just to get at the parent path // finding logic in ConnectionModel. So I'm lazy. - CountedPtr<PortModel> src_port = PtrCast<PortModel>(object(src_port_path)); - CountedPtr<PortModel> dst_port = PtrCast<PortModel>(object(dst_port_path)); + SharedPtr<PortModel> src_port = PtrCast<PortModel>(object(src_port_path)); + SharedPtr<PortModel> dst_port = PtrCast<PortModel>(object(dst_port_path)); assert(src_port); assert(dst_port); @@ -497,9 +497,9 @@ Store::disconnection_event(const Path& src_port_path, const Path& dst_port_path) src_port->disconnected_from(dst_port); dst_port->disconnected_from(src_port); - CountedPtr<ConnectionModel> cm(new ConnectionModel(src_port, dst_port)); + SharedPtr<ConnectionModel> cm(new ConnectionModel(src_port, dst_port)); - CountedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object(cm->patch_path())); + SharedPtr<PatchModel> patch = PtrCast<PatchModel>(this->object(cm->patch_path())); if (patch) patch->remove_connection(src_port_path, dst_port_path); diff --git a/src/libs/client/Store.h b/src/libs/client/Store.h index 6a8700f9..d1599423 100644 --- a/src/libs/client/Store.h +++ b/src/libs/client/Store.h @@ -21,10 +21,10 @@ #include <string> #include <map> #include <list> -#include "util/CountedPtr.h" +#include "raul/SharedPtr.h" #include <sigc++/sigc++.h> -#include "util/Path.h" -#include "util/Atom.h" +#include "raul/Path.h" +#include "raul/Atom.h" #include "interface/EngineInterface.h" using std::string; using std::map; using std::list; using Ingen::Shared::EngineInterface; @@ -47,39 +47,39 @@ class ConnectionModel; */ class Store : public sigc::trackable { // FIXME: is trackable necessary? public: - Store(CountedPtr<EngineInterface> engine, CountedPtr<SigClientInterface> emitter); + Store(SharedPtr<EngineInterface> engine, SharedPtr<SigClientInterface> emitter); - CountedPtr<PluginModel> plugin(const string& uri); - CountedPtr<ObjectModel> object(const Path& path); + SharedPtr<PluginModel> plugin(const string& uri); + SharedPtr<ObjectModel> object(const Path& path); void clear(); size_t num_object() { return _objects.size(); } - const map<string, CountedPtr<PluginModel> >& plugins() const { return _plugins; } - const map<Path, CountedPtr<ObjectModel> >& objects() const { return _objects; } + const map<string, SharedPtr<PluginModel> >& plugins() const { return _plugins; } + const map<Path, SharedPtr<ObjectModel> >& objects() const { return _objects; } - sigc::signal<void, CountedPtr<ObjectModel> > new_object_sig; + sigc::signal<void, SharedPtr<ObjectModel> > new_object_sig; private: - void add_object(CountedPtr<ObjectModel> object); - CountedPtr<ObjectModel> remove_object(const Path& path); + void add_object(SharedPtr<ObjectModel> object); + SharedPtr<ObjectModel> remove_object(const Path& path); - void add_plugin(CountedPtr<PluginModel> plugin); + void add_plugin(SharedPtr<PluginModel> plugin); // It would be nice to integrate these somehow.. - void add_orphan(CountedPtr<ObjectModel> orphan); - void resolve_orphans(CountedPtr<ObjectModel> parent); + void add_orphan(SharedPtr<ObjectModel> orphan); + void resolve_orphans(SharedPtr<ObjectModel> parent); - void add_connection_orphan(CountedPtr<ConnectionModel> orphan); - void resolve_connection_orphans(CountedPtr<PortModel> port); + void add_connection_orphan(SharedPtr<ConnectionModel> orphan); + void resolve_connection_orphans(SharedPtr<PortModel> port); - void add_plugin_orphan(CountedPtr<NodeModel> orphan); - void resolve_plugin_orphans(CountedPtr<PluginModel> plugin); + void add_plugin_orphan(SharedPtr<NodeModel> orphan); + void resolve_plugin_orphans(SharedPtr<PluginModel> plugin); void add_metadata_orphan(const Path& subject, const string& predicate, const Atom& value); - void resolve_metadata_orphans(CountedPtr<ObjectModel> subject); + void resolve_metadata_orphans(SharedPtr<ObjectModel> subject); // Slots for SigClientInterface signals void destruction_event(const Path& path); @@ -95,27 +95,27 @@ private: void connection_event(const Path& src_port_path, const Path& dst_port_path); void disconnection_event(const Path& src_port_path, const Path& dst_port_path); - CountedPtr<EngineInterface> _engine; - CountedPtr<SigClientInterface> _emitter; + SharedPtr<EngineInterface> _engine; + SharedPtr<SigClientInterface> _emitter; - typedef map<Path, CountedPtr<ObjectModel> > ObjectMap; + typedef map<Path, SharedPtr<ObjectModel> > ObjectMap; ObjectMap _objects; ///< Keyed by Ingen path - map<string, CountedPtr<PluginModel> > _plugins; ///< Keyed by URI + map<string, SharedPtr<PluginModel> > _plugins; ///< Keyed by URI /** Objects we've received, but depend on the existance of another unknown object. * Keyed by the path of the depended-on object (for tolerance of orderless comms) */ - map<Path, list<CountedPtr<ObjectModel> > > _orphans; + map<Path, list<SharedPtr<ObjectModel> > > _orphans; /** Same idea, except with plugins instead of parents. * It's unfortunate everything doesn't just have a URI and this was the same.. ahem.. */ - map<string, list<CountedPtr<NodeModel> > > _plugin_orphans; + map<string, list<SharedPtr<NodeModel> > > _plugin_orphans; /** Not orphans OF metadata like the above, but orphans which are metadata */ map<Path, list<std::pair<string, Atom> > > _metadata_orphans; /** Ditto */ - list<CountedPtr<ConnectionModel> > _connection_orphans; + list<SharedPtr<ConnectionModel> > _connection_orphans; }; diff --git a/src/libs/client/ThreadedSigClientInterface.h b/src/libs/client/ThreadedSigClientInterface.h index f29d3cc4..056540fb 100644 --- a/src/libs/client/ThreadedSigClientInterface.h +++ b/src/libs/client/ThreadedSigClientInterface.h @@ -22,8 +22,8 @@ #include <sigc++/sigc++.h> #include "interface/ClientInterface.h" #include "SigClientInterface.h" -#include "util/Queue.h" -#include "util/Atom.h" +#include "raul/Queue.h" +#include "raul/Atom.h" using std::string; /** Returns nothing and takes no parameters (because they have all been bound) */ |