#include <SubGraph.hh>
|
virtual const ConstraintVec & | getConstraints (void) const |
|
virtual Edge_iterator | getEdgesBegin (const IndexType &i, const IndexType &j) const |
|
virtual Edge_iterator | getEdgesEnd (const IndexType &i, const IndexType &j) const |
|
virtual std::string | getNodeLabel (const IndexType &i) const |
|
virtual size_t | getNodeNumber (void) const |
|
virtual OutEdge_iterator | getOutEdgesBegin (const IndexType &i) const |
|
virtual OutEdge_iterator | getOutEdgesEnd (const IndexType &i) const |
|
virtual const Graph_Interface & | getPatternGraph (void) const |
|
virtual const std::string * | getUsedWildcard (void) const |
|
virtual bool | operator!= (const Pattern_Interface &toCompare) const |
|
virtual bool | operator!= (const Graph_Interface &toCompare) const |
|
virtual bool | operator== (const Pattern_Interface &toCompare) const |
|
virtual bool | operator== (const Graph_Interface &toCompare) const |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const NodeList &nodeList) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const CompLabel &compLabel, const size_t subGraphLabel) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const NodeList &nodeList, const ConstraintVec &matchConstraints) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const CompLabel &compLabel, const size_t subGraphLabel, const ConstraintVec &matchConstraints) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const NodeList &nodeList, const std::string &wildcardToUse) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const CompLabel &compLabel, const size_t subGraphLabel, const std::string &wildcardToUse) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const NodeList &nodeList, const ConstraintVec &matchConstraints, const std::string &wildcardToUse) |
|
| SubGraphPattern (const Graph_Interface &fullGraph, const CompLabel &compLabel, const size_t subGraphLabel, const ConstraintVec &matchConstraints, const std::string &wildcardToUse) |
|
virtual | ~SubGraphPattern () |
| Destruction of the subgraph. More...
|
|
A Pattern that represents only a subset of the nodes of a graph and all edges between these nodes by wrapping the source graph and some additional constraints
- Author
- Martin Mann - 2010 - http://www.bioinf.uni-freiburg.de/~mmann/
Definition at line 192 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 |
sgm::SubGraphPattern::SubGraphPattern |
( |
const Graph_Interface & |
fullGraph, |
|
|
const CompLabel & |
compLabel, |
|
|
const size_t |
subGraphLabel |
|
) |
| |
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 |
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 |
matchConstraints | the additional matching constraints to be fulfilled for this pattern, NOTE: indices have to correspond to the initial fullGraph instance and to be compatible with the subgraph definition ! |
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 |
matchConstraints | the additional matching constraints to be fulfilled for this pattern, NOTE: indices have to correspond to the initial fullGraph instance and to be compatible with the subgraph definition ! |
sgm::SubGraphPattern::SubGraphPattern |
( |
const Graph_Interface & |
fullGraph, |
|
|
const NodeList & |
nodeList, |
|
|
const std::string & |
wildcardToUse |
|
) |
| |
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 |
wildcardToUse | the wildcard to use for matching |
sgm::SubGraphPattern::SubGraphPattern |
( |
const Graph_Interface & |
fullGraph, |
|
|
const CompLabel & |
compLabel, |
|
|
const size_t |
subGraphLabel, |
|
|
const std::string & |
wildcardToUse |
|
) |
| |
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 |
wildcardToUse | the wildcard to use for matching |
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 |
matchConstraints | the additional matching constraints to be fulfilled for this pattern, NOTE: indices have to correspond to the initial fullGraph instance and to be compatible with the subgraph definition ! |
wildcardToUse | the wildcard to use for matching |
sgm::SubGraphPattern::SubGraphPattern |
( |
const Graph_Interface & |
fullGraph, |
|
|
const CompLabel & |
compLabel, |
|
|
const size_t |
subGraphLabel, |
|
|
const ConstraintVec & |
matchConstraints, |
|
|
const std::string & |
wildcardToUse |
|
) |
| |
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 |
matchConstraints | the additional matching constraints to be fulfilled for this pattern, NOTE: indices have to correspond to the initial fullGraph instance and to be compatible with the subgraph definition ! |
wildcardToUse | the wildcard to use for matching |
virtual sgm::SubGraphPattern::~SubGraphPattern |
( |
| ) |
|
|
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
Does a deep copy of the given constraint vector
- Parameters
-
toCopy | the ConstraintVec instance to copy |
- Returns
- the deep copy of the given vector of MatchConstraints
virtual const ConstraintVec& sgm::Pattern::getConstraints |
( |
void |
| ) |
const |
|
virtualinherited |
Access to the matching constraints that have to be fulfilled by a match of this pattern graph
- Returns
- the matching constraints to validate
Implements sgm::Pattern_Interface.
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 |
|
virtualinherited |
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 |
|
virtualinherited |
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.
virtual const Graph_Interface& sgm::Pattern::getPatternGraph |
( |
void |
| ) |
const |
|
virtualinherited |
virtual const std::string* sgm::Pattern::getUsedWildcard |
( |
void |
| ) |
const |
|
virtualinherited |
Access to the wildcard to be used when matching this pattern onto some other graph.
- Returns
- the wildcard string to be used for edge and node labels, or NULL if no wildcard should be applied
Implements sgm::Pattern_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::Pattern_Interface::operator!= |
( |
const Pattern_Interface & |
toCompare | ) |
const |
|
virtualinherited |
Inequality comparison
- Parameters
-
- Returns
- true if both describe the different patterns
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::Pattern_Interface::operator== |
( |
const Pattern_Interface & |
toCompare | ) |
const |
|
virtualinherited |
Equality comparison
- Parameters
-
- Returns
- true if both describe the same pattern
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
static void sgm::SubGraphPattern::remapConstraints |
( |
const ConstraintVec & |
originalConstraints, |
|
|
const Match & |
full2sub, |
|
|
ConstraintVec & |
remappedConstraints |
|
) |
| |
|
staticprotected |
Does the reindexing of the nodes within the given match constraints onto the new indices within the subgraph, where the index mapping is given by full2sub.
- Parameters
-
originalConstraints | the matching constraints to be remapped |
full2sub | the mapping of the indices used in the given constraints onto nodes within the subgraph. |
remappedConstraints | the container that will hold the remapped matching constraints |
Match sgm::SubGraph::full2sub |
|
protectedinherited |
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 |
|
staticprotectedinherited |
const std::string* sgm::Pattern::usedWildcard |
|
protectedinherited |
The documentation for this class was generated from the following file: