21 #include <unordered_map> 23 #include "attributes.h" 29 using EdgePtr = std::shared_ptr<BaseEdge>;
40 friend class TestEdge;
52 Edge(
const std::pair<const int, Edge>& p);
A class for variant data types (tagged union).
Definition: value.h:56
It wraps a std::shared_ptr<BaseNode>.
Definition: node.h:35
const Node & neighbour() const
Gets the target Node.
void setAttr(const int id, const Value &value)
Sets the value at id.
const Value & attr(int id) const
Gets the value of the attribute at id.
An Edge connects a Node to itself or to another Node.
Definition: edge.h:37
int id() const
Gets the edge's id.
const Node & origin() const
Gets the source Node.
Definition: abstractgraph.h:29
A container of labeled values.
Definition: attributes.h:39
Abstract base class for graph plugins.
Definition: abstractgraph.h:54
const Attributes * attrs() const
Gets the edge's attributes.
void addAttr(QString name, Value value)
Appends the attribute name with the value value.