From 0e1bf6ddfc77866ff6477a3f394c030c2a5e1b39 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 30 Jul 2012 23:00:13 +0000 Subject: Eliminate pure virtual base classes Patch, Node, and Port, and the virtual inheritance they imposed. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4576 a436a847-0d15-0410-975c-d299462d15a1 --- ingen/client/NodeModel.hpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'ingen/client/NodeModel.hpp') diff --git a/ingen/client/NodeModel.hpp b/ingen/client/NodeModel.hpp index cc41070c..07810eed 100644 --- a/ingen/client/NodeModel.hpp +++ b/ingen/client/NodeModel.hpp @@ -22,9 +22,7 @@ #include #include "raul/SharedPtr.hpp" - -#include "ingen/Node.hpp" -#include "ingen/Port.hpp" +#include "ingen/GraphObject.hpp" #include "ingen/client/ObjectModel.hpp" #include "ingen/client/PortModel.hpp" #include "ingen/client/PluginModel.hpp" @@ -44,18 +42,19 @@ class ClientStore; * * @ingroup IngenClient */ -class NodeModel : public ObjectModel, - virtual public Ingen::Node +class NodeModel : public ObjectModel { public: NodeModel(const NodeModel& copy); virtual ~NodeModel(); + GraphType graph_type() const { return GraphObject::PATCH; } + typedef std::vector< SharedPtr > Ports; SharedPtr get_port(const Raul::Symbol& symbol) const; - Port* port(uint32_t index) const; + GraphObject* port(uint32_t index) const; const Raul::URI& plugin_uri() const { return _plugin_uri; } const Plugin* plugin() const { return _plugin.get(); } -- cgit v1.2.1