NAME
tlp::Graph -
Interface for a graph.
SYNOPSIS
#include <Graph.h>
Inherits tlp::Observable, and tlp::ObservableGraph.
Public Member Functions
Graph ()
virtual ~Graph ()
virtual void clear ()=0
virtual Graph * addSubGraph (BooleanProperty *selection=0)=0
virtual void delSubGraph (Graph *)=0
virtual void delAllSubGraphs (Graph *)=0
virtual Graph * getSuperGraph () const =0
Graph * getFather () const
virtual Graph * getRoot () const =0
virtual void setSuperGraph (Graph *)=0
void setFather (Graph *sg)
virtual Iterator< Graph * > * getSubGraphs () const =0
virtual node addNode ()=0
virtual void addNode (const node)=0
virtual void delNode (const node)=0
virtual void delAllNode (const node)=0
virtual edge addEdge (const node, const node)=0
virtual void addEdge (const edge)=0
virtual void delEdge (const edge)=0
virtual void delAllEdge (const edge)=0
virtual void setEdgeOrder (const node, const std::vector< edge > &)=0
virtual void swapEdgeOrder (const node, const edge, const edge)=0
virtual void reverse (const edge)=0
virtual node getOneNode () const =0
Return an existing node of the graph.
virtual Iterator< node > * getNodes () const =0
Return an iterator on the nodes.
virtual node getInNode (const node, unsigned int) const =0
Return the ith successor of a node.
virtual Iterator< node > * getInNodes (const node) const =0
Return an iterator on the predecessors of a node.
virtual node getOutNode (const node, unsigned int) const =0
Return the ith predecessor of a node.
virtual Iterator< node > * getOutNodes (const node) const =0
Return an iterator on the successors of a node.
virtual Iterator< node > * getInOutNodes (const node) const =0
Return an iterator on the neighbours of a node.
virtual Graph * getNodeMetaInfo (const node) const =0
Returns the underlying graph of a meta node.
virtual Iterator< edge > * getEdges () const =0
Return an iterator on the edges.
virtual edge getOneEdge () const =0
Return an existing edge of the graph.
virtual Iterator< edge > * getOutEdges (const node) const =0
Return an iterator on the out-edges of a node.
virtual Iterator< edge > * getInOutEdges (const node) const =0
Return an iterator on the in-out-edges of a node.
virtual Iterator< edge > * getInEdges (const node) const =0
Return an iterator on the in--edges of a node.
virtual Iterator< edge > * getEdgeMetaInfo (const edge) const =0
Return an iterator on the underlying edges of a meta edge.
int getId () const
Return the graphs id, this id is unique.
virtual unsigned int numberOfNodes () const =0
Return the number of nodes in the graph.
virtual unsigned int numberOfEdges () const =0
Return the number of edges in the graph.
virtual unsigned int deg (const node) const =0
Return degree of a node.
virtual unsigned int indeg (const node) const =0
Return indegree of a node.
virtual unsigned int outdeg (const node) const =0
Return outdegree of a node.
virtual node source (const edge) const =0
Return the source of the edge.
virtual node target (const edge) const =0
Return the target of the edge.
virtual node opposite (const edge, const node) const =0
Return the opposite node for s in the edge e.
virtual bool isElement (const node) const =0
Return true if the node is element of the graph.
virtual bool isMetaNode (const node) const =0
Return true if the node is a meta node.
virtual bool isElement (const edge) const =0
Return true if the edge is element of the graph.
virtual bool isMetaEdge (const edge) const =0
Return true if the edge is a meta edge.
virtual edge existEdge (const node, const node) const =0
virtual DataSet & getAttributes ()=0
Return graph attributes.
template<typename ATTRIBUTETYPE > bool getAttribute (const std::string
&name, ATTRIBUTETYPE &value)
template<typename ATTRIBUTETYPE > ATTRIBUTETYPE getAttribute (const
std::string &name)
deprecated version of the previous method
template<typename ATTRIBUTETYPE > void setAttribute (const std::string
&name, const ATTRIBUTETYPE &value)
Set an attribute of the graph.
void removeAttribute (const std::string &name)
remove an existing attribute
bool attributeExist (const std::string &name)
return if the attribute exist
virtual void addLocalProperty (const std::string &name,
PropertyInterface *prop)=0
template<typename Proxytype > Proxytype * getLocalProperty (const
std::string &name)
template<typename Proxytype > bool computeProperty (const std::string
&algorithm, Proxytype result, std::string &msg, PluginProgress
*progress=0, DataSet *data=0)
template<typename Proxytype > Proxytype * getProperty (const
std::string &name)
virtual PropertyInterface * getProperty (const std::string &name)=0
virtual bool existProperty (const std::string &name)=0
virtual bool existLocalProperty (const std::string &name)=0
virtual void delLocalProperty (const std::string &name)=0
virtual Iterator< std::string > * getLocalProperties ()=0
virtual Iterator< std::string > * getInheritedProperties ()=0
virtual Iterator< std::string > * getProperties ()=0
virtual void push ()=0
virtual void pop ()=0
virtual void unpop ()=0
virtual bool canPop ()=0
virtual bool canUnpop ()=0
Protected Member Functions
virtual node restoreNode (node)=0
virtual edge restoreEdge (edge, node source, node target)=0
virtual void removeNode (const node)=0
virtual void removeEdge (const edge, const node=node())=0
virtual void removeSubGraph (Graph *)=0
virtual void clearSubGraphs ()=0
virtual void restoreSubGraph (Graph *, bool restoreSubGraphs=false)=0
virtual void setSubGraphToKeep (Graph *)=0
Friends
class GraphUpdatesRecorder
Detailed Description
Interface for a graph.
The class Graph is the interface of a Graph in the Tulip Library.
Member Function Documentation
virtual PropertyInterface* tlp::Graph::getProperty (const std::string &
name) [pure virtual] Returns a pointer on an existing property. If the
property does not exist return NULL. In DEBUG the existence of a
property is checked using an assertion.
Friends And Related Function Documentation
friend class GraphUpdatesRecorder [friend]
Author
Generated automatically by Doxygen for Tulip Graph Library from the
source code.