TopologicalSorterTVertex, TEdge Class |
Namespace: SD.Tools.Algorithmia.Graphs.Algorithms
public class TopologicalSorter<TVertex, TEdge> : DepthFirstSearchCrawler<TVertex, TEdge> where TEdge : class, Object, IEdge<TVertex>
The TopologicalSorterTVertex, TEdge type exposes the following members.
Name | Description | |
---|---|---|
TopologicalSorterTVertex, TEdge(GraphBaseTVertex, TEdge) |
Initializes a new instance of the TopologicalSorterTVertex, TEdge class.
| |
TopologicalSorterTVertex, TEdge(GraphBaseTVertex, TEdge, Boolean) |
Initializes a new instance of the TopologicalSorterTVertex, TEdge class.
|
Name | Description | |
---|---|---|
AbortCrawl |
Sets the abortCrawl flag which will abort the crawl of the graph.
(Inherited from DepthFirstSearchCrawlerTVertex, TEdge.) | |
SeeCycleCreatingEdgesAsNonExistend |
Gets or sets a value indicating whether edges which create a cycle should be seen as real (true) or as edges which can be ignored and
have no influence on the outcome (false, default). 'False' means that an exception is thrown when a cycle is detected.
True means that the traversal is broken off at the re-visited vertex and continued using backtracking. Leave this property to false,
unless cycles should be allowed.
| |
SortResults |
Gets or sets the sort results. This is one possible correct topological order of the graph passed into the constructor. Topological sorting doesn't guarantee
that there is just 1 ordering, there can be many correct orderings.
|
Name | Description | |
---|---|---|
Crawl |
Crawls the graph set as the graphToCrawl in the constructor. It picks the first vertex in the graph to start.
(Inherited from DepthFirstSearchCrawlerTVertex, TEdge.) | |
Crawl(TVertex) |
Crawls the graph set as the graphToCrawl in the constructor, starting with the vertex specified. If the vertex isn't in the graph, the routine is a no-op
(Inherited from DepthFirstSearchCrawlerTVertex, TEdge.) | |
CycleDetected |
A cycle has been detected in a directed graph. This method is called to signal derived classes that the cycle has been detected, as the derived class
ordered this class to signal it if cycles were detected. Cycle checks are only performed on directed graphs.
(Overrides DepthFirstSearchCrawlerTVertex, TEdgeCycleDetected(TVertex, HashSetTEdge).) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
OnVisited |
Called when the vertexVisited was visited over the edges specified. This method is called right after all vertices related to vertexVisited were visited.
(Overrides DepthFirstSearchCrawlerTVertex, TEdgeOnVisited(TVertex, HashSetTEdge).) | |
OnVisiting |
Called when the vertexToVisit is about to be visited over the edges specified. This method is called right before all vertices related to vertexToVisit
are visited.
(Inherited from DepthFirstSearchCrawlerTVertex, TEdge.) | |
RootDetected |
Signal the detection of a root vertex that has been visited by the crawler.
(Inherited from DepthFirstSearchCrawlerTVertex, TEdge.) | |
Sort |
Runs the algorithm on the graph passed to the constructor
| |
ToString | Returns a string that represents the current object. (Inherited from Object.) |