Show / Hide Table of Contents

Class LayeredTopologicalSortAlgorithm<TVertex, TEdge>

Algorithm that sorts vertices by layer.

Inheritance
System.Object
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>
LayeredTopologicalSortAlgorithm<TVertex, TEdge>
Implements
QuikGraph.Algorithms.IAlgorithm<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>
QuikGraph.Algorithms.IComputation
QuikGraph.Algorithms.Services.IAlgorithmComponent
Inherited Members
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Compute()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Abort()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.OnStateChanged(System.EventArgs)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.OnStarted(System.EventArgs)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.OnFinished(System.EventArgs)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.OnAborted(System.EventArgs)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.GetService<T>()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.TryGetService<T>(T)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.TryGetService(System.Type, System.Object)
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.ThrowIfCancellationRequested()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Initialize()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.InternalCompute()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Clean()
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.SyncRoot
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.State
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.VisitedGraph
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Services
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.StateChanged
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Started
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Finished
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.Aborted
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: GraphShape.Algorithms
Assembly: GraphShape.dll
Syntax
public class LayeredTopologicalSortAlgorithm<TVertex, TEdge> : AlgorithmBase<IVertexAndEdgeListGraph<TVertex, TEdge>>, IAlgorithm<IVertexAndEdgeListGraph<TVertex, TEdge>>, IComputation, IAlgorithmComponent where TEdge : IEdge<TVertex>
Type Parameters
Name Description
TVertex

Vertex type.

TEdge

Edge type.

Constructors

| Improve this Doc View Source

LayeredTopologicalSortAlgorithm(IVertexAndEdgeListGraph<TVertex, TEdge>)

Initializes a new instance of the LayeredTopologicalSortAlgorithm<TVertex, TEdge> class.

Declaration
public LayeredTopologicalSortAlgorithm(IVertexAndEdgeListGraph<TVertex, TEdge> visitedGraph)
Parameters
Type Name Description
QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge> visitedGraph

Graph to visit.

Exceptions
Type Condition
System.ArgumentNullException

visitedGraph is null.

Properties

| Improve this Doc View Source

LayerCount

The count of the layers in the graph.

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

LayerIndices

This dictionary contains the layer-index for every vertices.

Declaration
public IDictionary<TVertex, int> LayerIndices { get; }
Property Value
Type Description
System.Collections.Generic.IDictionary<TVertex, System.Int32>
| Improve this Doc View Source

Layers

The vertices grouped by their LayerIndex.

Declaration
public IList<IList<TVertex>> Layers { get; }
Property Value
Type Description
System.Collections.Generic.IList<System.Collections.Generic.IList<TVertex>>

Methods

| Improve this Doc View Source

InternalCompute()

Declaration
protected override void InternalCompute()
Overrides
QuikGraph.Algorithms.AlgorithmBase<QuikGraph.IVertexAndEdgeListGraph<TVertex, TEdge>>.InternalCompute()

Events

| Improve this Doc View Source

LayerFinished

Fired each time a layer is treated and finished.

Declaration
public event LayeredTopologicalSortAlgorithm<TVertex, TEdge>.LayerFinishedDelegate LayerFinished
Event Type
Type Description
LayeredTopologicalSortAlgorithm.LayerFinishedDelegate<>

Implements

QuikGraph.Algorithms.IAlgorithm<TGraph>
QuikGraph.Algorithms.IComputation
QuikGraph.Algorithms.Services.IAlgorithmComponent

Extension Methods

GraphHelpers.GetDistances<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph, out Double[,])
  • Improve this Doc
  • View Source
In This Article
Back to top GraphShape