Overview     Modules     Class Hierarchy     Classes     Members  

Graphs

Classes

Functions

Variables


Function Documentation

virtual void tlp::Graph::addEdge const   edge  )  [pure virtual, inherited]
 

Add an existing edge in the graph. this edge is also added in all the super-graph of the graph to maintain the sub-graph relation between graphs. Warning, the edge must be element of the graph hierarchy, thus it must be element of the root graph. Warning : One can't add an existing edge to the root graph

virtual edge tlp::Graph::addEdge const   node,
const   node
[pure virtual, inherited]
 

Add a new edge in the graph and return it. This edge is also added in all the super-graph of the graph to maintain the sub-graph relation between graphs. If the second parameter is true the ordering of edges will be preserved.

virtual void tlp::Graph::addLocalProperty const std::string &  name,
PropertyInterface prop
[pure virtual, inherited]
 

add a property to the graph Be aware that the PropertyInterface will now belong to the graph object; and so it will be deleted automatically. Using of delete on that property will cause a segmentation violation (use delLocalProperty instead).

virtual void tlp::Graph::addNode const   node  )  [pure virtual, inherited]
 

Add an existing node in the graph. this node is also added in all the graph ancestors to maintain the sub_graph relation between graphs. Warning, the node must be element of the graph hierarchy, thus it must be element of the root graph.

virtual node tlp::Graph::addNode  )  [pure virtual, inherited]
 

Add a new node in the graph and return it. This node is also added in all the graph ancestors to maintain the sub_graph relation between graphs.

virtual Graph* tlp::Graph::addSubGraph BooleanProperty selection = 0,
unsigned int  id = 0
[pure virtual, inherited]
 

Creates and returns a new SubGraph of the graph The elements of the new SubGraph are those selected in the selection if there is no selection an empty SubGraph is return.

bool tlp::Graph::attributeExist const std::string &  name  )  [inline, inherited]
 

return if the attribute exist

virtual bool tlp::Graph::canDeleteProperty Graph g,
PropertyInterface prop
[inline, protected, virtual, inherited]
 

virtual bool tlp::Graph::canPop  )  [pure virtual, inherited]
 

virtual bool tlp::Graph::canUnpop  )  [pure virtual, inherited]
 

virtual void tlp::Graph::clear  )  [pure virtual, inherited]
 

Remove all nodes, edges and subgraphs of the supergraph

virtual void tlp::Graph::clearSubGraphs  )  [protected, pure virtual, inherited]
 

template<typename PropertyType>
bool tlp::Graph::computeProperty const std::string &  algorithm,
PropertyType *  result,
std::string &  msg,
PluginProgress progress = 0,
DataSet data = 0
[inherited]
 

Computes a property on the current graph, if it is not empty, using an external named algorithm (plug-in). The result is stored in result. Warning: all information in result will be deleted If the function returns false error message are stored in msg. One can give a PluginProgress to the algortihm in order to have feed back or to stop the algorithm during its computation. One can give parameter to the algorithm using the DataSet. In some cases algorithms can use this DataSet in order to give as result external information (not stored in result).

node tlp::Graph::createMetaNode Graph subGraph,
bool  multiEdges = true,
bool  delAllEdge = true
[inherited]
 

Method to close an existing subgraph into a metanode. Edges from nodes in the subgraph to nodes outside the subgraph are replaced with edges from the metanode to the nodes outside the subgraph. Warning: this method will failed when called on the root graph.

Parameters:
subGraph,: an existing subgraph
multiEdges,: indicates if a meta edge will be created for each underlying edge
delAllEdge,: indicates if the underlying edges will be removed from the entire hierarchy

node tlp::Graph::createMetaNode const std::set< node > &  nodeSet,
bool  multiEdges = true,
bool  delAllEdge = true
[inherited]
 

method to close a set of existing nodes into a metanode. Edges from nodes in the set to other nodes are replaced with edges from the metanode to the other nodes. Warning: this method will failed when called on the root graph.

Parameters:
nodeSet,: a set of existing nodes
multiEdges,: indicates if a meta edge will be created for each underlying edge
delAllEdge,: indicates if the underlying edges will be removed from the entire hierarchy

void tlp::Graph::createMetaNodes Iterator< Graph * > *  itS,
Graph quotientGraph,
std::vector< node > &  metaNodes
[inherited]
 

method to populate a quotient graph with one meta node for each iterated graph

Parameters:
itS,: an Graph iterator, (typically a subgraph iterator)
quotientGraph,: the graph containing the meta nodes
metaNodes,: will contains all the added meta nodes after the call

