GraphsClasses
Functions
- tlp::Graph::Graph ()
- virtual tlp::Graph::~Graph ()
- virtual void tlp::Graph::clear ()=0
- virtual Graph * tlp::Graph::addSubGraph (BooleanProperty *selection=0, unsigned int id=0)=0
- 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
- Graph * tlp::Graph::getFather () const
- virtual Graph * tlp::Graph::getRoot () const =0
- virtual void tlp::Graph::setSuperGraph (Graph *)=0
- void tlp::Graph::setFather (Graph *sg)
- virtual Iterator< Graph * > * tlp::Graph::getSubGraphs () const =0
- virtual bool tlp::Graph::isSubGraph (Graph *sg) const =0
- virtual bool tlp::Graph::isDescendantGraph (Graph *sg) const =0
- virtual Graph * tlp::Graph::getSubGraph (unsigned int id) const =0
- virtual Graph * tlp::Graph::getDescendantGraph (unsigned int id) const =0
- virtual node tlp::Graph::addNode ()=0
- virtual void tlp::Graph::addNode (const node)=0
- virtual void tlp::Graph::delNode (const node)=0
- virtual void tlp::Graph::delAllNode (const node)=0
- virtual edge tlp::Graph::addEdge (const node, const node)=0
- virtual void tlp::Graph::addEdge (const edge)=0
- virtual void tlp::Graph::delEdge (const edge)=0
- virtual void tlp::Graph::delAllEdge (const edge)=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
- Set the source of an existing edge.
- virtual void tlp::Graph::setTarget (const edge, const node)=0
- Set the target of an existing edge.
- virtual void tlp::Graph::setEnds (const edge, const node source, const node target)=0
- Set 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 node tlp::Graph::getOneNode () const =0
- Return an existing node of the graph.
- virtual Iterator< node > * tlp::Graph::getNodes () const =0
- Return an iterator on the nodes.
- virtual node tlp::Graph::getInNode (const node, unsigned int) const =0
- Return the ith successor of a node.
- virtual Iterator< node > * tlp::Graph::getInNodes (const node) const =0
- Return an iterator on the predecessors of a node.
- virtual node tlp::Graph::getOutNode (const node, unsigned int) const =0
- Return the ith predecessor of a node.
- virtual Iterator< node > * tlp::Graph::getOutNodes (const node) const =0
- Return an iterator on the successors of a node.
- virtual Iterator< node > * tlp::Graph::getInOutNodes (const node) const =0
- Return 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
- Return an iterator on the edges.
- virtual edge tlp::Graph::getOneEdge () const =0
- Return an existing edge of the graph.
- virtual Iterator< edge > * tlp::Graph::getOutEdges (const node) const =0
- Return an iterator on the out-edges of a node.
- virtual Iterator< edge > * tlp::Graph::getInOutEdges (const node) const =0
- Return an iterator on the in-out-edges of a node.
- virtual Iterator< edge > * tlp::Graph::getInEdges (const node) const =0
- Return an iterator on the in--edges of a node.
- virtual Iterator< edge > * tlp::Graph::getEdgeMetaInfo (const edge) const =0
- Return an iterator on the underlying edges of a meta edge.
- unsigned int tlp::Graph::getId () const
- Return the graph's id, this id is unique.
- virtual unsigned int tlp::Graph::numberOfNodes () const =0
- Return the number of nodes in the graph.
- virtual unsigned int tlp::Graph::numberOfEdges () const =0
- Return the number of edges in the graph.
- virtual unsigned int tlp::Graph::deg (const node) const =0
- Return degree of a node.
- virtual unsigned int tlp::Graph::indeg (const node) const =0
- Return indegree of a node.
- virtual unsigned int tlp::Graph::outdeg (const node) const =0
- Return outdegree of a node.
- virtual node tlp::Graph::source (const edge) const =0
- Return the source of the edge.
- virtual node tlp::Graph::target (const edge) const =0
- Return 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
- Return the opposite node for s in the edge e.
- virtual bool tlp::Graph::isElement (const node) const =0
- Return true if the node is element of the graph.
- virtual bool tlp::Graph::isMetaNode (const node) const =0
- Return true if the node is a meta node.
- virtual bool tlp::Graph::isElement (const edge) const =0
- Return true if the edge is element of the graph.
- virtual bool tlp::Graph::isMetaEdge (const edge) const =0
- Return 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
- Return graph attributes.
- template<typename ATTRIBUTETYPE > bool tlp::Graph::getAttribute (const std::string &name, ATTRIBUTETYPE &value) const
- template<typename ATTRIBUTETYPE > ATTRIBUTETYPE tlp::Graph::getAttribute (const std::string &name) const
- deprecated version of the previous method
- template<typename ATTRIBUTETYPE > void tlp::Graph::setAttribute (const std::string &name, const ATTRIBUTETYPE &value)
- Set an attribute of the graph.
- void tlp::Graph::setAttribute (const std::string &name, const DataType *value)
- set attritute from an untyped value
- void tlp::Graph::removeAttribute (const std::string &name)
- remove an existing attribute
- bool tlp::Graph::attributeExist (const std::string &name)
- return 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)
- template<typename PropertyType > bool tlp::Graph::computeProperty (const std::string &algorithm, PropertyType *result, std::string &msg, PluginProgress *progress=0, DataSet *data=0)
- template<typename PropertyType > PropertyType * tlp::Graph::getProperty (const std::string &name)
- virtual bool tlp::Graph::existProperty (const std::string &name)=0
- virtual bool tlp::Graph::existLocalProperty (const std::string &name)=0
- virtual void tlp::Graph::delLocalProperty (const std::string &name)=0
- virtual Iterator< std::string > * tlp::Graph::getLocalProperties ()=0
- virtual Iterator< std::string > * tlp::Graph::getInheritedProperties ()=0
- virtual Iterator< std::string > * tlp::Graph::getProperties ()=0
- virtual Iterator
< PropertyInterface * > * tlp::Graph::getLocalObjectProperties ()=0
- virtual Iterator
< PropertyInterface * > * tlp::Graph::getInheritedObjectProperties ()=0
- virtual Iterator
< PropertyInterface * > * tlp::Graph::getObjectProperties ()=0
- virtual void tlp::Graph::push (bool unpopAllowed=true)=0
- virtual void tlp::Graph::pop (bool unpopAllowed=true)=0
- virtual bool tlp::Graph::nextPopKeepPropertyUpdates (PropertyInterface *prop)=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 edge tlp::Graph::restoreEdge (edge, node source, node target)=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 *, bool notify=false)=0
- virtual void tlp::Graph::clearSubGraphs ()=0
- virtual void tlp::Graph::restoreSubGraph (Graph *, bool undoOrRedo=false)=0
- virtual void tlp::Graph::setSubGraphToKeep (Graph *)=0
- void tlp::Graph::notifyDestroy ()
- void tlp::Graph::notifyAddSubGraph (Graph *)
- virtual tlp::ObservableGraph::~ObservableGraph ()
- void tlp::ObservableGraph::addGraphObserver (GraphObserver *) const
- unsigned int tlp::ObservableGraph::countGraphObservers ()
- void tlp::ObservableGraph::removeGraphObserver (GraphObserver *) const
- void tlp::ObservableGraph::removeGraphObservers ()
- void tlp::ObservableGraph::notifyAddNode (Graph *, const node n)
- void tlp::ObservableGraph::notifyAddEdge (Graph *, const edge e)
- void tlp::ObservableGraph::notifyBeforeSetEnds (Graph *, const edge e)
- void tlp::ObservableGraph::notifyAfterSetEnds (Graph *, const edge e)
- void tlp::ObservableGraph::notifyDelNode (Graph *, const node n)
- void tlp::ObservableGraph::notifyDelEdge (Graph *, const edge e)
- void tlp::ObservableGraph::notifyReverseEdge (Graph *, const edge e)
- void tlp::ObservableGraph::notifyAddSubGraph (Graph *, Graph *)
- void tlp::ObservableGraph::notifyDelSubGraph (Graph *, Graph *)
- void tlp::ObservableGraph::notifyAddLocalProperty (Graph *, const std::string &)
- void tlp::ObservableGraph::notifyDelLocalProperty (Graph *, const std::string &)
- void tlp::ObservableGraph::notifyBeforeSetAttribute (Graph *, const std::string &)
- void tlp::ObservableGraph::notifyAfterSetAttribute (Graph *, const std::string &)
- void tlp::ObservableGraph::notifyRemoveAttribute (Graph *, const std::string &)
- void tlp::ObservableGraph::notifyDestroy (Graph *)
- void tlp::ObservableGraph::removeOnlyGraphObserver (GraphObserver *) const
Variables
Friends
Detailed Description
This file is part of Tulip (www.tulip-software.org)
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.
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.
void tlp::ObservableGraph::addGraphObserver |
( |
GraphObserver * |
|
) |
const [inherited] |
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::canPopThenUnpop |
( |
|
) |
[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 | |
|
) |
| | [inline, 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).
unsigned int tlp::ObservableGraph::countGraphObservers |
( |
|
) |
[inline, inherited] |
Returns the number of observers
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] |
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 [inline, inherited] |
deprecated version of the previous method
template<typename ATTRIBUTETYPE >
bool tlp::Graph::getAttribute |
( |
const std::string & |
name, |
|
|
ATTRIBUTETYPE & |
value | |
|
) |
| | const [inline, 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] |
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] |
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 |
) |
[inline, 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 |
) |
[inline, 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, |
|
|
Graph * |
parentSubGraph = NULL | |
|
) |
| | [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. If the parentSubGraph argument is not null, it will be the parent of the induced sub graph instead of this
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] |
virtual bool tlp::Graph::isMetaNode |
( |
const |
node |
) |
const [pure virtual, inherited] |
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::ObservableGraph::notifyAddEdge |
( |
Graph * |
, |
|
|
const edge |
e | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyAddLocalProperty |
( |
Graph * |
, |
|
|
const std::string & |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyAddNode |
( |
Graph * |
, |
|
|
const node |
n | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyAddSubGraph |
( |
Graph * |
, |
|
|
Graph * |
| |
|
) |
| | [protected, inherited] |
void tlp::Graph::notifyAddSubGraph |
( |
Graph * |
|
) |
[protected, inherited] |
void tlp::ObservableGraph::notifyAfterSetAttribute |
( |
Graph * |
, |
|
|
const std::string & |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyAfterSetEnds |
( |
Graph * |
, |
|
|
const edge |
e | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyBeforeSetAttribute |
( |
Graph * |
, |
|
|
const std::string & |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyBeforeSetEnds |
( |
Graph * |
, |
|
|
const edge |
e | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyDelEdge |
( |
Graph * |
, |
|
|
const edge |
e | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyDelLocalProperty |
( |
Graph * |
, |
|
|
const std::string & |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyDelNode |
( |
Graph * |
, |
|
|
const node |
n | |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyDelSubGraph |
( |
Graph * |
, |
|
|
Graph * |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyDestroy |
( |
Graph * |
|
) |
[protected, inherited] |
void tlp::Graph::notifyDestroy |
( |
|
) |
[protected, inherited] |
Notify all the observers that the object will be destroyed. Needs to be called into the destructor of the observable.
Reimplemented from tlp::Observable.
void tlp::ObservableGraph::notifyRemoveAttribute |
( |
Graph * |
, |
|
|
const std::string & |
| |
|
) |
| | [protected, inherited] |
void tlp::ObservableGraph::notifyReverseEdge |
( |
Graph * |
, |
|
|
const edge |
e | |
|
) |
| | [protected, inherited] |
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, |
|
|
bool |
updateProperties = true | |
|
) |
| | [inherited] |
Method to open a metanode and replace all edges between that meta node and other nodes in the graph.
- Parameters:
-
| updateProperties | If set to true, open meta node will update inner nodes layout, color, size, etc 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 |
) |
[protected, pure virtual, inherited] |
void tlp::ObservableGraph::removeGraphObserver |
( |
GraphObserver * |
item |
) |
const [inline, inherited] |
void tlp::ObservableGraph::removeGraphObservers |
( |
|
) |
[inherited] |
virtual void tlp::Graph::removeNode |
( |
const |
node |
) |
[protected, pure virtual, inherited] |
void tlp::ObservableGraph::removeOnlyGraphObserver |
( |
GraphObserver * |
item |
) |
const [inline, protected, inherited] |
virtual void tlp::Graph::removeSubGraph |
( |
Graph * |
, |
|
|
bool |
notify = false | |
|
) |
| | [protected, pure virtual, inherited] |
virtual void tlp::Graph::reserveEdges |
( |
unsigned int |
nbEdges |
) |
[pure virtual, inherited] |
virtual void tlp::Graph::reserveNodes |
( |
unsigned int |
nbNodes |
) |
[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 | |
|
) |
| | [inline, 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.
virtual void tlp::Graph::setEnds |
( |
const |
edge, |
|
|
const node |
source, |
|
|
const node |
target | |
|
) |
| | [pure virtual, inherited] |
Set both the source and target of an existing edge.
void tlp::Graph::setFather |
( |
Graph * |
sg |
) |
[inline, inherited] |
virtual void tlp::Graph::setSource |
( |
const |
edge, |
|
|
const |
node | |
|
) |
| | [pure virtual, inherited] |
Set the source of an existing edge.
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 void tlp::Graph::setTarget |
( |
const |
edge, |
|
|
const |
node | |
|
) |
| | [pure virtual, inherited] |
Set the target of an existing edge.
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] |
virtual tlp::ObservableGraph::~ObservableGraph |
( |
|
) |
[inline, virtual, inherited] |
Variable Documentation
Friends
friend class GraphDecorator [friend, inherited] |
friend class GraphUpdatesRecorder [friend, inherited] |
friend class PropertyManager [friend, inherited] |
|