Functions |
| tlp::Graph::Graph () |
virtual | tlp::Graph::~Graph () |
bool | tlp::Graph::applyAlgorithm (const std::string &algorithm, std::string &errorMessage, DataSet *dataSet=NULL, PluginProgress *progress=NULL) |
| Applies an algorithm plugin, identified by its name. Algorithm plugins are subclasses of the tlp::Algorithm interface. Parameters are transmitted to the algorithm trough the DataSet. To determine a plugin's parameters, you can either:
|
virtual void | tlp::Graph::clear ()=0 |
| Removes all nodes, edges and sub-graphs of the supergraph.
|
virtual Graph * | tlp::Graph::addSubGraph (BooleanProperty *selection=NULL, unsigned int id=0, std::string name="unnamed")=0 |
| Creates and returns a new sub-graph of this graph.
|
Graph * | tlp::Graph::addSubGraph (std::string name) |
| Creates and returns a new named sub-graph of this graph.
|
Graph * | tlp::Graph::addCloneSubGraph (std::string name="unnamed") |
| Creates and returns a subgraph of this graph that contains all its elements.
|
Graph * | tlp::Graph::inducedSubGraph (const std::set< node > &nodeSet, Graph *parentSubGraph=NULL) |
virtual void | tlp::Graph::delSubGraph (Graph *)=0 |
virtual void | tlp::Graph::delAllSubGraphs (Graph *)=0 |
virtual Graph * | tlp::Graph::getSuperGraph () const =0 |
virtual Graph * | tlp::Graph::getRoot () const =0 |
virtual void | tlp::Graph::setSuperGraph (Graph *)=0 |
virtual Iterator< Graph * > * | tlp::Graph::getSubGraphs () const =0 |
virtual bool | tlp::Graph::isSubGraph (const Graph *sg) const =0 |
virtual bool | tlp::Graph::isDescendantGraph (const Graph *sg) const =0 |
virtual Graph * | tlp::Graph::getSubGraph (unsigned int id) const =0 |
virtual Graph * | tlp::Graph::getSubGraph (const std::string &name) const =0 |
virtual Graph * | tlp::Graph::getDescendantGraph (unsigned int id) const =0 |
virtual Graph * | tlp::Graph::getDescendantGraph (const std::string &name) const =0 |
virtual node | tlp::Graph::addNode ()=0 |
virtual void | tlp::Graph::addNodes (unsigned int nbNodes, std::vector< node > &addedNodes)=0 |
virtual void | tlp::Graph::addNode (const node)=0 |
virtual void | tlp::Graph::addNodes (Iterator< node > *nodes)=0 |
virtual void | tlp::Graph::delNode (const node n, bool deleteInAllGraphs=false)=0 |
virtual void | tlp::Graph::delNodes (Iterator< node > *itN, bool deleteInAllGraphs=false)=0 |
virtual edge | tlp::Graph::addEdge (const node, const node)=0 |
virtual void | tlp::Graph::addEdges (const std::vector< std::pair< node, node > > &edges, std::vector< edge > &addedEdges)=0 |
virtual void | tlp::Graph::addEdge (const edge)=0 |
virtual void | tlp::Graph::addEdges (Iterator< edge > *edges)=0 |
virtual void | tlp::Graph::delEdge (const edge e, bool deleteInAllGraphs=false)=0 |
virtual void | tlp::Graph::delEdges (Iterator< edge > *itE, bool deleteInAllGraphs=false)=0 |
virtual void | tlp::Graph::setEdgeOrder (const node, const std::vector< edge > &)=0 |
virtual void | tlp::Graph::swapEdgeOrder (const node, const edge, const edge)=0 |
virtual void | tlp::Graph::setSource (const edge, const node)=0 |
| Sets the source of an existing edge.
|
virtual void | tlp::Graph::setTarget (const edge, const node)=0 |
| Sets the target of an existing edge.
|
virtual void | tlp::Graph::setEnds (const edge, const node source, const node target)=0 |
| Sets both the source and target of an existing edge.
|
virtual void | tlp::Graph::reverse (const edge)=0 |
virtual void | tlp::Graph::reserveNodes (unsigned int nbNodes)=0 |
virtual void | tlp::Graph::reserveEdges (unsigned int nbEdges)=0 |
virtual tlp::node | tlp::Graph::getSource () const |
| Finds the first node whose input degree equals 0.
|
virtual node | tlp::Graph::getOneNode () const =0 |
| Returns an existing node of the graph.
|
virtual Iterator< node > * | tlp::Graph::getNodes () const =0 |
| Returns an iterator on the nodes.
|
virtual node | tlp::Graph::getInNode (const node, unsigned int) const =0 |
| Returns the ith predecessor of a node.
|
virtual Iterator< node > * | tlp::Graph::getInNodes (const node) const =0 |
| Returns an iterator on the predecessors of a node.
|
virtual node | tlp::Graph::getOutNode (const node, unsigned int) const =0 |
| Returns the ith successor of a node.
|
virtual Iterator< node > * | tlp::Graph::getOutNodes (const node) const =0 |
| Returns an iterator on the successors of a node.
|
virtual Iterator< node > * | tlp::Graph::getInOutNodes (const node) const =0 |
| Returns an iterator on the neighbours of a node.
|
virtual Graph * | tlp::Graph::getNodeMetaInfo (const node) const =0 |
| Returns the underlying graph of a meta node.
|
virtual Iterator< edge > * | tlp::Graph::getEdges () const =0 |
| Returns an iterator on the edges.
|
virtual edge | tlp::Graph::getOneEdge () const =0 |
| Returns an existing edge of the graph.
|
virtual Iterator< edge > * | tlp::Graph::getOutEdges (const node) const =0 |
| Returns an iterator on the outgoing edges of a node.
|
virtual Iterator< edge > * | tlp::Graph::getInOutEdges (const node) const =0 |
| Returns an iterator on the incoming and outgoing edges of a node.
|
virtual Iterator< edge > * | tlp::Graph::getInEdges (const node) const =0 |
| Returns an iterator on the incoming edges of a node.
|
virtual Iterator< edge > * | tlp::Graph::getEdgeMetaInfo (const edge) const =0 |
| Returns an iterator on the underlying edges of a meta edge.
|
unsigned int | tlp::Graph::getId () const |
| Returns the graph's id. This id is unique.
|
virtual unsigned int | tlp::Graph::numberOfNodes () const =0 |
| Returns the number of nodes in the graph.
|
virtual unsigned int | tlp::Graph::numberOfEdges () const =0 |
| Returns the number of edges in the graph.
|
virtual unsigned int | tlp::Graph::deg (const node) const =0 |
| Returns the degree of a node.
|
virtual unsigned int | tlp::Graph::indeg (const node) const =0 |
| Returns the incoming degree of a node.
|
virtual unsigned int | tlp::Graph::outdeg (const node) const =0 |
| Returns the outgoing degree of a node.
|
virtual node | tlp::Graph::source (const edge) const =0 |
| Returns the source of the edge.
|
virtual node | tlp::Graph::target (const edge) const =0 |
| Returns the target of the edge.
|
virtual const std::pair< node,
node > & | tlp::Graph::ends (const edge) const =0 |
virtual node | tlp::Graph::opposite (const edge, const node) const =0 |
| Returns the opposite node for n in the edge e.
|
virtual bool | tlp::Graph::isElement (const node) const =0 |
| Returns true if the node is an element of the graph.
|
virtual bool | tlp::Graph::isMetaNode (const node) const =0 |
| Returns true if the node is a meta node.
|
virtual bool | tlp::Graph::isElement (const edge) const =0 |
| Returns true if the edge is an element of the graph.
|
virtual bool | tlp::Graph::isMetaEdge (const edge) const =0 |
| Returns true if the edge is a meta edge.
|
virtual edge | tlp::Graph::existEdge (const node source, const node target, bool directed=true) const =0 |
const DataSet & | tlp::Graph::getAttributes () const |
| Returns graph attributes.
|
template<typename ATTRIBUTETYPE > |
bool | tlp::Graph::getAttribute (const std::string &name, ATTRIBUTETYPE &value) const |
template<typename ATTRIBUTETYPE > |
_DEPRECATED ATTRIBUTETYPE | tlp::Graph::getAttribute (const std::string &name) const |
| Deprecated version of the previous method.
|
DataType * | tlp::Graph::getAttribute (const std::string &name) const |
| Untyped accessor returning a copy.
|
template<typename ATTRIBUTETYPE > |
void | tlp::Graph::setAttribute (const std::string &name, const ATTRIBUTETYPE &value) |
| Sets an attribute of the graph.
|
void | tlp::Graph::setAttribute (const std::string &name, const DataType *value) |
| Sets attritute from an untyped value.
|
void | tlp::Graph::removeAttribute (const std::string &name) |
| Removes an existing attribute.
|
bool | tlp::Graph::attributeExist (const std::string &name) |
| Returns if the attribute exist.
|
virtual void | tlp::Graph::addLocalProperty (const std::string &name, PropertyInterface *prop)=0 |
template<typename PropertyType > |
PropertyType * | tlp::Graph::getLocalProperty (const std::string &name) |
PropertyInterface * | tlp::Graph::getLocalProperty (const std::string &propertyName, const std::string &propertyType) |
bool | tlp::Graph::applyPropertyAlgorithm (const std::string &algorithm, PropertyInterface *result, std::string &msg, PluginProgress *progress=NULL, DataSet *data=NULL) |
template<typename PropertyType > |
bool | tlp::Graph::computeProperty (const std::string &algorithm, PropertyType *result, std::string &msg, PluginProgress *progress=NULL, DataSet *data=NULL) |
template<typename PropertyType > |
PropertyType * | tlp::Graph::getProperty (const std::string &name) |
virtual PropertyInterface * | tlp::Graph::getProperty (const std::string &name) const =0 |
PropertyInterface * | tlp::Graph::getProperty (const std::string &propertyName, const std::string &propertyType) |
virtual bool | tlp::Graph::existProperty (const std::string &name) const =0 |
virtual bool | tlp::Graph::existLocalProperty (const std::string &name) const =0 |
virtual void | tlp::Graph::delLocalProperty (const std::string &name)=0 |
virtual Iterator< std::string > * | tlp::Graph::getLocalProperties () const =0 |
virtual Iterator< std::string > * | tlp::Graph::getInheritedProperties () const =0 |
virtual Iterator< std::string > * | tlp::Graph::getProperties () const =0 |
virtual Iterator
< PropertyInterface * > * | tlp::Graph::getLocalObjectProperties () const =0 |
virtual Iterator
< PropertyInterface * > * | tlp::Graph::getInheritedObjectProperties () const =0 |
virtual Iterator
< PropertyInterface * > * | tlp::Graph::getObjectProperties () const =0 |
void | tlp::Graph::addGraphObserver (GraphObserver *) const |
unsigned int | tlp::Graph::countGraphObservers () const |
void | tlp::Graph::removeGraphObserver (GraphObserver *) const |
virtual void | tlp::Graph::push (bool unpopAllowed=true, std::vector< PropertyInterface * > *propertiesToPreserveOnPop=NULL)=0 |
virtual void | tlp::Graph::pop (bool unpopAllowed=true)=0 |
virtual void | tlp::Graph::unpop ()=0 |
virtual bool | tlp::Graph::canPop ()=0 |
virtual bool | tlp::Graph::canUnpop ()=0 |
virtual bool | tlp::Graph::canPopThenUnpop ()=0 |
node | tlp::Graph::createMetaNode (const std::set< node > &nodeSet, bool multiEdges=true, bool delAllEdge=true) |
void | tlp::Graph::createMetaNodes (Iterator< Graph * > *itS, Graph *quotientGraph, std::vector< node > &metaNodes) |
node | tlp::Graph::createMetaNode (Graph *subGraph, bool multiEdges=true, bool delAllEdge=true) |
void | tlp::Graph::openMetaNode (node n, bool updateProperties=true) |
virtual DataSet & | tlp::Graph::getNonConstAttributes ()=0 |
virtual node | tlp::Graph::restoreNode (node)=0 |
virtual void | tlp::Graph::restoreNodes (const std::vector< node > &nodes)=0 |
virtual edge | tlp::Graph::restoreEdge (edge, node source, node target)=0 |
virtual void | tlp::Graph::restoreEdges (const std::vector< edge > &edges, const std::vector< std::pair< node, node > > &ends)=0 |
virtual void | tlp::Graph::removeNode (const node)=0 |
virtual void | tlp::Graph::removeEdge (const edge)=0 |
virtual bool | tlp::Graph::canDeleteProperty (Graph *g, PropertyInterface *prop) |
virtual void | tlp::Graph::removeSubGraph (Graph *)=0 |
virtual void | tlp::Graph::clearSubGraphs ()=0 |
virtual void | tlp::Graph::restoreSubGraph (Graph *)=0 |
virtual void | tlp::Graph::setSubGraphToKeep (Graph *)=0 |
void | tlp::Graph::notifyAddNode (const node n) |
void | tlp::Graph::notifyAddNode (Graph *, const node n) |
void | tlp::Graph::notifyAddEdge (const edge e) |
void | tlp::Graph::notifyAddEdge (Graph *, const edge e) |
void | tlp::Graph::notifyBeforeSetEnds (const edge e) |
void | tlp::Graph::notifyBeforeSetEnds (Graph *, const edge e) |
void | tlp::Graph::notifyAfterSetEnds (const edge e) |
void | tlp::Graph::notifyAfterSetEnds (Graph *, const edge e) |
void | tlp::Graph::notifyDelNode (const node n) |
void | tlp::Graph::notifyDelNode (Graph *, const node n) |
void | tlp::Graph::notifyDelEdge (const edge e) |
void | tlp::Graph::notifyDelEdge (Graph *, const edge e) |
void | tlp::Graph::notifyReverseEdge (const edge e) |
void | tlp::Graph::notifyReverseEdge (Graph *, const edge e) |
void | tlp::Graph::notifyAddSubGraph (const Graph *) |
void | tlp::Graph::notifyAddSubGraph (Graph *, const Graph *sg) |
void | tlp::Graph::notifyDelSubGraph (const Graph *) |
void | tlp::Graph::notifyDelSubGraph (Graph *, const Graph *sg) |
void | tlp::Graph::notifyAddLocalProperty (const std::string &) |
void | tlp::Graph::notifyAddLocalProperty (Graph *, const std::string &name) |
void | tlp::Graph::notifyBeforeDelLocalProperty (const std::string &) |
void | tlp::Graph::notifyAfterDelLocalProperty (const std::string &) |
void | tlp::Graph::notifyDelLocalProperty (Graph *, const std::string &name) |
void | tlp::Graph::notifyBeforeSetAttribute (const std::string &) |
void | tlp::Graph::notifyBeforeSetAttribute (Graph *, const std::string &name) |
void | tlp::Graph::notifyAfterSetAttribute (const std::string &) |
void | tlp::Graph::notifyAfterSetAttribute (Graph *, const std::string &name) |
void | tlp::Graph::notifyRemoveAttribute (const std::string &) |
void | tlp::Graph::notifyRemoveAttribute (Graph *, const std::string &name) |
void | tlp::Graph::notifyDestroy () |
| use for old observer tulip compatibility
|
void | tlp::Graph::notifyDestroy (Graph *) |
virtual Graph * | tlp::Graph::getNthSubGraph (unsigned int n) const |
virtual unsigned int | tlp::Graph::numberOfSubGraphs () const =0 |
virtual unsigned int | tlp::Graph::numberOfDescendantGraphs () const =0 |
virtual void | tlp::Graph::setName (const std::string &name)=0 |
virtual std::string | tlp::Graph::getName () const =0 |
| tlp::GraphEvent::GraphEvent (const Graph &g, GraphEventType graphEvtType, unsigned int id, Event::EventType evtType=Event::TLP_MODIFICATION) |
| tlp::GraphEvent::GraphEvent (const Graph &g, GraphEventType graphEvtType, const std::vector< node > &nodes, Event::EventType evtType=Event::TLP_MODIFICATION) |
| tlp::GraphEvent::GraphEvent (const Graph &g, GraphEventType graphEvtType, const std::vector< edge > &edges, Event::EventType evtType=Event::TLP_MODIFICATION) |
| tlp::GraphEvent::GraphEvent (const Graph &g, GraphEventType graphEvtType, const Graph *sg) |
| tlp::GraphEvent::GraphEvent (const Graph &g, GraphEventType graphEvtType, const std::string &str, Event::EventType evtType=Event::TLP_MODIFICATION) |
| tlp::GraphEvent::~GraphEvent () |
Graph * | tlp::GraphEvent::getGraph () const |
node | tlp::GraphEvent::getNode () const |
edge | tlp::GraphEvent::getEdge () const |
const std::vector< node > & | tlp::GraphEvent::getNodes () const |
const std::vector< edge > & | tlp::GraphEvent::getEdges () const |
const Graph * | tlp::GraphEvent::getSubGraph () const |
const std::string & | tlp::GraphEvent::getAttributeName () const |
const std::string & | tlp::GraphEvent::getPropertyName () const |
GraphEventType | tlp::GraphEvent::getType () const |
Authors: David Auber and the Tulip development Team from LaBRI, University of Bordeaux 1 and Inria Bordeaux - Sud Ouest
Tulip is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Tulip is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.