virtual unsigned int tlp::Graph::deg const   node  )  const [pure virtual, inherited]
 

Return degree of a node.

virtual void tlp::Graph::delAllEdge const   edge  )  [pure virtual, inherited]
 

Delete an edge in all the hierarchy of graphs. The ordering of edges around the node is preserved.

virtual void tlp::Graph::delAllNode const   node  )  [pure virtual, inherited]
 

Delete a node in all the hierarchy of graphs.

virtual void tlp::Graph::delAllSubGraphs Graph  )  [pure virtual, inherited]
 

Del the SubGraph of the graph and all its SubGraphs.

virtual void tlp::Graph::delEdge const   edge  )  [pure virtual, inherited]
 

Delete an edge in the graph. this edge is also removed in all the sub-graph of the graph to maintain the sub-graph relation between graphs. The ordering of edges is preserved.

virtual void tlp::Graph::delLocalProperty const std::string &  name  )  [pure virtual, inherited]
 

Remove a property from the graph

virtual void tlp::Graph::delNode const   node  )  [pure virtual, inherited]
 

Delete a node in the graph. this node is also removed in all the sub-graph of the graph to maintain the sub-graph relation between graphs. Warning : One can't add an existing node to the root graph

virtual void tlp::Graph::delSubGraph Graph  )  [pure virtual, inherited]
 

Delete a SubGraph of this graph. The SubGraph's SubGraphs become SubGraphs of the graph.

virtual const std::pair<node, node>& tlp::Graph::ends const   edge  )  const [pure virtual, inherited]
 

Return the source and target of the edge as the first and second of the returned pair

virtual edge tlp::Graph::existEdge const node  source,
const node  target,
bool  directed = true
const [pure virtual, inherited]
 

Returns the edge if it exists an edge between two nodes the 'directed' flag indicates if the direction of the edge (from source to target) must be taken in to account). If no edge is found return an invalid edge.

virtual bool tlp::Graph::existLocalProperty const std::string &  name  )  [pure virtual, inherited]
 

Returns true if a property of that name exists is in the graph

virtual bool tlp::Graph::existProperty const std::string &  name  )  [pure virtual, inherited]
 

Return true if a property of that name exists in the graph or in an ancestor

template<typename ATTRIBUTETYPE>
ATTRIBUTETYPE tlp::Graph::getAttribute const std::string &  name  )  const [inherited]
 

deprecated version of the previous method

template<typename ATTRIBUTETYPE>
bool tlp::Graph::getAttribute const std::string &  name,
ATTRIBUTETYPE &  value
const [inherited]
 

Get an attribute of the graph; returns true if a value was found false if not

const DataSet& tlp::Graph::getAttributes  )  const [inline, inherited]
 

Return graph attributes.

virtual Graph* tlp::Graph::getDescendantGraph unsigned int  id  )  const [pure virtual, inherited]
 

Returns a pointer of the descendant with the corresponding id or NULL if there is no descendant with that id

virtual Iterator<edge>* tlp::Graph::getEdgeMetaInfo const   edge  )  const [pure virtual, inherited]
 

Return an iterator on the underlying edges of a meta edge.

virtual Iterator<edge>* tlp::Graph::getEdges  )  const [pure virtual, inherited]
 

Return an iterator on the edges.

Graph* tlp::Graph::getFather  )  const [inline, inherited]
 

Deprecated function, use getSuperGraph() instead.

unsigned int tlp::Graph::getId  )  const [inline, inherited]
 

Return the graph's id, this id is unique.

virtual Iterator<edge>* tlp::Graph::getInEdges const   node  )  const [pure virtual, inherited]
 

Return an iterator on the in--edges of a node.

virtual Iterator<PropertyInterface*>* tlp::Graph::getInheritedObjectProperties  )  [pure virtual, inherited]
 

Returns an iterator on the inherited properties

virtual Iterator<std::string>* tlp::Graph::getInheritedProperties  )  [pure virtual, inherited]
 

Returns an iterator on the names of the inherited properties

virtual node tlp::Graph::getInNode const   node,
unsigned  int
const [pure virtual, inherited]
 

Return the ith successor of a node.

virtual Iterator<node>* tlp::Graph::getInNodes const   node  )  const [pure virtual, inherited]
 

Return an iterator on the predecessors of a node.

virtual Iterator<edge>* tlp::Graph::getInOutEdges const   node  )  const [pure virtual, inherited]
 

