Show / Hide Table of Contents

Interface ISoftMutableGraph<TVertex, TEdge>

Bidirectional graph with soft mutability behavior. Soft mutation means that we can hide some vertices or edges.

Inherited Members
QuikGraph.IVertexSet<TVertex>.IsVerticesEmpty
QuikGraph.IVertexSet<TVertex>.VertexCount
QuikGraph.IVertexSet<TVertex>.Vertices
QuikGraph.IEdgeSet<TVertex, TEdge>.ContainsEdge(TEdge)
QuikGraph.IEdgeSet<TVertex, TEdge>.IsEdgesEmpty
QuikGraph.IEdgeSet<TVertex, TEdge>.EdgeCount
QuikGraph.IEdgeSet<TVertex, TEdge>.Edges
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.IsInEdgesEmpty(TVertex)
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.InDegree(TVertex)
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.InEdges(TVertex)
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.TryGetInEdges(TVertex, System.Collections.Generic.IEnumerable<TEdge>)
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.InEdge(TVertex, System.Int32)
QuikGraph.IBidirectionalIncidenceGraph<TVertex, TEdge>.Degree(TVertex)
QuikGraph.IIncidenceGraph<TVertex, TEdge>.ContainsEdge(TVertex, TVertex)
QuikGraph.IIncidenceGraph<TVertex, TEdge>.TryGetEdge(TVertex, TVertex, TEdge)
QuikGraph.IIncidenceGraph<TVertex, TEdge>.TryGetEdges(TVertex, TVertex, System.Collections.Generic.IEnumerable<TEdge>)
QuikGraph.IImplicitGraph<TVertex, TEdge>.IsOutEdgesEmpty(TVertex)
QuikGraph.IImplicitGraph<TVertex, TEdge>.OutDegree(TVertex)
QuikGraph.IImplicitGraph<TVertex, TEdge>.OutEdges(TVertex)
QuikGraph.IImplicitGraph<TVertex, TEdge>.TryGetOutEdges(TVertex, System.Collections.Generic.IEnumerable<TEdge>)
QuikGraph.IImplicitGraph<TVertex, TEdge>.OutEdge(TVertex, System.Int32)
QuikGraph.IGraph<TVertex, TEdge>.IsDirected
QuikGraph.IGraph<TVertex, TEdge>.AllowParallelEdges
QuikGraph.IImplicitVertexSet<TVertex>.ContainsVertex(TVertex)
Namespace: GraphShape
Assembly: GraphShape.dll
Syntax
public interface ISoftMutableGraph<TVertex, TEdge> : IBidirectionalGraph<TVertex, TEdge>, IVertexAndEdgeListGraph<TVertex, TEdge>, IVertexListGraph<TVertex, TEdge>, IEdgeListGraph<TVertex, TEdge>, IVertexSet<TVertex>, IEdgeSet<TVertex, TEdge>, IBidirectionalIncidenceGraph<TVertex, TEdge>, IIncidenceGraph<TVertex, TEdge>, IImplicitGraph<TVertex, TEdge>, IGraph<TVertex, TEdge>, IImplicitVertexSet<TVertex> where TEdge : IEdge<TVertex>
Type Parameters
Name Description
TVertex

Vertex type.

TEdge

Edge type.

Properties

| Improve this Doc View Source

HiddenEdgeCount

Gets the number of hidden edges.

Declaration
int HiddenEdgeCount { get; }
Property Value
Type Description
System.Int32
| Improve this Doc View Source

HiddenEdges

Gets the set of hidden edges.

