Subgraph of a Graph_Interface for matching.
More...
#include <SubGraph.hh>
Represents only a subset of the nodes of a graph and all edges between
these nodes by wrapping the source graph.
- Author
- Martin Mann (c) 2009 http://www.bioinf.uni-freiburg.de/~mmann/
Definition at line 17 of file SubGraph.hh.
Construction of a subgraph from explicit node list.
- Parameters
-
fullGraph | the original graph this object should be a subgraph of |
nodeList | the subset of node indices present in the subgraph |
Construction of a subgraph from a component labeling.
- Parameters
-
fullGraph | the original graph this object should be a subgraph of |
compLabel | component labeling of the fullGraph |
subGraphLabel | the label in compLabel that defines the nodes of this subgraph |
virtual sgm::SubGraph::~SubGraph |
( |
| ) |
|
|
virtual |
Computes the connected components of a given graph. It stores the connected component ID of each node within the provided container and returns the number of components.
- Parameters
-
g | the graph to check for connected components |
compID | the container to store the component ID information within |
- Returns
- the number of connected components within g
Access to the label of a specified edge
- Parameters
-
i | the index of the first end node of interest |
j | the index of the second end node of interest |
- Returns
- the edge iterator pointing to the first edge between node i and j or to getEdgesEnd(i,j) if no edge exists
Access to the label of a specified edge
- Parameters
-
i | the index of the first end node of interest |
j | the index of the second end node of interest |
- Returns
- the edge iterator pointing to the first edge between node i and j or to getEdgesEnd(i,j) if no edge exists
virtual std::string sgm::SubGraph::getNodeLabel |
( |
const IndexType & |
i | ) |
const |
|
virtual |
Access to the label of a specified node
- Parameters
-
i | the index of the node of interest |
- Returns
- a string representation of the node label
Implements sgm::Graph_Interface.
virtual size_t sgm::SubGraph::getNodeNumber |
( |
void |
| ) |
const |
|
virtual |
Access to the number of nodes of the subgraph
- Returns
- the overall node number
Implements sgm::Graph_Interface.
Access to iteration begin for the edge in the adjacency list of a specified node
- Parameters
-
i | the index of the node of interest |
- Returns
- the iterator to the first edge within the adjacency of i
Implements sgm::Graph_Interface.
Access to iteration end for the edge in the adjacency list of a specified node
- Parameters
-
i | the index of the node of interest |
- Returns
- the iterator the end of the adjacency iteration of i
Implements sgm::Graph_Interface.
static void sgm::Graph_Interface::labelAdjacentNodes |
( |
const Graph_Interface & |
g, |
|
|
const size_t |
curNode, |
|
|
CompLabel & |
compID, |
|
|
const size_t |
label |
|
) |
| |
|
staticprotectedinherited |
Performs a depths-first-search labeling of all accessible nodes starting from curNode within g. The reached nodes are labeled with the given label in the component ID container compID
- Parameters
-
the | graph to screen |
curNode | the node to start the search from |
compID | the container to store the component ID information within |
label | the component ID to be used for all nodes of the connected component reachable from curNode |
virtual bool sgm::Graph_Interface::operator!= |
( |
const Graph_Interface & |
toCompare | ) |
const |
|
virtualinherited |
Interface inequality comparison : NOTE : this function checks whether the interfaces of two graphs are identical or not, i.e. nodes with same index are equal and the order of adjacent edges is the same. This function performs NO GRAPH ISOMORPHISM !!! Thus, slight changes in the node order etc. will result in a non-equal interface!
- Parameters
-
- Returns
- true if both graph interfaces are different
virtual bool sgm::Graph_Interface::operator== |
( |
const Graph_Interface & |
toCompare | ) |
const |
|
virtualinherited |
Interface equality comparison : NOTE : this function checks whether the interfaces of two graphs are identical or not, i.e. nodes with same index are equal and the order of adjacent edges is the same. This function performs NO GRAPH ISOMORPHISM !!! Thus, slight changes in the node order etc. will result in a non-equal interface!
- Parameters
-
- Returns
- true if both graph interfaces are equal
Match sgm::SubGraph::full2sub |
|
protected |
Mapping of global indices of fullGraph to local indices of this subgraph
Definition at line 114 of file SubGraph.hh.
const IndexType sgm::SubGraph::NOT_MAPPED_INDEX |
|
staticprotected |
The documentation for this class was generated from the following file: