template<typename GR, typename NF, typename EF>
class lemon::SubGraph< GR, NF, EF >
SubGraph can be used for hiding nodes and edges in a graph. A bool
node map and a bool
edge map must be specified, which define the filters for nodes and edges. Only the nodes and edges with true
filter value are shown in the subgraph. The edges that are incident to hidden nodes are also filtered out. This adaptor conforms to the Graph concept.
The adapted graph can also be modified through this adaptor by adding or removing nodes or edges, unless the GR
template parameter is set to be const
.
This class provides only linear time counting for nodes, edges and arcs.
- Template Parameters
-
GR | The type of the adapted graph. It must conform to the Graph concept. It can also be specified to be const . |
NF | The type of the node filter map. It must be a bool (or convertible) node map of the adapted graph. The default type is GR::NodeMap<bool>. |
EF | The type of the edge filter map. It must be a bool (or convertible) edge map of the adapted graph. The default type is GR::EdgeMap<bool>. |
- Note
- The
Node
, Edge
and Arc
types of this adaptor and the adapted graph are convertible to each other.
- See Also
- FilterNodes
-
FilterEdges
|
| SubGraph (GR &graph, NF &node_filter, EF &edge_filter) |
| Constructor.
|
|
void | status (const Node &n, bool v) const |
| Sets the status of the given node.
|
|
void | status (const Edge &e, bool v) const |
| Sets the status of the given edge.
|
|
bool | status (const Node &n) const |
| Returns the status of the given node.
|
|
bool | status (const Edge &e) const |
| Returns the status of the given edge.
|
|
void | disable (const Node &n) const |
| Disables the given node.
|
|
void | disable (const Edge &e) const |
| Disables the given edge.
|
|
void | enable (const Node &n) const |
| Enables the given node.
|
|
void | enable (const Edge &e) const |
| Enables the given edge.
|
|