Declaration
IEnumerable<TEdge> HiddenEdges { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<TEdge>
| Improve this Doc View Source

HiddenVertexCount

Gets the number of hidden vertices.

Declaration
int HiddenVertexCount { get; }
Property Value
Type Description
System.Int32
| Improve this Doc View Source

HiddenVertices

Gets the set of hidden vertices.

Declaration
IEnumerable<TVertex> HiddenVertices { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<TVertex>

Methods

| Improve this Doc View Source

HiddenEdgeCountOf(TVertex)

Gets the number of hidden edges connected to the given vertex.

Declaration
int HiddenEdgeCountOf(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to check.

Returns
Type Description
System.Int32

Number of hidden edges.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

HiddenEdgesOf(TVertex)

Gets the hidden edges connected to the given vertex.

Declaration
IEnumerable<TEdge> HiddenEdgesOf(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to check.

Returns
Type Description
System.Collections.Generic.IEnumerable<TEdge>

Hidden edges.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

HideEdge(TEdge)

Hides the given edge.

Declaration
bool HideEdge(TEdge edge)
Parameters
Type Name Description
TEdge edge

Edge to hide.

Returns
Type Description
System.Boolean

True if the edge is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

edge is null.

| Improve this Doc View Source

HideEdge(TEdge, String)

Hides the given edge, and gives a tag associated to this hidden edge.

Declaration
bool HideEdge(TEdge edge, string tag)
Parameters
Type Name Description
TEdge edge

Edge to hide.

System.String tag

Tag associated to the hidden edge.

Returns
Type Description
System.Boolean

True if the edge is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

edge is null.

System.ArgumentNullException

tag is null.

| Improve this Doc View Source

HideEdges(IEnumerable<TEdge>)

Hides the given set of edges.

Declaration
void HideEdges(IEnumerable<TEdge> edges)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<TEdge> edges

Edges to hide.

Exceptions
Type Condition
System.ArgumentNullException

edges is null or at least one of them is null.

| Improve this Doc View Source

HideEdges(IEnumerable<TEdge>, String)

Hides the given set of edges, and gives a tag associated to this hidden edges.

Declaration
void HideEdges(IEnumerable<TEdge> edges, string tag)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<TEdge> edges

Edges to hide.

System.String tag

Tag associated to the hidden edges.

Exceptions
Type Condition
System.ArgumentNullException

edges is null or at least one of them is null.

System.ArgumentNullException

tag is null.

| Improve this Doc View Source

HideEdgesIf(Predicate<TEdge>, String)

Hides edges matching the given predicate, and gives a tag associated to these hidden edges.

Declaration
void HideEdgesIf(Predicate<TEdge> predicate, string tag)
Parameters
Type Name Description
System.Predicate<TEdge> predicate

Hide predicate.

System.String tag

Tag associated to the hidden edges.

Exceptions
Type Condition
System.ArgumentNullException

predicate is null.

System.ArgumentNullException

tag is null.

| Improve this Doc View Source

HideVertex(TVertex)

Hides the given vertex.

Declaration
bool HideVertex(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to hide.

Returns
Type Description
System.Boolean

True if the vertex is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

HideVertex(TVertex, String)

Hides the given vertex, and gives a tag associated to this hidden vertex.

Declaration
bool HideVertex(TVertex vertex, string tag)
Parameters
Type Name Description
TVertex vertex

Vertex to hide.

System.String tag

Tag associated to the hidden vertex.

Returns
Type Description
System.Boolean

True if the vertex is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

System.ArgumentNullException

tag is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

HideVertices(IEnumerable<TVertex>)

Hides the given set of vertices.

Declaration
void HideVertices(IEnumerable<TVertex> vertices)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<TVertex> vertices

Vertices to hide.

Exceptions
Type Condition
System.ArgumentNullException

vertices is null or at least one of them is null.

QuikGraph.VertexNotFoundException

At least one of vertices is not part of the graph.

| Improve this Doc View Source

HideVertices(IEnumerable<TVertex>, String)

Hides the given set of vertices, and gives a tag associated to these hidden vertices.

Declaration
void HideVertices(IEnumerable<TVertex> vertices, string tag)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<TVertex> vertices

Vertices to hide.

System.String tag

Tag associated to the hidden vertices.

Exceptions
Type Condition
System.ArgumentNullException

vertices is null or at least one of them is null.

QuikGraph.VertexNotFoundException

At least one of vertices is not part of the graph.

System.ArgumentNullException

tag is null.

| Improve this Doc View Source

HideVerticesIf(Predicate<TVertex>, String)

Hides vertices matching the given predicate, and gives a tag associated to these hidden vertices.

Declaration
void HideVerticesIf(Predicate<TVertex> predicate, string tag)
Parameters
Type Name Description
System.Predicate<TVertex> predicate

Hide predicate.

System.String tag

Tag associated to the hidden vertices.

Exceptions
Type Condition
System.ArgumentNullException

predicate is null.

System.ArgumentNullException

tag is null.

| Improve this Doc View Source

IsHiddenEdge(TEdge)

Checks if the given edge is hidden.

Declaration
bool IsHiddenEdge(TEdge edge)
Parameters
Type Name Description
TEdge edge

Edge to check.

Returns
Type Description
System.Boolean

True if the edge is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

edge is null.

| Improve this Doc View Source

IsHiddenVertex(TVertex)

Checks if the given vertex is hidden.

Declaration
bool IsHiddenVertex(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to check.

Returns
Type Description
System.Boolean

True if the vertex is hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

Unhide(String)

Un-hides all vertices and edges that were hidden with the given tag.

Declaration
bool Unhide(string tag)
Parameters
Type Name Description
System.String tag

Tag to un-hide.

Returns
Type Description
System.Boolean

True if the tag has been un-hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

tag is null.

| Improve this Doc View Source

UnhideAll()

Un-hides all hidden vertices and edges.

Declaration
bool UnhideAll()
Returns
Type Description
System.Boolean

True if operation succeed, false otherwise.

| Improve this Doc View Source

UnhideEdge(TEdge)

Un-hides the given edge if it is hidden.

Declaration
bool UnhideEdge(TEdge edge)
Parameters
Type Name Description
TEdge edge

Edge to un-hide.

Returns
Type Description
System.Boolean

True if the edge has been un-hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

edge is null.

| Improve this Doc View Source

UnhideEdges(IEnumerable<TEdge>)

Un-hides the given edges if they are hidden.

Declaration
void UnhideEdges(IEnumerable<TEdge> edges)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<TEdge> edges

Edges to un-hide.

Exceptions
Type Condition
System.ArgumentNullException

edges is null or at least one of them is null.

| Improve this Doc View Source

UnhideEdgesIf(Predicate<TEdge>)

Un-hides edges matching the given predicate.

Declaration
void UnhideEdgesIf(Predicate<TEdge> predicate)
Parameters
Type Name Description
System.Predicate<TEdge> predicate

Un-hide predicate.

Exceptions
Type Condition
System.ArgumentNullException

predicate is null.

| Improve this Doc View Source

UnhideVertex(TVertex)

Un-hides the given vertex if it is hidden.

Declaration
bool UnhideVertex(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to un-hide.

Returns
Type Description
System.Boolean

True if the vertex has been un-hidden, false otherwise.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

| Improve this Doc View Source

UnhideVertexAndEdges(TVertex)

Un-hides the given vertex and its connected edges if they are hidden.

Declaration
void UnhideVertexAndEdges(TVertex vertex)
Parameters
Type Name Description
TVertex vertex

Vertex to un-hide.

Exceptions
Type Condition
System.ArgumentNullException

vertex is null.

QuikGraph.VertexNotFoundException

vertex is not part of the graph.

Extension Methods

GraphHelpers.GetNeighbors<TVertex, TEdge>(IBidirectionalGraph<TVertex, TEdge>, TVertex)
GraphHelpers.GetOutNeighbors<TVertex, TEdge>(IVertexAndEdgeListGraph<TVertex, TEdge>, TVertex)
GraphHelpers.GetEdgesBetween<TVertex, TEdge>(IVertexAndEdgeListGraph<TVertex, TEdge>, TVertex[], TVertex[])
GraphHelpers.GetDistances<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph, out Double[,])
GraphHelpers.Convert<TOldVertex, TOldEdge, TNewVertex, TNewEdge, TNewGraph>(IVertexAndEdgeListGraph<TOldVertex, TOldEdge>, TNewGraph, Func<TOldVertex, TNewVertex>, Func<TOldEdge, TNewEdge>)
GraphHelpers.Convert<TVertex, TOldEdge, TNewEdge, TNewGraph>(IVertexAndEdgeListGraph<TVertex, TOldEdge>, TNewGraph, Func<TOldEdge, TNewEdge>)
GraphHelpers.Convert<TVertex, TEdge, TNewGraph>(IVertexAndEdgeListGraph<TVertex, TEdge>, TNewGraph)
GraphHelpers.Convert<TOldVertex, TOldEdge, TNewVertex, TNewEdge>(IVertexAndEdgeListGraph<TOldVertex, TOldEdge>, Func<TOldVertex, TNewVertex>, Func<TOldEdge, TNewEdge>)
GraphHelpers.Convert<TVertex, TOldEdge, TNewEdge>(IVertexAndEdgeListGraph<TVertex, TOldEdge>, Func<TOldEdge, TNewEdge>)
GraphHelpers.CopyToBidirectionalGraph<TVertex, TEdge>(IVertexAndEdgeListGraph<TVertex, TEdge>)
  • Improve this Doc
  • View Source
In This Article
Back to top GraphShape