Return an iterator on the in-out-edges of a node.

virtual Iterator<node>* tlp::Graph::getInOutNodes const   node  )  const [pure virtual, inherited]
 

Return an iterator on the neighbours of a node.

virtual Iterator<PropertyInterface*>* tlp::Graph::getLocalObjectProperties  )  [pure virtual, inherited]
 

Returns an iterator on the local properties

virtual Iterator<std::string>* tlp::Graph::getLocalProperties  )  [pure virtual, inherited]
 

Returns an iterator on the names of local properties

template<typename PropertyType>
PropertyType* tlp::Graph::getLocalProperty const std::string &  name  )  [inherited]
 

Returns a pointer to a PropertyInterface which is in the pool. The real type of the PropertyInterface is tested with the template parameter. If the PropertyInterface is not in the pool, a new one is created and returned. Using of delete on that property will cause an abort of the program (use delLocalProperty instead).

virtual Graph* tlp::Graph::getNodeMetaInfo const   node  )  const [pure virtual, inherited]
 

Returns the underlying graph of a meta node.

virtual Iterator<node>* tlp::Graph::getNodes  )  const [pure virtual, inherited]
 

Return an iterator on the nodes.

virtual DataSet& tlp::Graph::getNonConstAttributes  )  [protected, pure virtual, inherited]
 

virtual Iterator<PropertyInterface*>* tlp::Graph::getObjectProperties  )  [pure virtual, inherited]
 

Returns an iterator on all the properties

virtual edge tlp::Graph::getOneEdge  )  const [pure virtual, inherited]
 

Return an existing edge of the graph.

virtual node tlp::Graph::getOneNode  )  const [pure virtual, inherited]
 

Return an existing node of the graph.

virtual Iterator<edge>* tlp::Graph::getOutEdges const   node  )  const [pure virtual, inherited]
 

Return an iterator on the out-edges of a node.

virtual node tlp::Graph::getOutNode const   node,
unsigned  int
const [pure virtual, inherited]
 

Return the ith predecessor of a node.

virtual Iterator<node>* tlp::Graph::getOutNodes const   node  )  const [pure virtual, inherited]
 

Return an iterator on the successors of a node.

virtual Iterator<std::string>* tlp::Graph::getProperties  )  [pure virtual, inherited]
 

Returns an iterator on the name of all the properties

template<typename PropertyType>
PropertyType* tlp::Graph::getProperty const std::string &  name  )  [inherited]
 

Returns a pointer to a PropertyInterface which is in the pool or in the pool of an ascendant The real type of the PropertyInterface is tested with the template parameter. If the PropertyInterface is not the pool it creates a new one and return it. Using of delete on that property will cause a segmentation violation (use delLocalProperty instead).

virtual Graph* tlp::Graph::getRoot  )  const [pure virtual, inherited]
 

Returns the root graph of the graph hierarchy

virtual Graph* tlp::Graph::getSubGraph unsigned int  id  )  const [pure virtual, inherited]
 

Returns a pointer on the subgraph with the corresponding id or NULL if there is no subgraph with that id

virtual Iterator<Graph *>* tlp::Graph::getSubGraphs  )  const [pure virtual, inherited]
 

Returns an iterator on all the SubGraphs of the graph

virtual Graph* tlp::Graph::getSuperGraph  )  const [pure virtual, inherited]
 

Returns the parent of the graph, if it has no parent (is the root graph), it returns itself.

tlp::Graph::Graph  )  [inline, inherited]
 

virtual unsigned int tlp::Graph::indeg const   node  )  const [pure virtual, inherited]
 

Return indegree of a node.

Graph* tlp::Graph::inducedSubGraph const std::set< node > &  nodeSet  )  [inherited]
 

Creates and returns a new subgraph of the graph induced by a set of nodes. The subgraph contains all the nodes of the set and all the existing edges between two nodes of the set including self-loops.

virtual bool tlp::Graph::isDescendantGraph Graph sg  )  const [pure virtual, inherited]
 

indicates if the graph argument is a descendant of this graph

virtual bool tlp::Graph::isElement const   edge  )  const [pure virtual, inherited]
 

Return true if the edge is element of the graph.

virtual bool tlp::Graph::isElement const   node  )  const [pure virtual, inherited]
 

Return true if the node is element of the graph.

virtual bool tlp::Graph::isMetaEdge const   edge  )  const [pure virtual, inherited]
 

Return true if the edge is a meta edge.

virtual bool tlp::Graph::isMetaNode const   node  )  const [pure virtual, inherited]
 

