summaryrefslogtreecommitdiffstats
path: root/src/common/interface/GraphObject.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/interface/GraphObject.hpp')
-rw-r--r--src/common/interface/GraphObject.hpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/common/interface/GraphObject.hpp b/src/common/interface/GraphObject.hpp
index 57241b20..bed058f0 100644
--- a/src/common/interface/GraphObject.hpp
+++ b/src/common/interface/GraphObject.hpp
@@ -24,6 +24,7 @@
#include <raul/PathTable.hpp>
#include <raul/Atom.hpp>
#include <raul/SharedPtr.hpp>
+#include <raul/WeakPtr.hpp>
using Raul::PathTable;
@@ -43,12 +44,15 @@ public:
typedef std::map<std::string, Raul::Atom> Variables;
typedef PathTable< SharedPtr<GraphObject> >::const_iterator const_iterator;
-
+
virtual const Raul::Path path() const = 0;
virtual const std::string name() const = 0;
virtual const Variables& variables() const = 0;
virtual bool polyphonic() const = 0;
+ // FIXME: return WeakPtr, and stupid name
+ virtual GraphObject* graph_parent() const = 0;
+
virtual const_iterator children_begin() const = 0;
virtual const_iterator children_end() const = 0;
virtual SharedPtr<GraphObject> find_child(const string& name) const = 0;