Namespace QuikGraph
Classes
AdjacencyGraph<TVertex, TEdge>
Mutable directed graph data structure.
ArrayAdjacencyGraph<TVertex, TEdge>
Immutable directed graph data structure.
ArrayBidirectionalGraph<TVertex, TEdge>
Immutable bidirectional directed graph data structure.
ArrayUndirectedGraph<TVertex, TEdge>
Immutable undirected graph data structure.
BidirectionalAdapterGraph<TVertex, TEdge>
Wrapper of a graph adapting it to become bidirectional.
BidirectionalGraph<TVertex, TEdge>
Mutable directed graph data structure.
BidirectionalMatrixGraph<TEdge>
Mutable bidirectional graph data structure based on a matrix.
ClusteredAdjacencyGraph<TVertex, TEdge>
Mutable clustered adjacency graph data structure.
CompressedSparseRowGraph<TVertex>
Directed graph data structure using a compressed sparse row representation. (http://www.cs.utk.edu/~dongarra/etemplates/node373.html)
DelegateBidirectionalIncidenceGraph<TVertex, TEdge>
A delegate-based directed bidirectional graph data structure.
DelegateImplicitGraph<TVertex, TEdge>
A delegate-based directed implicit graph data structure.
DelegateImplicitUndirectedGraph<TVertex, TEdge>
A delegate-based undirected implicit graph data structure.
DelegateIncidenceGraph<TVertex, TEdge>
A delegate-based directed incidence graph data structure.
DelegateUndirectedGraph<TVertex, TEdge>
A delegate-based undirected graph data structure. This graph is vertex immutable.
DelegateVertexAndEdgeListGraph<TVertex, TEdge>
A delegate-based directed graph data structure. This graph is vertex immutable.
Edge<TVertex>
The default IEdge<TVertex> implementation (directed edge).
EdgeEventArgs<TVertex, TEdge>
Base class for arguments of an event related to an edge.
EdgeExtensions
Extensions related to graph edges.
EdgeListGraph<TVertex, TEdge>
Mutable edge list graph data structure.
EquatableEdge<TVertex>
An IEdge<TVertex> implementation that supports equality (directed edge).
EquatableTaggedEdge<TVertex, TTag>
The default implementation of an IEdge<TVertex> that supports tagging and is equatable (directed edge).
EquatableTermEdge<TVertex>
An ITermEdge<TVertex> implementation that supports equality (directed edge).
EquatableUndirectedEdge<TVertex>
The default struct based IUndirectedEdge<TVertex> implementation.
EquateGraphs
Equality helpers for graphs.
GraphExtensions
Extensions for populating graph data structures.
NegativeCapacityException
Exception raised when an algorithm find a negative capacity in a graph.
NegativeCycleGraphException
Exception raised when an algorithm detected a negative cycle in a graph.
NegativeWeightException
Exception raised when an algorithm find or computed a negative weight in a graph.
NonAcyclicGraphException
Exception raised when an algorithm detected a cyclic graph when required acyclic.
NonStronglyConnectedGraphException
Exception raised when an algorithm detected a non-strongly connected graph.
NoPathFoundException
Exception raised when an algorithm could not find a path in a graph.
ParallelEdgeNotAllowedException
Exception raised when an algorithm detected a parallel edge that is not allowed.
QuikGraphException
QuikGraph base exception.
ReversedBidirectionalGraph<TVertex, TEdge>
Mutable reversed bidirectional graph data structure.
TaggedEdge<TVertex, TTag>
The default implementation of an IEdge<TVertex> that supports tagging (directed edge).
TaggedUndirectedEdge<TVertex, TTag>
The default implementation of an IUndirectedEdge<TVertex> that supports tagging.
TermEdge<TVertex>
The default ITermEdge<TVertex> implementation (directed edge).
UndirectedBidirectionalGraph<TVertex, TEdge>
Mutable bidirectional undirected graph data structure.
UndirectedEdge<TVertex>
The default IUndirectedEdge<TVertex> implementation.
UndirectedEdgeEventArgs<TVertex, TEdge>
Base class for arguments of an event related to an undirected edge.
UndirectedGraph<TVertex, TEdge>
Mutable undirected graph data structure.
VertexEventArgs<TVertex>
Base class for arguments of an event related to a vertex.
VertexNotFoundException
Exception raised when trying to use a vertex that is not inside the manipulated graph.
Structs
SEdge<TVertex>
The default struct based IEdge<TVertex> implementation (it is by design an equatable edge) (directed edge).
SEquatableEdge<TVertex>
A struct based IEdge<TVertex> implementation that supports equality (directed edge).
SEquatableTaggedEdge<TVertex, TTag>
The default implementation of an IEdge<TVertex> that supports tagging (struct) (directed edge).
SReversedEdge<TVertex, TEdge>
The default struct based reversed IEdge<TVertex> implementation.
STaggedEdge<TVertex, TTag>
The default implementation of an IEdge<TVertex> that supports tagging (struct) (directed edge).
STaggedUndirectedEdge<TVertex, TTag>
The default implementation of an IUndirectedEdge<TVertex> that supports tagging (struct).
SUndirectedEdge<TVertex>
A struct based IUndirectedEdge<TVertex> implementation (it is by design an equatable edge).
Interfaces
IBidirectionalGraph<TVertex, TEdge>
A directed graph with vertices of type TVertex
and edges of type TEdge
, that is efficient
to traverse both in and out edges.
IBidirectionalIncidenceGraph<TVertex, TEdge>
A incident directed graph with vertices of type TVertex
and edges of type TEdge
, that is efficient
to traverse both in and out edges.
ICloneableEdge<TVertex, TEdge>
Represents a cloneable edge.
IClusteredGraph
Represents a graph cluster.
IEdge<TVertex>
Represents a directed edge.
IEdgeListAndIncidenceGraph<TVertex, TEdge>
Represents an incidence graph whose edges can be enumerated.
IEdgeListGraph<TVertex, TEdge>
A graph with vertices of type TVertex
and edges of type TEdge
whose edges can be enumerated.
IEdgeSet<TVertex, TEdge>
Represents a set of edges.
IGraph<TVertex, TEdge>
A graph with vertices of type TVertex
and edges of type TEdge
.
IHierarchy<TVertex, TEdge>
Represents a hierarchy of graphs.
IImplicitGraph<TVertex, TEdge>
An implicit graph with vertices of type TVertex
and edges of type TEdge
.
IImplicitUndirectedGraph<TVertex, TEdge>
An implicit undirected graph with vertices of type TVertex
and edges of type TEdge
.
IImplicitVertexSet<TVertex>
Represents an implicit set of vertices.
IIncidenceGraph<TVertex, TEdge>
An incident graph with vertices of type TVertex
and edges of type TEdge
.
IMutableBidirectionalGraph<TVertex, TEdge>
A mutable bidirectional directed graph with vertices of type TVertex
and edges of type TEdge
.
IMutableEdgeListGraph<TVertex, TEdge>
A mutable edge list graph with vertices of type TVertex
and edges of type TEdge
.
IMutableGraph<TVertex, TEdge>
A mutable graph with vertices of type TVertex
and edges of type TEdge
.
IMutableIncidenceGraph<TVertex, TEdge>
A mutable incidence graph with vertices of type TVertex
and edges of type TEdge
.
IMutableTermBidirectionalGraph<TVertex, TEdge>
A mutable directed graph with vertices of type TVertex
and terminal edges of type TEdge
, that is efficient
to traverse both in and out edges.
IMutableUndirectedGraph<TVertex, TEdge>
A mutable indirect graph with vertices of type TVertex
and edges of type TEdge
.
IMutableVertexAndEdgeListGraph<TVertex, TEdge>
A mutable vertex and edge list graph with vertices of type
TVertex
and edges of type TEdge
.
IMutableVertexAndEdgeSet<TVertex, TEdge>
A mutable vertex and edge set.
IMutableVertexListGraph<TVertex, TEdge>
A mutable vertex list graph with vertices of type TVertex
and edges of type TEdge
.
IMutableVertexSet<TVertex>
Represents a mutable set of vertices.
ITagged<TTag>
Represents an object that is able to be tagged.
ITermBidirectionalGraph<TVertex, TEdge>
A directed graph with vertices of type TVertex
and terminal edges of type TEdge
, that is efficient
to traverse both in and out edges.
ITermEdge<TVertex>
Represents a directed edge with terminal indexes.
IUndirectedEdge<TVertex>
Represents an undirected edge.
IUndirectedGraph<TVertex, TEdge>
An undirected graph with vertices of type TVertex
and edges of type TEdge
.
IVertexAndEdgeListGraph<TVertex, TEdge>
A directed graph with vertices of type TVertex
and edges of type TEdge
that can be enumerated efficiently.
IVertexListGraph<TVertex, TEdge>
A directed graph data structure where out-edges can be traversed, i.e. a vertex set + implicit graph.
IVertexSet<TVertex>
Represents a set of vertices.
Enums
GraphColor
Colors used in vertex coloring algorithms.
Delegates
CreateEdge<TVertex, TEdge>
Delegate to create an edge in a graph between two vertices.
CreateVertexDelegate<TVertex, TEdge>
Delegate to create a vertex in a graph.
EdgeAction<TVertex, TEdge>
Delegate to perform an action involving the edge
.
EdgeEdgeAction<TVertex, TEdge>
Delegate to perform an action involving the 2 edges.
EdgeEqualityComparer<TVertex>
Delegate to compare edge source and target vertex with given ones.
EdgeEventHandler<TVertex, TEdge>
Delegate for an handler dealing with a edge.
EdgeFactory<TVertex, TEdge>
Delegate to create an edge.
EdgeIdentity<TVertex, TEdge>
Delegate to compute the identity of the given edge
.
EdgePredicate<TVertex, TEdge>
Delegate to perform a check on the given edge
.
IdentifiableEdgeFactory<TVertex, TEdge>
Delegate to create an identifiable edge.
IdentifiableVertexFactory<TVertex>
Delegate to create an identifiable vertex.
TryFunc<T, TResult>
Delegate that has one parameter and returns an out value of the type specified by the TResult
parameter.
This method can fail so the boolean return type indicate the state succeeded or not of the method.
TryFunc<T1, T2, TResult>
Delegate that has 2 parameters and returns an out value of the type specified by the TResult
parameter.
This method can fail so the boolean return type indicate the state succeeded or not of the method.
TryFunc<T1, T2, T3, TResult>
Delegate that has 3 parameters and returns an out value of the type specified by the TResult
parameter.
This method can fail so the boolean return type indicate the state succeeded or not of the method.
TryFunc<T1, T2, T3, T4, TResult>
Delegate that has 4 parameters and returns an out value of the type specified by the TResult
parameter.
This method can fail so the boolean return type indicate the state succeeded or not of the method.
UndirectedEdgeAction<TVertex, TEdge>
Delegate for an handler dealing with an undirected edge.
VertexAction<TVertex>
Delegate to perform an action involving the vertex
.
VertexEventHandler<TVertex>
Delegate to for an handler dealing with a vertex.
VertexFactory<TVertex>
Delegate to create a vertex.
VertexIdentity<TVertex>
Delegate to compute the identity of the given vertex
.
VertexPredicate<TVertex>
Delegate to perform a check on the given vertex
.