Return true if the node is a meta node.

virtual bool tlp::Graph::isSubGraph Graph sg  )  const [pure virtual, inherited]
 

indicates if the graph argument is a direct subgraph

virtual bool tlp::Graph::nextPopKeepPropertyUpdates PropertyInterface prop  )  [pure virtual, inherited]
 

void tlp::Graph::notifyAddSubGraph Graph  )  [protected, inherited]
 

void tlp::Graph::notifyDestroy  )  [protected, inherited]
 

Notify all the observers that the object will be destroyed. Need to be called into the destructor of the observable.

Reimplemented from tlp::Observable.

virtual unsigned int tlp::Graph::numberOfEdges  )  const [pure virtual, inherited]
 

Return the number of edges in the graph.

virtual unsigned int tlp::Graph::numberOfNodes  )  const [pure virtual, inherited]
 

Return the number of nodes in the graph.

void tlp::Graph::openMetaNode node  n  )  [inherited]
 

Method to open a metanode and replace all edges between that meta node and other nodes in the graph. Warning: this method will failed when called on the root graph.

virtual node tlp::Graph::opposite const   edge,
const   node
const [pure virtual, inherited]
 

Return the opposite node for s in the edge e.

virtual unsigned int tlp::Graph::outdeg const   node  )  const [pure virtual, inherited]
 

Return outdegree of a node.

virtual void tlp::Graph::pop bool  unpopAllowed = true  )  [pure virtual, inherited]
 

virtual void tlp::Graph::push bool  unpopAllowed = true  )  [pure virtual, inherited]
 

void tlp::Graph::removeAttribute const std::string &  name  )  [inline, inherited]
 

remove an existing attribute

virtual void tlp::Graph::removeEdge const   edge,
const   node = node()
[protected, pure virtual, inherited]
 

virtual void tlp::Graph::removeNode const   node  )  [protected, pure virtual, inherited]
 

virtual void tlp::Graph::removeSubGraph Graph ,
bool  notify = false
[protected, pure virtual, inherited]
 

virtual edge tlp::Graph::restoreEdge edge  ,
node  source,
node  target
[protected, pure virtual, inherited]
 

virtual node tlp::Graph::restoreNode node   )  [protected, pure virtual, inherited]
 

virtual void tlp::Graph::restoreSubGraph Graph ,
bool  undoOrRedo = false
[protected, pure virtual, inherited]
 

virtual void tlp::Graph::reverse const   edge  )  [pure virtual, inherited]
 

Reverse the direction of an edge, the source becomes the target and the target. becomes the source. Warning : The ordering is global to the entire graph hierarchy. Thus, by changing The ordering of a graph you change the ordering of the hierarchy.

void tlp::Graph::setAttribute const std::string &  name,
const DataType value
[inherited]
 

set attritute from an untyped value

template<typename ATTRIBUTETYPE>
void tlp::Graph::setAttribute const std::string &  name,
const ATTRIBUTETYPE &  value
[inherited]
 

Set an attribute of the graph.

virtual void tlp::Graph::setEdgeOrder const   node,
const std::vector< edge > & 
[pure virtual, inherited]
 

Set the order of the edges around a node. This operation ensure that adjacent edges of a node will be odered and consecutive as they are in the vector given in parameter.

void tlp::Graph::setFather Graph sg  )  [inline, inherited]
 

Deprecated function, use setSuperGraph() instead.

virtual void tlp::Graph::setSubGraphToKeep Graph  )  [protected, pure virtual, inherited]
 

virtual void tlp::Graph::setSuperGraph Graph  )  [pure virtual, inherited]
 

Set the parent of a graph (use very carefully) Standard user should never use this function.

virtual node tlp::Graph::source const   edge  )  const [pure virtual, inherited]
 

Return the source of the edge.

virtual void tlp::Graph::swapEdgeOrder const   node,
const   edge,
const   edge
[pure virtual, inherited]
 

Swap two edges in the adjacent list of a node.

virtual node tlp::Graph::target const   edge  )  const [pure virtual, inherited]
 

Return the target of the edge.

virtual void tlp::Graph::unpop  )  [pure virtual, inherited]
 

virtual tlp::Graph::~Graph  )  [inline, virtual, inherited]
 


Variable Documentation

std::set<tlp::PropertyInterface*> tlp::Graph::circularCalls [protected, inherited]
 

unsigned int tlp::Graph::id [protected, inherited]
 



Tulip Software by LaBRI Visualization Team    2001 - 2010