master
1<?xml version="1.0"?>
2<doc>
3 <assembly>
4 <name>QuickGraph.Algorithms</name>
5 </assembly>
6 <members>
7 <member name="T:QuickGraph.Algorithms.AlgoUtility">
8 <summary>
9 A static class with some helper methods
10 </summary>
11 <remarks>
12 <para>
13 This class contains a number of small and usefull methods.
14 </para>
15 <para>
16 All the method are thread safe.
17 </para>
18 </remarks>
19 </member>
20 <member name="M:QuickGraph.Algorithms.AlgoUtility.#ctor">
21 <summary>
22 No constructor
23 </summary>
24 </member>
25 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsSelfLoop(QuickGraph.Concepts.IEdge)">
26 <summary>
27 Returns true if edge is a self edge
28 </summary>
29 <param name="e">edge to test</param>
30 <returns>true if self edge</returns>
31 <exception cref="T:System.ArgumentNullException">e is null</exception>
32 </member>
33 <member name="M:QuickGraph.Algorithms.AlgoUtility.Opposite(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IVertex)">
34 <summary>
35 Returns the vertex opposite to v on the edge e.
36 </summary>
37 <remarks>
38 Given an edge and a vertex which must be incident to the edge,
39 this function returns the opposite vertex.
40 So if v is the source vertex, this function returns the target
41 vertex. I
42 f v is the target, then this function returns the source vertex.
43 </remarks>
44 <param name="e"></param>
45 <param name="v"></param>
46 <returns></returns>
47 <exception cref="T:System.ArgumentNullException">e or v is null</exception>
48 <exception cref="T:QuickGraph.Exceptions.VertexNotConnectedByEdgeException">v is not incident to e</exception>
49 </member>
50 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsInEdgeSet(QuickGraph.Concepts.Traversals.IEdgeListGraph,QuickGraph.Concepts.IEdge)">
51 <summary>
52 Checks wheter an edge belongs to the edge set
53 </summary>
54 <param name="g">graph containing the edge set</param>
55 <param name="e">edge to test</param>
56 <returns>true if e is in the graph edge set</returns>
57 </member>
58 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsInVertexSet(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Concepts.IVertex)">
59 <summary>
60 Checks wheter a vertex belongs to the vertex set
61 </summary>
62 <param name="g">graph containing the vertex set</param>
63 <param name="v">vertex to test</param>
64 <returns>true if v is in the graph vertex set</returns>
65 </member>
66 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsInEdgeSet(QuickGraph.Concepts.Traversals.IEdgeListGraph,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
67 <summary>
68 Checks wheter an edge that goes from source to target
69 belongs to the edge set
70 </summary>
71 <param name="g">graph containing the edge set</param>
72 <param name="source">edge source</param>
73 <param name="target">edge target</param>
74 <returns>true if e is in the graph edge set</returns>
75 </member>
76 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsChild(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Collections.VertexVertexDictionary)">
77 <summary>
78 Checks if the child vertex is a child of the parent vertex
79 using the predecessor map.
80 </summary>
81 <param name="parent"></param>
82 <param name="child"></param>
83 <param name="predecessors"></param>
84 <returns></returns>
85 </member>
86 <member name="M:QuickGraph.Algorithms.AlgoUtility.IsReachable(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Traversals.IVertexListGraph)">
87 <summary>
88 Checks if there exists a path between source and target
89 </summary>
90 <param name="source">source vertex</param>
91 <param name="target">target vertex</param>
92 <param name="g">graph</param>
93 <returns>true if target is reachable from source</returns>
94 </member>
95 <member name="M:QuickGraph.Algorithms.AlgoUtility.TopologicalSort(QuickGraph.Concepts.Traversals.IVertexListGraph,System.Collections.IList)">
96 <summary>
97 Applies a topological sort to the graph
98 </summary>
99 <param name="g">graph to sort</param>
100 <param name="vertices">sorted vertices</param>
101 </member>
102 <member name="M:QuickGraph.Algorithms.AlgoUtility.ConnectedComponents(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexIntDictionary)">
103 <summary>
104 Computes the connected components.
105 </summary>
106 <param name="g">graph to explore</param>
107 <param name="components">component map where results are recorded</param>
108 <returns>number of components</returns>
109 </member>
110 <member name="M:QuickGraph.Algorithms.AlgoUtility.StrongComponents(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexIntDictionary)">
111 <summary>
112 Computes the strong components.
113 </summary>
114 <remarks>
115 <para>
116 Thread safe.
117 </para>
118 </remarks>
119 <param name="g">graph to explore</param>
120 <param name="components">component map where results are recorded</param>
121 <returns>number of strong components</returns>
122 </member>
123 <member name="M:QuickGraph.Algorithms.AlgoUtility.Sinks(QuickGraph.Concepts.Traversals.IVertexListGraph)">
124 <summary>
125 Returns an enumerable collection of the leaf vertices of the graph
126 </summary>
127 <param name="g">graph to visit</param>
128 <returns>enumerable of leaf vertices</returns>
129 <remarks>
130 <para>
131 Thread safe.
132 </para>
133 </remarks>
134 </member>
135 <member name="M:QuickGraph.Algorithms.AlgoUtility.Sources(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph)">
136 <summary>
137 Returns an enumerable collection of the root vertices of the graph
138 </summary>
139 <param name="g">graph to visit</param>
140 <returns>enumerable of root vertices</returns>
141 <remarks>
142 <para>
143 Thread safe.
144 </para>
145 </remarks>
146 </member>
147 <member name="M:QuickGraph.Algorithms.AlgoUtility.Sinks(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Concepts.IVertex)">
148 <summary>
149 Computes the leaves from the <paramref name="root"/> vertex.
150 </summary>
151 <param name="g">graph containing the vertex</param>
152 <param name="root">root of the tree</param>
153 <returns>leaf vertices</returns>
154 </member>
155 <member name="M:QuickGraph.Algorithms.AlgoUtility.CheckAcyclic(QuickGraph.Concepts.Traversals.IVertexListGraph)">
156 <summary>
157 Checks that the graph does not have cyclies
158 </summary>
159 <param name="g">graph to test</param>
160 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
161 <exception cref="T:QuickGraph.Exceptions.NonAcyclicGraphException">graph contains a cycle</exception>
162 </member>
163 <member name="M:QuickGraph.Algorithms.AlgoUtility.dfs_BackEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
164 <summary>
165 Used in OutEdgeTree
166 </summary>
167 <param name="sender"></param>
168 <param name="e"></param>
169 </member>
170 <member name="M:QuickGraph.Algorithms.AlgoUtility.CheckAcyclic(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Concepts.IVertex)">
171 <summary>
172 Checks that the sub graph rooted at <paramref name="ref"/> does not have cyclies
173 </summary>
174 <param name="g">graph to test</param>
175 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
176 <exception cref="T:QuickGraph.Exceptions.NonAcyclicGraphException">graph contains a cycle</exception>
177 </member>
178 <member name="M:QuickGraph.Algorithms.AlgoUtility.OddVertices(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph)">
179 <summary>
180 Create a collection of odd vertices
181 </summary>
182 <param name="g">graph to visit</param>
183 <returns>colleciton of odd vertices</returns>
184 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
185 </member>
186 <member name="T:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm">
187 <summary>
188 Floyd Warshall All Shortest Path Algorithm
189 </summary>
190 <remarks>
191 </remarks>
192 </member>
193 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph,QuickGraph.Algorithms.AllShortestPath.Testers.IFloydWarshallTester)">
194 <summary>
195 Default constructor - initializes all fields to default values
196 </summary>
197 </member>
198 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.OnInitiliazePath(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
199 <summary>
200 Raises the <see cref="!:InitializePath"/> event.
201 </summary>
202 <param name="source">source vertex</param>
203 <param name="target">target vertex</param>
204 </member>
205 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.OnProcessPath(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
206 <summary>
207 Raises the <see cref="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.ProcessPath"/> event.
208 </summary>
209 <param name="source">source vertex</param>
210 <param name="target">target vertex</param>
211 <param name="intermediate"></param>
212 </member>
213 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.OnReducePath(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
214 <summary>
215 Raises the <see cref="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.ReducePath"/> event.
216 </summary>
217 <param name="source"></param>
218 <param name="target"></param>
219 <param name="intermediate"></param>
220 </member>
221 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.OnNotReducePath(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
222 <summary>
223 Raises the <see cref="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.NotReducePath"/> event.
224 </summary>
225 <param name="source"></param>
226 <param name="target"></param>
227 <param name="intermediate"></param>
228 </member>
229 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.Compute">
230 <summary>
231 Compute the All shortest path problem.
232 </summary>
233 </member>
234 <member name="M:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.CheckConnectivityAndNegativeCycles(QuickGraph.Concepts.Collections.IVertexDistanceMatrix)">
235 <summary>
236 Checks the graph for connectivity and negative cycles
237 </summary>
238 <param name="costs">cost distionary</param>
239 <exception cref="T:QuickGraph.Exceptions.NegativeCycleException">graph has negatice cycle.</exception>
240 <exception cref="T:QuickGraph.Exceptions.GraphNotStronglyConnectedException">graph is not strongly connected</exception>
241 </member>
242 <member name="P:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.VisitedGraph">
243 <summary>
244 Gets the visited graph
245 </summary>
246 <value>
247 Visited Graph
248 </value>
249 </member>
250 <member name="P:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.QuickGraph#Concepts#Algorithms#IAlgorithm#VisitedGraph">
251 <summary>
252
253 </summary>
254 </member>
255 <member name="P:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.Tester">
256 <summary>
257 Gets the <see cref="T:QuickGraph.Algorithms.AllShortestPath.Testers.IFloydWarshallTester"/> instance
258 </summary>
259 </member>
260 <member name="P:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.DefinedPaths">
261 <summary>
262 Internal use
263 </summary>
264 </member>
265 <member name="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.InitiliazePath">
266 <summary>
267 Raised when initializing a new path
268 </summary>
269 <remarks>
270 </remarks>
271 </member>
272 <member name="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.ProcessPath">
273 <summary>
274
275 </summary>
276 </member>
277 <member name="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.ReducePath">
278 <summary>
279 Raised when a path is reduced
280 </summary>
281 </member>
282 <member name="E:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm.NotReducePath">
283 <summary>
284 Raised when a path is not reduced
285 </summary>
286 </member>
287 <member name="T:QuickGraph.Algorithms.AllShortestPath.NamespaceDoc">
288 <summary>
289 Collection of classes that compute the All-Shortest path problem.
290 </summary>
291 <remarks>
292 <para>
293 An all-shortest path algorithm computes all the shortest path between
294 all the graph vertices.
295 </para>
296 <para>
297 The <see cref="T:QuickGraph.Algorithms.AllShortestPath.FloydWarshallAllShortestPathAlgorithm"/> runs in O(V^3).
298 It can also be used to compute other quantities: transitive hull,
299 safest path, min-max path, etc.
300 Those are trigerred by <see cref="T:QuickGraph.Algorithms.AllShortestPath.Reducers.IFloydWarshallDistanceReducer"/>
301 classes.
302 </para>
303 </remarks>
304 </member>
305 <member name="T:QuickGraph.Algorithms.AllShortestPath.Reducers.FloydWarshallMaxMinDistanceReducer">
306 <summary>
307
308 </summary>
309 </member>
310 <member name="T:QuickGraph.Algorithms.AllShortestPath.Reducers.IFloydWarshallDistanceReducer">
311 <summary>
312 Distance reducer interface
313 </summary>
314 </member>
315 <member name="M:QuickGraph.Algorithms.AllShortestPath.Reducers.IFloydWarshallDistanceReducer.ReducePathDistance(QuickGraph.Concepts.Collections.IVertexDistanceMatrix,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
316 <summary>
317
318 </summary>
319 <param name="distances"></param>
320 <param name="source"></param>
321 <param name="target"></param>
322 <param name="intermediate"></param>
323 </member>
324 <member name="T:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm">
325 <summary>
326 A <see cref="T:QuickGraph.Concepts.Algorithms.IAlgorithm"/> implementation that augments a
327 <see cref="T:QuickGraph.Concepts.MutableTraversals.IMutableVertexAndEdgeListGraph"/> such that
328 for all edge (u,v) there exists the edge (v,u) in the graph.
329 </summary>
330 <remarks>
331 <para>
332 This algorithm can be used to augment a graph with reversed edges to make it usable by
333 a <see cref="T:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm"/> implementation. It also contains the method
334 to clean up the graph afterwards.
335 </para>
336 </remarks>
337 </member>
338 <member name="M:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.AddReversedEdges">
339 <summary>
340 Augments the <see cref="P:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.VisitedGraph"/> with reversed edges.
341 </summary>
342 <exception cref="T:System.InvalidOperationException">
343 The graph has already been augmented.
344 </exception>
345 </member>
346 <member name="M:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.RemoveReversedEdges">
347 <summary>
348 Removes the reversed edges.
349 </summary>
350 <exception cref="T:System.InvalidOperationException">
351 The graph is not yet augmented.
352 </exception>
353 </member>
354 <member name="P:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.AugmentedEdges">
355 <summary>
356 Gets a <see cref="T:QuickGraph.Collections.EdgeCollection"/> instance containing the
357 augmented edges.
358 </summary>
359 <value></value>
360 </member>
361 <member name="P:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.ReversedEdges">
362 <summary>
363 Gets a <see cref="T:QuickGraph.Collections.EdgeEdgeDictionary"/> associating
364 each edge to it's corresponding reversed edge.
365 </summary>
366 <value></value>
367 </member>
368 <member name="P:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.Augmented">
369 <summary>
370 Gets a value indicating wheter the <see cref="P:QuickGraph.Algorithms.MaximumFlow.ReversedEdgeAugmentorAlgorithm.VisitedGraph"/>
371 has been augmented.
372 </summary>
373 <value></value>
374 </member>
375 <member name="T:QuickGraph.Algorithms.MinimumFlow.GraphBalancerAlgorithm">
376 <summary>
377
378 </summary>
379 <remarks>
380 <para>
381 Algorithm extracted from <em>Efficient Algorithms for Constructing Testing Sets, Covering Paths and
382 Minimum Flows</em>, Alfred V. Aho, David Lee.
383 </para>
384 </remarks>
385 </member>
386 <member name="T:QuickGraph.Algorithms.Clone.CloneEdgeEventHandler">
387 <summary>
388 Edge cloning event handler
389 </summary>
390 </member>
391 <member name="T:QuickGraph.Algorithms.Clone.CloneEdgeEventArgs">
392 <summary>
393 Edge cloning event argument
394 </summary>
395 </member>
396 <member name="M:QuickGraph.Algorithms.Clone.CloneEdgeEventArgs.#ctor(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IEdge)">
397 <summary>
398 Create a new Vertex cloning event argument
399 </summary>
400 <param name="original">original vertex</param>
401 <param name="clone">clone vertex</param>
402 <exception cref="!:ArgumentNullReference">
403 <paramref name="original"/> or <paramref name="clone"/>
404 is a null reference.
405 </exception>
406 </member>
407 <member name="P:QuickGraph.Algorithms.Clone.CloneEdgeEventArgs.Original">
408 <summary>
409 Original vertex
410 </summary>
411 </member>
412 <member name="P:QuickGraph.Algorithms.Clone.CloneEdgeEventArgs.Clone">
413 <summary>
414 Clone vertex
415 </summary>
416 </member>
417 <member name="T:QuickGraph.Algorithms.Clone.CloneVertexEventHandler">
418 <summary>
419 Vertex cloning event handler
420 </summary>
421 </member>
422 <member name="T:QuickGraph.Algorithms.Clone.CloneVertexEventArgs">
423 <summary>
424 Vertex cloning event argument
425 </summary>
426 </member>
427 <member name="M:QuickGraph.Algorithms.Clone.CloneVertexEventArgs.#ctor(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
428 <summary>
429 Create a new Vertex cloning event argument
430 </summary>
431 <param name="original">original vertex</param>
432 <param name="clone">clone vertex</param>
433 <exception cref="!:ArgumentNullReference">
434 <paramref name="original"/> or <paramref name="clone"/>
435 is a null reference.
436 </exception>
437 </member>
438 <member name="P:QuickGraph.Algorithms.Clone.CloneVertexEventArgs.Original">
439 <summary>
440 Gets the original vertex
441 </summary>
442 <value>
443 Original vertex instance
444 </value>
445 </member>
446 <member name="P:QuickGraph.Algorithms.Clone.CloneVertexEventArgs.Clone">
447 <summary>
448 Gets the clone vertex
449 </summary>
450 <value>
451 Clone vertex instance
452 </value>
453 </member>
454 <member name="T:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm">
455 <summary>
456 A graph cloner algorithm
457 </summary>
458 <remarks>
459 <para>
460 Use this class to create clone of different graphs with possible different
461 provider types.
462 </para>
463 <para>
464 The <see cref="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneVertex"/> and <see cref="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneEdge"/> events can be
465 used to copy the custom properties
466 attached to each vertex and edge.
467 </para>
468 </remarks>
469 </member>
470 <member name="M:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.Clone(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph,QuickGraph.Concepts.Modifications.IEdgeMutableGraph)">
471 <summary>
472 Makes a copy of the source graph to the clone graph.
473 </summary>
474 <param name="source">source graph</param>
475 <param name="target">clone graph</param>
476 </member>
477 <member name="M:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.ReversedClone(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph,QuickGraph.Concepts.Modifications.IEdgeMutableGraph)">
478 <summary>
479 Clones the <paramref name="source"/> to <paramref name="target"/> and
480 reverses the edges.
481 </summary>
482 <remarks>
483 <para>
484 Use this class to create clone of different graphs with possible different
485 provider types.
486 </para>
487 <para>
488 The <see cref="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneVertex"/> and <see cref="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneEdge"/> events can be
489 used to copy the custom properties
490 attached to each vertex and edge.
491 </para>
492 </remarks>
493 </member>
494 <member name="M:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.OnCloneVertex(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
495 <summary>
496 Triggers the CloneVertex event
497 </summary>
498 <param name="v"></param>
499 <param name="vc"></param>
500 </member>
501 <member name="M:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.OnCloneEdge(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IEdge)">
502 <summary>
503 Triggers the CloneEdge event
504 </summary>
505 <param name="e"></param>
506 <param name="ec"></param>
507 </member>
508 <member name="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneVertex">
509 <summary>
510 Event called on each vertex cloning
511 </summary>
512 <remarks>
513 </remarks>
514 </member>
515 <member name="E:QuickGraph.Algorithms.Clone.GraphClonerAlgorithm.CloneEdge">
516 <summary>
517 Event called on each edge cloning
518 </summary>
519 <remarks>
520 </remarks>
521 </member>
522 <member name="T:QuickGraph.Algorithms.Clone.NamespaceDoc">
523 <summary>
524 The <b>QuickGraph.Algorithms.Clone</b> contains algorithms that
525 create copy of graph.
526 </summary>
527 </member>
528 <member name="T:QuickGraph.Algorithms.CondensationGraphAlgorithm">
529 <summary>
530 Creates a condensation graph transformation
531 </summary>
532 <author name="Rohit Gadogkar" email="rohit.gadagkar@gmail.com" />
533 </member>
534 <member name="M:QuickGraph.Algorithms.CondensationGraphAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
535 <summary>
536 Condensation Graph constructor
537 </summary>
538 <param name="g">Input graph from
539 which condensation graph is created</param>
540 </member>
541 <member name="M:QuickGraph.Algorithms.CondensationGraphAlgorithm.OnInitCondensationGraphVertex(QuickGraph.Algorithms.CondensationGraphVertexEventArgs)">
542 <summary>
543 Raise the CondensationGraphVertex evt
544 </summary>
545 <param name="arg">Pack the CG vertex and a VertexCollection of it's constituent vertices</param>
546 </member>
547 <member name="M:QuickGraph.Algorithms.CondensationGraphAlgorithm.ClearComponents">
548 <summary>
549 Clear the extracted strongly connected components
550 </summary>
551 </member>
552 <member name="M:QuickGraph.Algorithms.CondensationGraphAlgorithm.Create(QuickGraph.Concepts.MutableTraversals.IMutableVertexAndEdgeListGraph)">
553 <summary>
554 Compute the condensation graph and store it in the supplied graph 'cg'
555 </summary>
556 <param name="cg">
557 Instance of mutable graph in which the condensation graph
558 transformation is stored
559 </param>
560 </member>
561 <member name="P:QuickGraph.Algorithms.CondensationGraphAlgorithm.VisitedGraph">
562 <summary>
563 Visited graph
564 </summary>
565 </member>
566 <member name="P:QuickGraph.Algorithms.CondensationGraphAlgorithm.VertexToSCCMap">
567 <summary>
568 Maps a graph vertex to a strongly connected component
569 </summary>
570 <value>Map of IVertex to strongly connected component ID</value>
571 </member>
572 <member name="P:QuickGraph.Algorithms.CondensationGraphAlgorithm.SCCVerticesMap">
573 <summary>
574 Read only map of vertices within each strongly connected component
575 </summary>
576 <value>map with StronglyConnectedComponent ID as key and IList of vertices as value</value>
577 </member>
578 <member name="E:QuickGraph.Algorithms.CondensationGraphAlgorithm.InitCondensationGraphVertex">
579 <summary>
580 Raised when a new vertex is added in the condensation graph
581 </summary>
582 </member>
583 <member name="T:QuickGraph.Algorithms.CondensationGraphVertexEventArgs">
584 <summary>
585 Encapsulates a vertex in the original graph and it's corresponding
586 vertex in a transformation of the graph
587 </summary>
588 </member>
589 <member name="M:QuickGraph.Algorithms.CondensationGraphVertexEventArgs.#ctor(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Collections.IVertexCollection)">
590 <summary>
591 ctor()
592 </summary>
593 <param name="cgVertex">Vertex in the condensation graph</param>
594 <param name="stronglyConnectedVertices">strongly connected
595 components
596 in the original graph which are represented by the condensation
597 graph node</param>
598 </member>
599 <member name="P:QuickGraph.Algorithms.CondensationGraphVertexEventArgs.CondensationGraphVertex">
600 <summary>
601 Condensation graph vertex
602 </summary>
603 </member>
604 <member name="P:QuickGraph.Algorithms.CondensationGraphVertexEventArgs.StronglyConnectedVertices">
605 <summary>
606 Strongly connected vertices from original graph represented by the
607 condensation graph node
608 </summary>
609 </member>
610 <member name="T:QuickGraph.Algorithms.CondensationGraphVertexEventHandler">
611 <summary>
612 Delegate to handle the CondensationGraphVertexEvent
613 </summary>
614 </member>
615 <member name="T:QuickGraph.Algorithms.ConnectedComponentsAlgorithm">
616 <summary>
617 Connected component computation
618 </summary>
619 <remarks>
620 <para>
621 The ConnectedComponentsAlgorithm functions compute the connected
622 components of an undirected graph using a DFS-based approach.
623 </para>
624 <para>
625 A connected component of an undirected graph is a set of vertices that
626 are all reachable from each other.
627 </para>
628 <para>
629 If the connected components need to be maintained while a graph is
630 growing the disjoint-set based approach of function
631 IncrementalComponentsAlgorithm is faster.
632 For ``static'' graphs this DFS-based approach is faster.
633 </para>
634 <para>
635 The output of the algorithm is recorded in the component
636 property Components, which will contain numbers giving the
637 component number assigned to each vertex.
638 </para>
639 </remarks>
640 </member>
641 <member name="M:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
642 <summary>
643 Constructs a connected component algorithm.
644 </summary>
645 <param name="g">graph to apply the algorithm on</param>
646 <exception cref="T:System.ArgumentNullException">g is null</exception>
647 </member>
648 <member name="M:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexIntDictionary)">
649 <summary>
650 Constructs a connected component algorithm, using a component map
651 </summary>
652 <param name="g">graph</param>
653 <param name="components">map where the components are recorded</param>
654 <exception cref="T:System.ArgumentNullException">g or components are null</exception>
655 </member>
656 <member name="M:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.StartVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
657 <summary>
658 Used internally
659 </summary>
660 <param name="sender"></param>
661 <param name="args"></param>
662 </member>
663 <member name="M:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.DiscoverVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
664 <summary>
665 Used internally
666 </summary>
667 <param name="sender"></param>
668 <param name="args"></param>
669 </member>
670 <member name="M:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
671 <summary>
672 Executes the algorithm
673 </summary>
674 <returns>The total number of components is the return value of the function</returns>
675 </member>
676 <member name="P:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.VisitedGraph">
677 <summary>
678 Visited graph
679 </summary>
680 </member>
681 <member name="P:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.Components">
682 <summary>
683 Gets the component map
684 </summary>
685 <value>
686 Component map
687 </value>
688 </member>
689 <member name="P:QuickGraph.Algorithms.ConnectedComponentsAlgorithm.Count">
690 <summary>
691 Gets the connected components count
692 </summary>
693 <value>
694 Connected component count
695 </value>
696 </member>
697 <member name="T:QuickGraph.Algorithms.Layout.FruchtermanReingoldGridVariantLayoutAlgorithm">
698 <summary>
699 The grid variant of the Fruchterman-Reingold graph layout algorithm.
700 </summary>
701 </member>
702 <member name="T:QuickGraph.Algorithms.Layout.FruchtermanReingoldLayoutAlgorithm">
703 <summary>
704 This algorithm is based on the following paper:
705 T. Fruchterman and E. Reingold. "Graph drawing by force-directed placement." Software Practice and Experience, 21(11):1129--1164, 1991.
706
707 Implemented by Arun Bhalla.
708 </summary>
709 </member>
710 <member name="T:QuickGraph.Algorithms.Layout.GridDirectedForcePotential">
711 <summary>
712 Summary description for GridDirectedForcePotential.
713 </summary>
714 </member>
715 <member name="T:QuickGraph.Algorithms.Layout.PointMath">
716 <summary>
717 Useful point algebra function.
718 </summary>
719 </member>
720 <member name="M:QuickGraph.Algorithms.Layout.PointMath.Distance(System.Drawing.PointF,System.Drawing.PointF)">
721 <summary>
722 Computes the Euclidian distance between two points
723 </summary>
724 <param name="p1">first point</param>
725 <param name="p2">second point</param>
726 <returns><c>|p1-p2|_2</c></returns>
727 </member>
728 <member name="M:QuickGraph.Algorithms.Layout.PointMath.SqrDistance(System.Drawing.PointF,System.Drawing.PointF)">
729 <summary>
730 Computes the square of the Euclidian distance between two points
731 </summary>
732 <param name="p1">first point</param>
733 <param name="p2">second point</param>
734 <returns><c>(p1.x-p2.x)^2+(p1.y-p2.y)^2</c></returns>
735 </member>
736 <member name="T:QuickGraph.Algorithms.MaximumFlow.EdmondsKarpMaximumFlowAlgorithm">
737 <summary>Edmonds-Karp Maximum Flow Algorithm</summary>
738 <remarks>
739 <para>
740 The <see cref="T:QuickGraph.Algorithms.MaximumFlow.EdmondsKarpMaximumFlowAlgorithm"/> class calculates
741 the maximum flow of a network. The calculated maximum flow will be
742 the return value of the function <see cref="M:QuickGraph.Algorithms.MaximumFlow.EdmondsKarpMaximumFlowAlgorithm.Compute(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)"/>.
743 The function also calculates the flow values <c>f[e]</c> for all e in E,
744 which are returned in the form of the residual capacity
745 <c>r[e] = c[e] - f[e]</c>.
746 </para>
747 <para>
748 There are several special requirements on the input graph
749 and property map parameters for this algorithm. First,
750 the directed graph <c>G=(V,E)</c> that represents the network must be augmented
751 to include the reverse edge for every edge in E. That is, the input graph
752 should be <c>Gin = (V,{E U ET})</c>.
753 The <c>reversedEdges</c> argument
754 must map each edge in the original graph to its reverse edge,
755 that is <c>e=(u,v) -> (v,u)</c> for all e in E.
756 The <c>capacities</c> argument must map each edge in E to a positive number,
757 and each edge in ET to 0.
758 </para>
759 <para>
760 The algorithm is due to Edmonds and Karp,
761 though we are using the variation called the <em>labeling algorithm</em>
762 described in Network Flows.
763 </para>
764 <para>
765 This algorithm provides a very simple and easy to implement solution
766 to the maximum flow problem. However, there are several reasons why
767 this algorithm is not as good as the <see cref="T:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm"/>
768 algorithm.
769 </para>
770 <para>
771 In the non-integer capacity case, the time complexity is O(V E^2)
772 which is worse than the time complexity of the <see cref="T:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm"/>
773 O(V^2E^1/2) for all but the sparsest of graphs.
774 </para>
775 <para>
776 In the integer capacity case, if the capacity bound U is very large then the
777 algorithm will take a long time.
778 </para>
779 </remarks>
780 </member>
781 <member name="T:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm">
782 <summary>
783 Abstract base class for maximum flow algorithms.
784 </summary>
785 </member>
786 <member name="M:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.EdgeDoubleDictionary,QuickGraph.Collections.EdgeEdgeDictionary)">
787 <summary>Constructs a maximum flow algorithm.</summary>
788 <param name="g">Graph to compute maximum flow on.</param>
789 <param name="capacities">edge capacities</param>
790 <param name="reversedEdges">reversed edge map</param>
791 <exception cref="T:System.ArgumentNullException"><paramref name="g"/> or
792 <paramref name="capacities"/> or <paramref name="reversedEdges"/> is a null
793 reference.
794 </exception>
795 </member>
796 <member name="M:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.Compute(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
797 <summary>
798
799 </summary>
800 <param name="src"></param>
801 <param name="sink"></param>
802 <returns></returns>
803 </member>
804 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.VisitedGraph">
805 <summary>
806
807 </summary>
808 </member>
809 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.Predecessors">
810 <summary>
811
812 </summary>
813 </member>
814 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.Capacities">
815 <summary>
816
817 </summary>
818 </member>
819 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.ResidualCapacities">
820 <summary>
821
822 </summary>
823 </member>
824 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.ReversedEdges">
825 <summary>
826
827 </summary>
828 </member>
829 <member name="P:QuickGraph.Algorithms.MaximumFlow.MaximumFlowAlgorithm.Colors">
830 <summary>
831
832 </summary>
833 </member>
834 <member name="M:QuickGraph.Algorithms.MaximumFlow.EdmondsKarpMaximumFlowAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.EdgeDoubleDictionary,QuickGraph.Collections.EdgeEdgeDictionary)">
835 <summary>
836
837 </summary>
838 <param name="g"></param>
839 <param name="capacities"></param>
840 <param name="reversedEdges"></param>
841 </member>
842 <member name="M:QuickGraph.Algorithms.MaximumFlow.EdmondsKarpMaximumFlowAlgorithm.Compute(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
843 <summary>
844 Computes the maximum flow between <paramref name="src"/> and
845 <paramref name="sink"/>
846 </summary>
847 <param name="src"></param>
848 <param name="sink"></param>
849 <returns></returns>
850 </member>
851 <member name="T:QuickGraph.Algorithms.MaximumFlow.NamespaceDoc">
852 <summary>
853 The <b>QuickGraph.Algorithms.MaximumFlow</b> contains
854 algorithms to compute network maximum flows.
855 <b>Under construction</b>
856 </summary>
857 </member>
858 <member name="T:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm">
859 <summary>Push-Relabel Maximum Flow Algorithm</summary>
860 <remarks>
861 <para>The <see cref="T:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm"/> class calculates the
862 maximum flow of a network. The calculated maximum flow will be the return value of
863 the <see cref="M:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm.Compute(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)"/>function. The function
864 also calculates the flow values <c>f(u,v)</c> for all <c>(u,v)</c> in E, which
865 are returned in the form of the residual capacity <c>r(u,v) = c(u,v) - f(u,v)</c>.
866 </para>
867 <para>
868 There are several special requirements on the input graph and property map
869 parameters for this algorithm. First, the directed graph <c>G=(V,E)</c> that
870 represents the network must be augmented to include the reverse edge for every
871 edge in E. That is, the input graph should be <c>Gin = (V,{E U E^T})</c>.
872 The <c>reversedEdges</c> argument must map each edge in the original graph to
873 its reverse edge, that is <c>(u,v) -> (v,u)</c> for all <c>(u,v)</c> in E.
874 The <c>capacities</c> argument must map each edge in E to a
875 positive number, and each edge in E^T to 0.
876 </para>
877 <para>
878 This algorithm was developed by Goldberg.
879 </para>
880 </remarks>
881 </member>
882 <member name="M:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IIndexedVertexListGraph,QuickGraph.Collections.EdgeDoubleDictionary,QuickGraph.Collections.EdgeEdgeDictionary)">
883 <summary>
884
885 </summary>
886 <param name="g"></param>
887 <param name="capacities"></param>
888 <param name="reversedEdges"></param>
889 </member>
890 <member name="M:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm.Compute(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
891 <summary>
892 Computes the maximum flow between <paramref name="src"/> and
893 <paramref name="sink"/>.
894 </summary>
895 <param name="src">The source node of the graph.</param>
896 <param name="sink">The sink node of the graph.</param>
897 <returns>The maximum flow of the graph.</returns>
898 </member>
899 <member name="M:QuickGraph.Algorithms.MaximumFlow.PushRelabelMaximumFlowAlgorithm.MaximumPreflow">
900 <summary>
901 This is the core part of the algorithm, "phase one."
902 </summary>
903 <returns></returns>
904 </member>
905 <member name="T:QuickGraph.Algorithms.Metrics.EdgeCoverageMetric">
906 <summary>
907 Summary description for VertexCoverageMetric.
908 </summary>
909 </member>
910 <member name="T:QuickGraph.Algorithms.Metrics.NamespaceDoc">
911 <summary>
912 The <b>QuickGraph.Algorithms.Metrics</b> contains <b>metrics</b> to
913 caracterize traversals, trees and graphs.
914 </summary>
915 </member>
916 <member name="T:QuickGraph.Algorithms.Metrics.VertexCoverageMetric">
917 <summary>
918 Summary description for VertexCoverageMetric.
919 </summary>
920 </member>
921 <member name="T:QuickGraph.Algorithms.MinimumFlow.MinimumFlowAlgorithm">
922 <summary>
923
924 </summary>
925 <remarks>
926 <para>
927 Algorithm extracted from <em>Efficient Algorithms for Constructing Testing Sets, Covering Paths and
928 Minimum Flows</em>, Alfred V. Aho, David Lee.
929 </para>
930 </remarks>
931 </member>
932 <member name="T:QuickGraph.Algorithms.NamespaceDoc">
933 <summary>
934 The <b>QuickGraph.Algorithms</b> namespace is the base namespace
935 for graph algorithms.
936 </summary>
937 <remarks>
938 This namespace contains all the graph algorithms implements by quickgraph.
939 Algorithms are classified by the type of problem they solve, and each
940 problem is separated in it's own namespace:
941 <list type="bulleted">
942 <item>
943 <term>Search</term>
944 <description>Basic algorithms such as the <see cref="T:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm"/> or
945 the <see cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>.
946 </description>
947 </item>
948 <item>
949 <term>ShortestPath</term>
950 <description>Computes the single source shortest path problem.</description>
951 </item>
952 <item>
953 <term>Clone</term>
954 <description>Cloning of graph related algorithms</description>
955 </item>
956 <item>
957 <term>MaximumFLow</term>
958 <description>Netword maximu flow algorithms</description>
959 </item>
960 </list>
961 <para>
962 A number of algorithm supports visitors defined in the Visitor namespace.
963 </para>
964 </remarks>
965 </member>
966 <member name="T:QuickGraph.Algorithms.PerfectMatching.NamespaceDoc">
967 <summary>
968 <para>
969 The <b>QuickGraph.Algorithms.PerfectMatching</b> namespace
970 contains classes for solving <b>Minimum Weight Perfect Matching</b>
971 problems.
972 </para>
973 <para>
974 A <em>perfect matching</em> of a graph G is a subset of edges
975 such that each node in G is met by exactly one edge of the matching.
976 </para>
977 <para>
978 Given a real weight <c>ec</c> for each edge <c>e</c> in G, a
979 <b>Minimum Weight Perfect Matching</b> problem is to find
980 a perfect matching M of minimum weight.
981 </para>
982 </summary>
983 </member>
984 <member name="T:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm">
985 <summary>
986 Wilson-Propp Cycle-Popping Algorithm for Random Tree Generation.
987 </summary>
988 <remarks name="CyclePoppingRandomTreeAlgorithm">
989<para>
990This class implements cycle-popping algorithms extracted from Section 6 and 7 of
991<em>How to Get Perfectly
992Random Sample from a Generic Markov Chain and Generate a Random
993Spanning Tree of a Directed Graph.</em>, by James Gary Propp and
994 David Bruce Wilson. If you want a deepter understanding of the article,
995it is suggested to you have a look at this excellent paper.
996</para>
997<para>
998The class implements two algorithms, namely <em>RandomTreeWithRoot</em>
999and <em>RandomTree</em>.
1000</para>
1001<para>
1002These algorithms apply to general digraphs. No strong connectivity is needed.
1003</para>
1004<para>
1005It must be emphasized that this algorithms generates trees where the edges are directe
1006<b>towards</b> the root.
1007</para>
1008</remarks>
1009 </member>
1010 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
1011 <summary>
1012 Constructs the algorithm around <paramref name="g"/>.
1013 </summary>
1014 <remarks>
1015 </remarks>
1016 <param name="g">visted graph</param>
1017 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
1018 </member>
1019 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain)">
1020 <summary>
1021 Constructs the algorithm around <paramref name="g"/> using
1022 the <paramref name="edgeChain"/> Markov chain.
1023 </summary>
1024 <param name="g">visited graph</param>
1025 <param name="edgeChain">
1026 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain generator
1027 </param>
1028 <exception cref="T:System.ArgumentNullException">
1029 <paramref name="g"/> or <paramref name="edgeChain"/>
1030 is a null reference
1031 </exception>
1032 </member>
1033 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
1034 <summary>
1035 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.InitializeVertex"/> event.
1036 </summary>
1037 <param name="v">vertex being initialized</param>
1038 </member>
1039 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
1040 <summary>
1041 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.FinishVertex"/> event.
1042 </summary>
1043 <param name="v">vertex being terminated</param>
1044 </member>
1045 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
1046 <summary>
1047 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.TreeEdge"/> event.
1048 </summary>
1049 <param name="e">edge being added to the tree</param>
1050 </member>
1051 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.OnClearTreeVertex(QuickGraph.Concepts.IVertex)">
1052 <summary>
1053 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.ClearTreeVertex"/> event.
1054 </summary>
1055 <param name="v">vertex being removed</param>
1056 </member>
1057 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Initialize">
1058 <summary>
1059 Initializes the tree.
1060 </summary>
1061 <remarks>
1062 <para>
1063 Initializes the color dictionary and raises
1064 the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.InitializeVertex"/> event for each
1065 <see cref="T:QuickGraph.Concepts.IVertex"/> in the graph.
1066 </para>
1067 </remarks>
1068 </member>
1069 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.NotInTree(QuickGraph.Concepts.IVertex)">
1070 <summary>
1071 Gets a value indicating if <paramref name="u"/> is
1072 not in the tree.
1073 </summary>
1074 <remarks>
1075 This method checks that <paramref name="u"/> color is white.
1076 </remarks>
1077 <param name="u">vertex to test</param>
1078 <returns>true if not in the tree, false otherwise.</returns>
1079 </member>
1080 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.SetInTree(QuickGraph.Concepts.IVertex)">
1081 <summary>
1082 Adds <paramref name="u"/> to the tree and raises the
1083 <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.FinishVertex"/> event.
1084 </summary>
1085 <remarks>
1086 Set <paramref name="u"/> color to black.
1087 </remarks>
1088 <param name="u">vertex to add</param>
1089 </member>
1090 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.RandomSuccessor(QuickGraph.Concepts.IVertex)">
1091 <summary>
1092 Gets the next <see cref="T:QuickGraph.Concepts.IEdge"/> out-edge according to
1093 the Markov Chain generator.
1094 </summary>
1095 <remarks>
1096 This method uses the <see cref="T:QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain"/> instance
1097 to compute the next random out-edge. If <paramref name="u"/> has
1098 no out-edge, null is returned.
1099 </remarks>
1100 <param name="u">Source vertex</param>
1101 <returns>next edge in the chain, null if u has no out-edges</returns>
1102 </member>
1103 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Tree(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IEdge)">
1104 <summary>
1105 Sets <paramref name="next"/> as the next edge of <paramref name="u"/>
1106 in the tree, and raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.TreeEdge"/> event.
1107 </summary>
1108 <remarks>
1109 <para>
1110 If <paramref name="next"/> is null, nothing is done.
1111 </para>
1112 </remarks>
1113 <param name="u">source vertex</param>
1114 <param name="next">next edge in tree</param>
1115 </member>
1116 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.NextInTree(QuickGraph.Concepts.IVertex)">
1117 <summary>
1118 Gets the next vertex in the tree.
1119 </summary>
1120 <param name="u">source vertex</param>
1121 <returns>next vertex in tree if any, null otherwise</returns>
1122 </member>
1123 <!-- Badly formed XML comment ignored for member "M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Chance(System.Double)" -->
1124 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.ClearTree(QuickGraph.Concepts.IVertex)">
1125 <summary>
1126 Clears <paramref name="u"/> from the tree and raises the
1127 <see cref="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.ClearTreeVertex"/> event.
1128 </summary>
1129 <remarks>
1130 </remarks>
1131 <param name="u">vertex to clear</param>
1132 </member>
1133 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.RandomTreeWithRoot(QuickGraph.Concepts.IVertex)">
1134 <summary>
1135 Generates a random tree rooted at <see cref="!:root"/>.
1136 </summary>
1137 <remarks>
1138 <para>
1139 This method implements the Cycle-Hopping Random Tree generation
1140 algorithm proposed in Propp-Wilson paper. See class summary for
1141 further details.
1142 </para>
1143 </remarks>
1144 <param name="root">root vertex</param>
1145 <exception cref="T:System.ArgumentNullException">root is a null reference</exception>
1146 </member>
1147 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.RandomTree">
1148 <summary>
1149 Generates a random tree with no specified root.
1150 </summary>
1151 </member>
1152 <member name="M:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Attempt(System.Double)">
1153 <summary>
1154 Attemps to create a new random tree with probability transition
1155 <paramref name="eps"/>.
1156 </summary>
1157 <param name="eps">probability transition</param>
1158 <returns>true if random tree generated, false otherwise</returns>
1159 </member>
1160 <member name="P:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.VisitedGraph">
1161 <summary>
1162 Gets the visited <see cref="T:QuickGraph.Concepts.Traversals.IVertexListGraph"/> instance
1163 </summary>
1164 <value>
1165 Visited <see cref="T:QuickGraph.Concepts.Traversals.IVertexListGraph"/> instance
1166 </value>
1167 </member>
1168 <member name="P:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Colors">
1169 <summary>
1170 Get the <see cref="T:QuickGraph.Concepts.IVertex"/> color dictionary
1171 </summary>
1172 <value>
1173 Vertex color dictionary
1174 </value>
1175 </member>
1176 <member name="P:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.EdgeChain">
1177 <summary>
1178 Gets or sets the Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain.
1179 </summary>
1180 <value>
1181 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain.
1182 </value>
1183 <exception cref="T:System.ArgumentNullException">
1184 set property, value is a null reference.
1185 </exception>
1186 </member>
1187 <member name="P:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Rnd">
1188 <summary>
1189 Gets or sets the random number generator used in <c>RandomTree</c>.
1190 </summary>
1191 <value>
1192 <see cref="T:System.Random"/> number generator
1193 </value>
1194 </member>
1195 <member name="P:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.Successors">
1196 <summary>
1197 Gets the dictionary of vertex edges successors in the generated
1198 random tree.
1199 </summary>
1200 <value>
1201 Vertex - Edge successor dictionary.
1202 </value>
1203 </member>
1204 <member name="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.InitializeVertex">
1205 <summary>
1206 Occurs when a vertex is initialized
1207 </summary>
1208 <remarks/>
1209 </member>
1210 <member name="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.FinishVertex">
1211 <summary>
1212 Occurs when a vertex is added to the tree.
1213 </summary>
1214 <remarks/>
1215 </member>
1216 <member name="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.TreeEdge">
1217 <summary>
1218 Occurs when an edge is added to the tree.
1219 </summary>
1220 <remarks/>
1221 </member>
1222 <member name="E:QuickGraph.Algorithms.RandomWalks.CyclePoppingRandomTreeAlgorithm.ClearTreeVertex">
1223 <summary>
1224 Occurs when a vertex is removed from the tree.
1225 </summary>
1226 <remarks/>
1227 </member>
1228 <member name="T:QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain">
1229 <summary>
1230 When implemented by a class, defines methods to generate a
1231 random Markov chain of <see cref="T:QuickGraph.Concepts.IEdge"/>.
1232 </summary>
1233 <remarks>
1234 <para>
1235 This interface defines the <c>Successor</c> method which generates
1236 a Markov chain of <see cref="T:QuickGraph.Concepts.IEdge"/>. Implemented classes can choose
1237 the according distribution properties.
1238 </para>
1239 </remarks>
1240 </member>
1241 <member name="M:QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain.Successor(QuickGraph.Concepts.Traversals.IImplicitGraph,QuickGraph.Concepts.IVertex)">
1242 <summary>
1243 Selects the next out-<see cref="T:QuickGraph.Concepts.IEdge"/> in the Markov Chain.
1244 </summary>
1245 <param name="g">visted graph</param>
1246 <param name="u">source vertex</param>
1247 <returns>Random next out-edge</returns>
1248 <exception cref="T:System.ArgumentNullException">
1249 <paramref name="g"/> or <paramref name="u"/> is a null reference
1250 </exception>
1251 </member>
1252 <member name="T:QuickGraph.Algorithms.RandomWalks.Markov">
1253 <summary>
1254 Summary description for Markov.
1255 </summary>
1256 </member>
1257 <member name="T:QuickGraph.Algorithms.RandomWalks.NamespaceDoc">
1258 <summary>
1259 The <b>QuickGraph.Algorithms.RandomWalks</b> contains
1260 algorithm to generate random walks or trees over graphs.
1261 </summary>
1262 </member>
1263 <member name="T:QuickGraph.Algorithms.RandomWalks.NormalizedMarkovEdgeChain">
1264 <summary>
1265 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain generator with the propability vector
1266 equally distributed over the out-edges.
1267 </summary>
1268 <remarks>
1269 <value>
1270 This class can be used to generate a Markov Chain of <see cref="T:QuickGraph.Concepts.IEdge"/>
1271 instance. The probability vector is computed such that each
1272 out-edge has the same probability:
1273 <code>
1274 outEdgeCount = OutDegree(u)
1275 Pr[e_i] = 1/outEdgeCount
1276 </code>
1277 </value>
1278 </remarks>
1279 </member>
1280 <member name="M:QuickGraph.Algorithms.RandomWalks.NormalizedMarkovEdgeChain.Successor(QuickGraph.Concepts.Traversals.IImplicitGraph,QuickGraph.Concepts.IVertex)">
1281 <summary>
1282 Selects the next out-<see cref="T:QuickGraph.Concepts.IEdge"/> in the Markov Chain.
1283 </summary>
1284 <param name="g">visted graph</param>
1285 <param name="u">source vertex</param>
1286 <returns>Random next out-edge</returns>
1287 <exception cref="T:System.ArgumentNullException">
1288 <paramref name="g"/> or <paramref name="u"/> is a null reference
1289 </exception>
1290 </member>
1291 <member name="P:QuickGraph.Algorithms.RandomWalks.NormalizedMarkovEdgeChain.Rnd">
1292 <summary>
1293 Gets or sets the random generator
1294 </summary>
1295 <value>
1296 Random number generator
1297 </value>
1298 </member>
1299 <member name="T:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm">
1300 <summary>
1301 Stochastic Random Walk Generation.
1302 </summary>
1303 <remarks>
1304 <para>
1305 This algorithms walks randomly across a directed graph. The probability
1306 to choose the next out-edges is provided by a <see cref="T:QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain"/>
1307 instance.
1308 </para>
1309 <para><b>Events</b></para>
1310 <para>
1311 The <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.StartVertex"/> is raised on the root vertex of the walk.
1312 This event is raised once.
1313 </para>
1314 <para>
1315 On each new edge in the walk, the <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.TreeEdge"/> is raised with
1316 the edge added to the walk tree.
1317 </para>
1318 <para>
1319 The <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EndVertex"/> is raised on the last vertex of the walk.
1320 This event is raised once.
1321 </para>
1322 <para>
1323 Custom end of walk condition can be provided by attacing a
1324 <see cref="T:QuickGraph.Concepts.Predicates.IEdgePredicate"/> instance to the <see cref="P:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EndPredicate"/>
1325 property.
1326 </para>
1327 </remarks>
1328 <example>ea
1329 In this example, we walk in a graph and output the edge using
1330 events:
1331 <code>
1332 // define delegates
1333 public void TreeEdge(Object sender, EdgeEventArgs e)
1334 {
1335 Console.WriteLine(
1336 "{0}->{1}",
1337 e.Edge.Source.ToString(),
1338 e.Edge.Target.ToString());
1339 }
1340
1341 ...
1342
1343 IVertexListGraph g = ...;
1344 // create algo
1345 RandomWalkAlgorithm walker = new RandomWalkAlgorithm(g);
1346
1347 // attach event handler
1348 walker.TreeEdge += new EdgeEventHandler(this.TreeEdge);
1349 // walk until we read a dead end.
1350 waler.Generate(int.MaxValue);
1351 </code>
1352 </example>
1353 </member>
1354 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
1355 <summary>
1356 Constructs the algorithm around <paramref name="g"/>.
1357 </summary>
1358 <remarks>
1359 </remarks>
1360 <param name="g">visted graph</param>
1361 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
1362 </member>
1363 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain)">
1364 <summary>
1365 Constructs the algorithm around <paramref name="g"/> using
1366 the <paramref name="edgeChain"/> Markov chain.
1367 </summary>
1368 <param name="g">visited graph</param>
1369 <param name="edgeChain">
1370 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain generator
1371 </param>
1372 <exception cref="T:System.ArgumentNullException">
1373 <paramref name="g"/> or <paramref name="edgeChain"/>
1374 is a null reference
1375 </exception>
1376 </member>
1377 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
1378 <summary>
1379 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.StartVertex"/> event.
1380 </summary>
1381 <param name="v">vertex that raised the event</param>
1382 </member>
1383 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.OnEndVertex(QuickGraph.Concepts.IVertex)">
1384 <summary>
1385 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EndVertex"/> event.
1386 </summary>
1387 <param name="v">vertex that raised the event</param>
1388 </member>
1389 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
1390 <summary>
1391 Raises the <see cref="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.TreeEdge"/> event.
1392 </summary>
1393 <param name="e">edge being added to the tree</param>
1394 </member>
1395 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.RandomSuccessor(QuickGraph.Concepts.IVertex)">
1396 <summary>
1397 Gets the next <see cref="T:QuickGraph.Concepts.IEdge"/> out-edge according to
1398 the Markov Chain generator.
1399 </summary>
1400 <remarks>
1401 This method uses the <see cref="T:QuickGraph.Algorithms.RandomWalks.IMarkovEdgeChain"/> instance
1402 to compute the next random out-edge. If <paramref name="u"/> has
1403 no out-edge, null is returned.
1404 </remarks>
1405 <param name="u">Source vertex</param>
1406 <returns>next edge in the chain, null if u has no out-edges</returns>
1407 </member>
1408 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.Generate(QuickGraph.Concepts.IVertex)">
1409 <summary>
1410 Generates a walk of <paramref name="walkCount">steps</paramref>
1411 </summary>
1412 <param name="walkCount">number of steps</param>
1413 </member>
1414 <member name="M:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.Generate(QuickGraph.Concepts.IVertex,System.Int32)">
1415 <summary>
1416 Generates a walk of <paramref name="walkCount">steps</paramref>
1417 </summary>
1418 <param name="root">root vertex</param>
1419 <param name="walkCount">number of steps</param>
1420 </member>
1421 <member name="P:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.VisitedGraph">
1422 <summary>
1423 Gets the visited <see cref="T:QuickGraph.Concepts.Traversals.IVertexListGraph"/> instance
1424 </summary>
1425 <value>
1426 Visited <see cref="T:QuickGraph.Concepts.Traversals.IVertexListGraph"/> instance
1427 </value>
1428 </member>
1429 <member name="P:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EdgeChain">
1430 <summary>
1431 Gets or sets the Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain.
1432 </summary>
1433 <value>
1434 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain.
1435 </value>
1436 <exception cref="T:System.ArgumentNullException">
1437 set property, value is a null reference.
1438 </exception>
1439 </member>
1440 <member name="P:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.Rnd">
1441 <summary>
1442 Gets or sets the random number generator used in <c>RandomTree</c>.
1443 </summary>
1444 <value>
1445 <see cref="T:System.Random"/> number generator
1446 </value>
1447 </member>
1448 <member name="P:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EndPredicate">
1449 <summary>
1450 Gets or sets an end of traversal predicate.
1451 </summary>
1452 <value>
1453 End of traversal predicate.
1454 </value>
1455 </member>
1456 <member name="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.StartVertex">
1457 <summary>
1458 Raised on the source vertex once before the start of the search.
1459 </summary>
1460 </member>
1461 <member name="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.EndVertex">
1462 <summary>
1463 Raised on the sink vertex once after the end of the search.
1464 </summary>
1465 </member>
1466 <member name="E:QuickGraph.Algorithms.RandomWalks.RandomWalkAlgorithm.TreeEdge">
1467 <summary>
1468 Occurs when an edge is added to the tree.
1469 </summary>
1470 <remarks/>
1471 </member>
1472 <member name="T:QuickGraph.Algorithms.RandomWalks.VanishingWeightedMarkovEdgeChain">
1473 <summary>
1474 Summary description for VanishingWeightedMarkovEdgeChain.
1475 </summary>
1476 </member>
1477 <member name="T:QuickGraph.Algorithms.RandomWalks.WeightedMarkovEdgeChain">
1478 <summary>
1479 Markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain generator with the propability vector
1480 distributed over the out-edges weights.
1481 </summary>
1482 <remarks>
1483 <value>
1484 This class can be used to generate a Markov Chain of <see cref="T:QuickGraph.Concepts.IEdge"/>
1485 instance. The probability vector is computed such that each
1486 out-edge weight sum is 1 (to have a stochastic vector):
1487 <code>
1488 outWeight = \sum weight[e_i]
1489 Pr[e_i] = weight[e_i]/outWeight
1490 </code>
1491 </value>
1492 </remarks>
1493 </member>
1494 <member name="M:QuickGraph.Algorithms.RandomWalks.WeightedMarkovEdgeChain.#ctor(QuickGraph.Collections.EdgeDoubleDictionary)">
1495 <summary>
1496 Construct a markov <see cref="T:QuickGraph.Concepts.IEdge"/> chain based on the
1497 <see cref="T:QuickGraph.Collections.EdgeDoubleDictionary"/> edge weight dictionary.
1498 </summary>
1499 <param name="weights">edge weight dictionary</param>
1500 <exception cref="T:System.ArgumentNullException">weights is a null reference
1501 </exception>
1502 </member>
1503 <member name="M:QuickGraph.Algorithms.RandomWalks.WeightedMarkovEdgeChain.Successor(QuickGraph.Concepts.Traversals.IImplicitGraph,QuickGraph.Concepts.IVertex)">
1504 <summary>
1505 Selects the next out-<see cref="T:QuickGraph.Concepts.IEdge"/> in the Markov Chain.
1506 </summary>
1507 <param name="g">visted graph</param>
1508 <param name="u">source vertex</param>
1509 <returns>Random next out-edge</returns>
1510 <exception cref="T:System.ArgumentNullException">
1511 <paramref name="g"/> or <paramref name="u"/> is a null reference
1512 </exception>
1513 </member>
1514 <member name="P:QuickGraph.Algorithms.RandomWalks.WeightedMarkovEdgeChain.Rnd">
1515 <summary>
1516 Gets or sets the random generator
1517 </summary>
1518 <value>
1519 Random number generator
1520 </value>
1521 </member>
1522 <member name="P:QuickGraph.Algorithms.RandomWalks.WeightedMarkovEdgeChain.Weights">
1523 <summary>
1524 Gets the edge-weight dictionary
1525 </summary>
1526 <value>
1527 Edge weight dictionary
1528 </value>
1529 </member>
1530 <member name="T:QuickGraph.Algorithms.Ranking.PageRankAlgorithm">
1531 <summary>
1532 Algorithm that computes the PageRank ranking over a graph.
1533 </summary>
1534 <remarks>
1535 <para>
1536 <b>PageRank</b> is a method that initially designed to rank web pages
1537 objectively and mechanically. In fact, it is one of the building block
1538 of the famous Google search engine.
1539 </para>
1540 <para>
1541 The idea behind PageRank is simple and intuitive: pages that are important are referenced
1542 by other important pages. There is an important literature on the web that explains
1543 PageRank: http://www-db.stanford.edu/~backrub/google.html,
1544 http://www.webworkshop.net/pagerank.html,
1545 http://www.miswebdesign.com/resources/articles/pagerank-2.html
1546 </para>
1547 <para>
1548 The PageRank is computed by using the following iterative formula:
1549 <code>
1550 PR(A) = (1-d) + d (PR(T1)/C(T1) + ... + PR(Tn)/C(Tn))
1551 </code>
1552 where <c>PR</c> is the PageRank, <c>d</c> is a damping factor usually set to 0.85,
1553 <c>C(v)</c> is the number of out edgesof <c>v</c>.
1554 </para>
1555 </remarks>
1556 </member>
1557 <member name="M:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph)">
1558 <summary>
1559 Creates a PageRank algorithm around the visited graph
1560 </summary>
1561 <param name="visitedGraph">
1562 Visited <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph"/> instance.
1563 </param>
1564 <exception cref="T:System.ArgumentNullException">
1565 <param name="visitedGraph"/> is a null reference (Nothing in Visual Basic).
1566 </exception>
1567 </member>
1568 <member name="M:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.InitializeRanks">
1569 <summary>
1570 Initializes the rank map.
1571 </summary>
1572 <remarks>
1573 <para>
1574 This method clears the rank map and populates it with rank to one for all vertices.
1575 </para>
1576 </remarks>
1577 </member>
1578 <member name="M:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.RemoveDanglingLinks">
1579 <summary>
1580 Iteratively removes the dangling links from the rank map
1581 </summary>
1582 </member>
1583 <member name="M:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.Compute">
1584 <summary>
1585 Computes the PageRank over the <see cref="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.VisitedGraph"/>.
1586 </summary>
1587 </member>
1588 <member name="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.VisitedGraph">
1589 <summary>
1590 Gets the visited graph
1591 </summary>
1592 <value>
1593 A <see cref="T:QuickGraph.Concepts.Traversals.IVertexListGraph"/> instance
1594 </value>
1595 </member>
1596 <member name="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.Ranks">
1597 <summary>
1598 Gets the page rank dictionary
1599 </summary>
1600 <value>
1601 The <see cref="T:QuickGraph.Collections.VertexDoubleDictionary"/> of <see cref="T:QuickGraph.Concepts.IVertex"/> - rank entries.ank entries.
1602 </value>
1603 </member>
1604 <member name="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.Damping">
1605 <summary>
1606 Gets or sets the damping factor in the PageRank iteration.
1607 </summary>
1608 <value>
1609 Damping factor in the PageRank formula (<c>d</c>).
1610 </value>
1611 </member>
1612 <member name="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.Tolerance">
1613 <summary>
1614 Gets or sets the tolerance to stop iteration
1615 </summary>
1616 <value>
1617 The tolerance to stop iteration.
1618 </value>
1619 </member>
1620 <member name="P:QuickGraph.Algorithms.Ranking.PageRankAlgorithm.MaxIteration">
1621 <summary>
1622 Gets or sets the maximum number of iterations
1623 </summary>
1624 <value>
1625 The maximum number of iteration.
1626 </value>
1627 </member>
1628 <member name="T:QuickGraph.Representations.AdjacencyGraph">
1629 <summary>
1630 A mutable incidence graph implemetation
1631 </summary>
1632 <remarks>
1633 <seealso cref="T:QuickGraph.Concepts.Modifications.IVertexMutableGraph"/>
1634 <seealso cref="T:QuickGraph.Concepts.Modifications.IMutableIncidenceGraph"/>
1635 </remarks>
1636 </member>
1637 <member name="M:QuickGraph.Representations.AdjacencyGraph.#ctor">
1638 <summary>
1639 Builds a new empty directed graph with default vertex and edge
1640 provider.
1641 </summary>
1642 <remarks>
1643 </remarks>
1644 </member>
1645 <member name="M:QuickGraph.Representations.AdjacencyGraph.#ctor(System.Boolean)">
1646 <summary>
1647 Builds a new empty directed graph with default vertex and edge
1648 provider.
1649 </summary>
1650 <param name="allowParallelEdges">true if parallel edges are allowed</param>
1651 </member>
1652 <member name="M:QuickGraph.Representations.AdjacencyGraph.#ctor(QuickGraph.Concepts.Providers.IVertexProvider,QuickGraph.Concepts.Providers.IEdgeProvider,System.Boolean)">
1653 <summary>
1654 Builds a new empty directed graph with custom providers
1655 </summary>
1656 <param name="allowParallelEdges">true if the graph allows
1657 multiple edges</param>
1658 <param name="edgeProvider">custom edge provider</param>
1659 <param name="vertexProvider">custom vertex provider</param>
1660 <exception cref="T:System.ArgumentNullException">
1661 vertexProvider or edgeProvider is a null reference
1662 </exception>
1663 </member>
1664 <member name="M:QuickGraph.Representations.AdjacencyGraph.Clear">
1665 <summary>
1666 Remove all of the edges and vertices from the graph.
1667 </summary>
1668 </member>
1669 <member name="M:QuickGraph.Representations.AdjacencyGraph.AddVertex">
1670 <summary>
1671 Add a new vertex to the graph and returns it.
1672
1673 Complexity: 1 insertion.
1674 </summary>
1675 <returns>Create vertex</returns>
1676 </member>
1677 <member name="M:QuickGraph.Representations.AdjacencyGraph.AddVertex(QuickGraph.Concepts.IVertex)">
1678 <summary>
1679 Add a new vertex to the graph and returns it.
1680
1681 Complexity: 1 insertion.
1682 </summary>
1683 <returns>Create vertex</returns>
1684 </member>
1685 <member name="M:QuickGraph.Representations.AdjacencyGraph.AddEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
1686 <summary>
1687 Add a new vertex from source to target
1688
1689 Complexity: 2 search + 1 insertion
1690 </summary>
1691 <param name="source">Source vertex</param>
1692 <param name="target">Target vertex</param>
1693 <returns>Created Edge</returns>
1694 <exception cref="T:System.ArgumentNullException">source or target is null</exception>
1695 <exception cref="T:System.Exception">source or target are not part of the graph</exception>
1696 </member>
1697 <member name="M:QuickGraph.Representations.AdjacencyGraph.AddEdge(QuickGraph.Concepts.IEdge)">
1698 <summary>
1699 Used for serialization. Not for private use.
1700 </summary>
1701 <param name="e">edge to add.</param>
1702 </member>
1703 <member name="M:QuickGraph.Representations.AdjacencyGraph.OutEdgesEmpty(QuickGraph.Concepts.IVertex)">
1704 <summary>
1705 Gets a value indicating if the set of out-edges is empty
1706 </summary>
1707 <remarks>
1708 <para>
1709 Usually faster that calling <see cref="M:QuickGraph.Representations.AdjacencyGraph.OutDegree(QuickGraph.Concepts.IVertex)"/>.
1710 </para>
1711 </remarks>
1712 <value>
1713 true if the out-edge set is empty, false otherwise.
1714 </value>
1715 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
1716 </member>
1717 <member name="M:QuickGraph.Representations.AdjacencyGraph.OutDegree(QuickGraph.Concepts.IVertex)">
1718 <summary>
1719 Returns the number of out-degree edges of v
1720 </summary>
1721 <param name="v">vertex</param>
1722 <returns>number of out-edges of the <see cref="T:QuickGraph.Concepts.IVertex"/> v</returns>
1723 </member>
1724 <member name="M:QuickGraph.Representations.AdjacencyGraph.OutEdges(QuickGraph.Concepts.IVertex)">
1725 <summary>
1726 Returns an iterable collection over the edge connected to v
1727 </summary>
1728 <param name="v"></param>
1729 <returns></returns>
1730 </member>
1731 <member name="M:QuickGraph.Representations.AdjacencyGraph.QuickGraph#Concepts#Traversals#IImplicitGraph#OutEdges(QuickGraph.Concepts.IVertex)">
1732 <summary>
1733 Incidence graph implementation
1734 </summary>
1735 </member>
1736 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectSingleOutEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
1737 <summary>
1738 Returns the first out-edge that matches the predicate
1739 </summary>
1740 <param name="v"></param>
1741 <param name="ep">Edge predicate</param>
1742 <returns>null if not found, otherwize the first Edge that
1743 matches the predicate.</returns>
1744 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
1745 </member>
1746 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectOutEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
1747 <summary>
1748 Returns the collection of out-edges that matches the predicate
1749 </summary>
1750 <param name="v"></param>
1751 <param name="ep">Edge predicate</param>
1752 <returns>enumerable colleciton of vertices that matches the
1753 criteron</returns>
1754 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
1755 </member>
1756 <member name="M:QuickGraph.Representations.AdjacencyGraph.QuickGraph#Concepts#Traversals#IFilteredIncidenceGraph#SelectOutEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
1757 <summary>
1758
1759 </summary>
1760 <param name="v"></param>
1761 <param name="ep"></param>
1762 <returns></returns>
1763 </member>
1764 <member name="M:QuickGraph.Representations.AdjacencyGraph.RemoveVertex(QuickGraph.Concepts.IVertex)">
1765 <summary>
1766 Removes the vertex from the graph.
1767 </summary>
1768 <param name="v">vertex to remove</param>
1769 <exception cref="T:System.ArgumentNullException">v is null</exception>
1770 </member>
1771 <member name="M:QuickGraph.Representations.AdjacencyGraph.ClearVertex(QuickGraph.Concepts.IVertex)">
1772 <summary>
1773 Remove all edges to and from vertex u from the graph.
1774 </summary>
1775 <param name="v"></param>
1776 </member>
1777 <member name="M:QuickGraph.Representations.AdjacencyGraph.RemoveEdge(QuickGraph.Concepts.IEdge)">
1778 <summary>
1779 Removes an edge from the graph.
1780
1781 Complexity: 2 edges removed from the vertex edge list + 1 edge
1782 removed from the edge list.
1783 </summary>
1784 <param name="e">edge to remove</param>
1785 <exception cref="T:System.ArgumentNullException">e is null</exception>
1786 </member>
1787 <member name="M:QuickGraph.Representations.AdjacencyGraph.RemoveEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
1788 <summary>
1789 Remove the edge (u,v) from the graph.
1790 If the graph allows parallel edges this remove all occurrences of
1791 (u,v).
1792 </summary>
1793 <param name="u">source vertex</param>
1794 <param name="v">target vertex</param>
1795 </member>
1796 <member name="M:QuickGraph.Representations.AdjacencyGraph.RemoveEdgeIf(QuickGraph.Concepts.Predicates.IEdgePredicate)">
1797 <summary>
1798 Remove all the edges from graph g for which the predicate pred
1799 returns true.
1800 </summary>
1801 <param name="pred">edge predicate</param>
1802 </member>
1803 <member name="M:QuickGraph.Representations.AdjacencyGraph.RemoveOutEdgeIf(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
1804 <summary>
1805 Remove all the out-edges of vertex u for which the predicate pred
1806 returns true.
1807 </summary>
1808 <param name="u">vertex</param>
1809 <param name="pred">edge predicate</param>
1810 </member>
1811 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectSingleVertex(QuickGraph.Concepts.Predicates.IVertexPredicate)">
1812 <summary>
1813 Returns the first vertex that matches the predicate
1814 </summary>
1815 <param name="vp">vertex predicate</param>
1816 <returns>null if not found, otherwize the first vertex that
1817 matches the predicate.</returns>
1818 <exception cref="T:System.ArgumentNullException">vp is null</exception>
1819 </member>
1820 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectVertices(QuickGraph.Concepts.Predicates.IVertexPredicate)">
1821 <summary>
1822 Returns the collection of vertices that matches the predicate
1823 </summary>
1824 <param name="vp">vertex predicate</param>
1825 <returns>enumerable colleciton of vertices that matches the
1826 criteron</returns>
1827 <exception cref="T:System.ArgumentNullException">vp is null</exception>
1828 </member>
1829 <member name="M:QuickGraph.Representations.AdjacencyGraph.ContainsVertex(QuickGraph.Concepts.IVertex)">
1830 <summary>
1831 Tests if a vertex is part of the graph
1832 </summary>
1833 <param name="v">Vertex to test</param>
1834 <returns>true if is part of the graph, false otherwize</returns>
1835 </member>
1836 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectSingleEdge(QuickGraph.Concepts.Predicates.IEdgePredicate)">
1837 <summary>
1838 Returns the first Edge that matches the predicate
1839 </summary>
1840 <param name="ep">Edge predicate</param>
1841 <returns>null if not found, otherwize the first Edge that
1842 matches the predicate.</returns>
1843 <exception cref="T:System.ArgumentNullException">ep is null</exception>
1844 </member>
1845 <member name="M:QuickGraph.Representations.AdjacencyGraph.SelectEdges(QuickGraph.Concepts.Predicates.IEdgePredicate)">
1846 <summary>
1847 Returns the collection of edges that matches the predicate
1848 </summary>
1849 <param name="ep">Edge predicate</param>
1850 <returns>enumerable colleciton of vertices that matches the
1851 criteron</returns>
1852 <exception cref="T:System.ArgumentNullException">ep is null</exception>
1853 </member>
1854 <member name="M:QuickGraph.Representations.AdjacencyGraph.QuickGraph#Concepts#Traversals#IFilteredEdgeListGraph#SelectEdges(QuickGraph.Concepts.Predicates.IEdgePredicate)">
1855 <summary>
1856
1857 </summary>
1858 <param name="ep"></param>
1859 <returns></returns>
1860 </member>
1861 <member name="M:QuickGraph.Representations.AdjacencyGraph.ContainsEdge(QuickGraph.Concepts.IEdge)">
1862 <summary>
1863 Tests if a edge is part of the graph
1864 </summary>
1865 <param name="e">Edge to test</param>
1866 <returns>true if is part of the graph, false otherwize</returns>
1867 </member>
1868 <member name="M:QuickGraph.Representations.AdjacencyGraph.ContainsEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
1869 <summary>
1870 Test if an edge (u,v) is part of the graph
1871 </summary>
1872 <param name="u">source vertex</param>
1873 <param name="v">target vertex</param>
1874 <returns>true if part of the graph</returns>
1875 </member>
1876 <member name="M:QuickGraph.Representations.AdjacencyGraph.AdjacentVertices(QuickGraph.Concepts.IVertex)">
1877 <summary>
1878 Gets an enumerable collection of adjacent vertices
1879 </summary>
1880 <param name="v"></param>
1881 <returns>Enumerable collection of adjacent vertices</returns>
1882 </member>
1883 <member name="P:QuickGraph.Representations.AdjacencyGraph.IsDirected">
1884 <summary>
1885 Gets a value indicating if the graph is directed.
1886 </summary>
1887 <value>
1888 true if the graph is directed, false if undirected.
1889 </value>
1890 <remarks>
1891 <seealso cref="T:QuickGraph.Concepts.IGraph"/>
1892 </remarks>
1893 </member>
1894 <member name="P:QuickGraph.Representations.AdjacencyGraph.AllowParallelEdges">
1895 <summary>
1896 Gets a value indicating if the graph allows parralell edges.
1897 </summary>
1898 <value>
1899 true if the graph is a multi-graph, false otherwise
1900 </value>
1901 <remarks>
1902 <seealso cref="T:QuickGraph.Concepts.IGraph"/>
1903 </remarks>
1904 </member>
1905 <member name="P:QuickGraph.Representations.AdjacencyGraph.VertexOutEdges">
1906 <summary>
1907 Vertex Out edges dictionary
1908 </summary>
1909 <value>
1910 Dictionary of <see cref="T:QuickGraph.Concepts.IVertex"/> to out edge collection.
1911 </value>
1912 </member>
1913 <member name="P:QuickGraph.Representations.AdjacencyGraph.VertexProvider">
1914 <summary>
1915 Gets the <see cref="T:QuickGraph.Concepts.IVertex"/> provider
1916 </summary>
1917 <value>
1918 <see cref="T:QuickGraph.Concepts.IVertex"/> provider
1919 </value>
1920 </member>
1921 <member name="P:QuickGraph.Representations.AdjacencyGraph.EdgeProvider">
1922 <summary>
1923 Gets the <see cref="T:QuickGraph.Concepts.IEdge"/> provider
1924 </summary>
1925 <value>
1926 <see cref="T:QuickGraph.Concepts.IEdge"/> provider
1927 </value>
1928 </member>
1929 <member name="P:QuickGraph.Representations.AdjacencyGraph.VerticesEmpty">
1930 <summary>
1931 Gets a value indicating if the vertex set is empty
1932 </summary>
1933 <para>
1934 Usually faster (O(1)) that calling <c>VertexCount</c>.
1935 </para>
1936 <value>
1937 true if the vertex set is empty, false otherwise.
1938 </value>
1939 </member>
1940 <member name="P:QuickGraph.Representations.AdjacencyGraph.VerticesCount">
1941 <summary>
1942 Gets the number of vertices
1943 </summary>
1944 <value>
1945 Number of vertices in the graph
1946 </value>
1947 </member>
1948 <member name="P:QuickGraph.Representations.AdjacencyGraph.Vertices">
1949 <summary>
1950 Enumerable collection of vertices.
1951 </summary>
1952 </member>
1953 <member name="P:QuickGraph.Representations.AdjacencyGraph.QuickGraph#Concepts#Traversals#IVertexListGraph#Vertices">
1954 <summary>
1955
1956 </summary>
1957 </member>
1958 <member name="P:QuickGraph.Representations.AdjacencyGraph.EdgesEmpty">
1959 <summary>
1960 Gets a value indicating if the vertex set is empty
1961 </summary>
1962 <remarks>
1963 <para>
1964 Usually faster that calling <see cref="P:QuickGraph.Representations.AdjacencyGraph.EdgesCount"/>.
1965 </para>
1966 </remarks>
1967 <value>
1968 true if the vertex set is empty, false otherwise.
1969 </value>
1970 </member>
1971 <member name="P:QuickGraph.Representations.AdjacencyGraph.EdgesCount">
1972 <summary>
1973 Gets the edge count
1974 </summary>
1975 <remarks>
1976 Edges count
1977 </remarks>
1978 </member>
1979 <member name="P:QuickGraph.Representations.AdjacencyGraph.Edges">
1980 <summary>
1981 Enumerable collection of edges.
1982 </summary>
1983 </member>
1984 <member name="P:QuickGraph.Representations.AdjacencyGraph.QuickGraph#Concepts#Traversals#IEdgeListGraph#Edges">
1985 <summary>
1986 IEdgeListGraph implementation
1987 </summary>
1988 </member>
1989 <member name="T:QuickGraph.Representations.BidirectionalAdaptorGraph">
1990 <summary>
1991 Creates a bidirectional graph out of a
1992 <see cref="T:QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph"/> graph.
1993 </summary>
1994 <remarks>
1995 <para>
1996 This class adapts a <see cref="T:QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph"/> to support
1997 in-edge traversal. Be aware, that the in-edge traversal is less
1998 efficient that using specialized classes.
1999 </para>
2000 </remarks>
2001 </member>
2002 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.#ctor(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph)">
2003 <summary>
2004 Constructor
2005 </summary>
2006 <param name="g"></param>
2007 </member>
2008 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.OutEdgesEmpty(QuickGraph.Concepts.IVertex)">
2009 <summary>
2010 Gets a value indicating if the set of out-edges is empty
2011 </summary>
2012 <remarks>
2013 <para>
2014 Usually faster that calling <see cref="M:QuickGraph.Representations.BidirectionalAdaptorGraph.OutDegree(QuickGraph.Concepts.IVertex)"/>.
2015 </para>
2016 </remarks>
2017 <value>
2018 true if the out-edge set is empty, false otherwise.
2019 </value>
2020 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2021 </member>
2022 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.OutDegree(QuickGraph.Concepts.IVertex)">
2023 <summary>
2024 Returns the number of out-degree edges of v
2025 </summary>
2026 <param name="v">vertex to test</param>
2027 <returns>out-degree</returns>
2028 </member>
2029 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.OutEdges(QuickGraph.Concepts.IVertex)">
2030 <summary>
2031 Returns an iterable collection of the out edges of v
2032 </summary>
2033 </member>
2034 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.InEdgesEmpty(QuickGraph.Concepts.IVertex)">
2035 <summary>
2036 Gets a value indicating if the set of in-edges is empty
2037 </summary>
2038 <remarks>
2039 <para>
2040 Usually faster that calling <see cref="M:QuickGraph.Representations.BidirectionalAdaptorGraph.InDegree(QuickGraph.Concepts.IVertex)"/>.
2041 </para>
2042 </remarks>
2043 <value>
2044 true if the in-edge set is empty, false otherwise.
2045 </value>
2046 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2047 </member>
2048 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.InDegree(QuickGraph.Concepts.IVertex)">
2049 <summary>
2050 Returns the number of in-edges (for directed graphs) or the number
2051 of incident edges (for undirected graphs) of vertex v in graph g.
2052 </summary>
2053 <param name="v">vertex to test</param>
2054 <returns>out-degree</returns>
2055 </member>
2056 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.AdjacentEdgesEmpty(QuickGraph.Concepts.IVertex)">
2057 <summary>
2058 Gets a value indicating if the set of edges connected to v is empty
2059 </summary>
2060 <remarks>
2061 <para>
2062 Usually faster that calling <see cref="M:QuickGraph.Representations.BidirectionalAdaptorGraph.Degree(QuickGraph.Concepts.IVertex)"/>.
2063 </para>
2064 </remarks>
2065 <value>
2066 true if the adjacent edge set is empty, false otherwise.
2067 </value>
2068 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2069 </member>
2070 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.Degree(QuickGraph.Concepts.IVertex)">
2071 <summary>
2072 Returns the number of in-edges plus out-edges (for directed graphs)
2073 or the number of incident edges (for undirected graphs) of
2074 vertex v in graph g.
2075 </summary>
2076 <param name="v">vertex to test</param>
2077 <returns>out-degree</returns>
2078 </member>
2079 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.InEdges(QuickGraph.Concepts.IVertex)">
2080 <summary>
2081 Enumerable collection of in-edges
2082 </summary>
2083 <remarks>
2084 <para>
2085 Returns an enumerable collection of in-edges (for directed graphs)
2086 or incident edges (for undirected graphs) of vertex v in graph g.
2087 </para>
2088 <para>
2089 For both directed and undirected graphs, the target of an out-edge
2090 is required to be vertex v and the source is required to be a
2091 vertex that is adjacent to v.
2092 </para>
2093 </remarks>
2094 </member>
2095 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.ContainsEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2096 <summary>
2097
2098 </summary>
2099 <param name="u"></param>
2100 <param name="v"></param>
2101 <returns></returns>
2102 </member>
2103 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.ContainsVertex(QuickGraph.Concepts.IVertex)">
2104 <summary>
2105
2106 </summary>
2107 <param name="v"></param>
2108 <returns></returns>
2109 </member>
2110 <member name="M:QuickGraph.Representations.BidirectionalAdaptorGraph.AdjacentVertices(QuickGraph.Concepts.IVertex)">
2111 <summary>
2112 Gets an enumerable collection of the v adjacent vertices
2113 </summary>
2114 <param name="v"></param>
2115 <returns></returns>
2116 </member>
2117 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.Graph">
2118 <summary>
2119 Adapted graph
2120 </summary>
2121 </member>
2122 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.IsDirected">
2123 <summary>
2124 Directed state
2125 </summary>
2126 </member>
2127 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.AllowParallelEdges">
2128 <summary>
2129 True if parallel edges allowed
2130 </summary>
2131 </member>
2132 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.VerticesEmpty">
2133 <summary>
2134
2135 </summary>
2136 </member>
2137 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.Vertices">
2138 <summary>
2139
2140 </summary>
2141 </member>
2142 <member name="P:QuickGraph.Representations.BidirectionalAdaptorGraph.VerticesCount">
2143 <summary>
2144
2145 </summary>
2146 </member>
2147 <member name="T:QuickGraph.Representations.BidirectionalGraph">
2148 <summary>
2149 A mutable bidirectional graph implemetation
2150 </summary>
2151 <remarks>
2152 <seealso cref="T:QuickGraph.Representations.AdjacencyGraph"/>
2153 <seealso cref="T:QuickGraph.Concepts.Traversals.IBidirectionalGraph"/>
2154 <seealso cref="T:QuickGraph.Concepts.Modifications.IMutableBidirectionalGraph"/>
2155 </remarks>
2156 </member>
2157 <member name="M:QuickGraph.Representations.BidirectionalGraph.#ctor(System.Boolean)">
2158 <summary>
2159 Builds a new empty graph with default vertex and edge providers
2160 </summary>
2161 </member>
2162 <member name="M:QuickGraph.Representations.BidirectionalGraph.#ctor(QuickGraph.Concepts.Providers.IVertexProvider,QuickGraph.Concepts.Providers.IEdgeProvider,System.Boolean)">
2163 <summary>
2164 Builds a new empty graph
2165 </summary>
2166 </member>
2167 <member name="M:QuickGraph.Representations.BidirectionalGraph.Clear">
2168 <summary>
2169 Remove all of the edges and vertices from the graph.
2170 </summary>
2171 </member>
2172 <member name="M:QuickGraph.Representations.BidirectionalGraph.AddVertex">
2173 <summary>
2174 Add a new vertex to the graph and returns it.
2175
2176 Complexity: 1 insertion.
2177 </summary>
2178 <returns>Create vertex</returns>
2179 </member>
2180 <member name="M:QuickGraph.Representations.BidirectionalGraph.AddVertex(QuickGraph.Concepts.IVertex)">
2181 <summary>
2182 Adds a new vertex to the graph.
2183 </summary>
2184 <param name="v"></param>
2185 </member>
2186 <member name="M:QuickGraph.Representations.BidirectionalGraph.AddEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2187 <summary>
2188 Add a new vertex from source to target
2189
2190 Complexity: 2 search + 1 insertion
2191 </summary>
2192 <param name="source">Source vertex</param>
2193 <param name="target">Target vertex</param>
2194 <returns>Created Edge</returns>
2195 <exception cref="T:System.ArgumentNullException">source or target is null</exception>
2196 <exception cref="T:System.Exception">source or target are not part of the graph</exception>
2197 </member>
2198 <member name="M:QuickGraph.Representations.BidirectionalGraph.AddEdge(QuickGraph.Concepts.IEdge)">
2199 <summary>
2200 Adds a new edge to the graph
2201 </summary>
2202 <param name="e"></param>
2203 </member>
2204 <member name="M:QuickGraph.Representations.BidirectionalGraph.InEdgesEmpty(QuickGraph.Concepts.IVertex)">
2205 <summary>
2206 Gets a value indicating if the set of in-edges is empty
2207 </summary>
2208 <remarks>
2209 <para>
2210 Usually faster that calling <see cref="M:QuickGraph.Representations.BidirectionalGraph.InDegree(QuickGraph.Concepts.IVertex)"/>.
2211 </para>
2212 </remarks>
2213 <value>
2214 true if the in-edge set is empty, false otherwise.
2215 </value>
2216 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2217 </member>
2218 <member name="M:QuickGraph.Representations.BidirectionalGraph.InDegree(QuickGraph.Concepts.IVertex)">
2219 <summary>
2220 Returns the number of in-degree edges of v
2221 </summary>
2222 <param name="v"></param>
2223 <returns></returns>
2224 </member>
2225 <member name="M:QuickGraph.Representations.BidirectionalGraph.InEdges(QuickGraph.Concepts.IVertex)">
2226 <summary>
2227 Returns an iterable collection over the in-edge connected to v
2228 </summary>
2229 <param name="v"></param>
2230 <returns></returns>
2231 </member>
2232 <member name="M:QuickGraph.Representations.BidirectionalGraph.QuickGraph#Concepts#Traversals#IBidirectionalGraph#InEdges(QuickGraph.Concepts.IVertex)">
2233 <summary>
2234 Incidence graph implementation
2235 </summary>
2236 </member>
2237 <member name="M:QuickGraph.Representations.BidirectionalGraph.SelectSingleInEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2238 <summary>
2239 Returns the first in-edge that matches the predicate
2240 </summary>
2241 <param name="v"></param>
2242 <param name="ep">Edge predicate</param>
2243 <returns>null if not found, otherwize the first Edge that
2244 matches the predicate.</returns>
2245 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
2246 </member>
2247 <member name="M:QuickGraph.Representations.BidirectionalGraph.SelectInEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2248 <summary>
2249 Returns the collection of in-edges that matches the predicate
2250 </summary>
2251 <param name="v"></param>
2252 <param name="ep">Edge predicate</param>
2253 <returns>enumerable colleciton of vertices that matches the
2254 criteron</returns>
2255 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
2256 </member>
2257 <member name="M:QuickGraph.Representations.BidirectionalGraph.QuickGraph#Concepts#Traversals#IFilteredBidirectionalGraph#SelectInEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2258 <summary>
2259
2260 </summary>
2261 <param name="v"></param>
2262 <param name="ep"></param>
2263 <returns></returns>
2264 </member>
2265 <member name="M:QuickGraph.Representations.BidirectionalGraph.RemoveVertex(QuickGraph.Concepts.IVertex)">
2266 <summary>
2267 Removes the vertex from the graph.
2268 </summary>
2269 <param name="v">vertex to remove</param>
2270 <exception cref="T:System.ArgumentNullException">v is null</exception>
2271 </member>
2272 <member name="M:QuickGraph.Representations.BidirectionalGraph.ClearVertex(QuickGraph.Concepts.IVertex)">
2273 <summary>
2274 Remove all edges to and from vertex u from the graph.
2275 </summary>
2276 <param name="v"></param>
2277 </member>
2278 <member name="M:QuickGraph.Representations.BidirectionalGraph.RemoveEdge(QuickGraph.Concepts.IEdge)">
2279 <summary>
2280 Removes an edge from the graph.
2281
2282 Complexity: 2 edges removed from the vertex edge list + 1 edge
2283 removed from the edge list.
2284 </summary>
2285 <param name="e">edge to remove</param>
2286 <exception cref="T:System.ArgumentNullException">e is null</exception>
2287 </member>
2288 <member name="M:QuickGraph.Representations.BidirectionalGraph.RemoveEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2289 <summary>
2290 Remove the edge (u,v) from the graph.
2291 If the graph allows parallel edges this remove all occurrences of
2292 (u,v).
2293 </summary>
2294 <param name="u">source vertex</param>
2295 <param name="v">target vertex</param>
2296 </member>
2297 <member name="M:QuickGraph.Representations.BidirectionalGraph.RemoveInEdgeIf(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2298 <summary>
2299 Remove all the out-edges of vertex u for which the predicate pred
2300 returns true.
2301 </summary>
2302 <param name="u">vertex</param>
2303 <param name="pred">edge predicate</param>
2304 </member>
2305 <member name="M:QuickGraph.Representations.BidirectionalGraph.AdjacentEdgesEmpty(QuickGraph.Concepts.IVertex)">
2306 <summary>
2307 Gets a value indicating if the set of edges connected to v is empty
2308 </summary>
2309 <remarks>
2310 <para>
2311 Usually faster that calling <see cref="M:QuickGraph.Representations.BidirectionalGraph.Degree(QuickGraph.Concepts.IVertex)"/>.
2312 </para>
2313 </remarks>
2314 <value>
2315 true if the adjacent edge set is empty, false otherwise.
2316 </value>
2317 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2318 </member>
2319 <member name="M:QuickGraph.Representations.BidirectionalGraph.Degree(QuickGraph.Concepts.IVertex)">
2320 <summary>
2321 Returns the number of in-edges plus out-edges.
2322 </summary>
2323 <param name="v"></param>
2324 <returns></returns>
2325 </member>
2326 <member name="P:QuickGraph.Representations.BidirectionalGraph.VertexInEdges">
2327 <summary>
2328 Vertex Out edges dictionary
2329 </summary>
2330 </member>
2331 <member name="T:QuickGraph.Representations.ClusteredAdjacencyGraph">
2332 <summary>
2333 A clustered adjacency graph
2334 </summary>
2335 <remarks>
2336 <para>
2337 This class implements a clustered <see cref="T:QuickGraph.Representations.AdjacencyGraph"/>:
2338 an <see cref="T:QuickGraph.Representations.AdjacencyGraph"/>
2339 that has sub-graphs (clusters). Each cluster is a
2340 <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/> which can also have sub-graphs.
2341 </para>
2342 <para>
2343 Suppose that <c>G=(V,E)</c> is the main graph and
2344 that <c>G1=(V1,E1)</c> is a cluster:
2345 <list type="bullet">
2346 <item>
2347 <description>If <c>v</c> is added to <c>V1</c>, then <c>v</c> also
2348 belongs to V.</description>
2349 </item>
2350 <item>
2351 <description>If <c>v</c> is added to <c>V</c>, then <c>v</c> does not
2352 belong to <c>V1</c>.</description>
2353 </item>
2354 </list>
2355 </para>
2356 <para>
2357 <b>Threading:</b>
2358 Not thread safe.
2359 </para>
2360 </remarks>
2361 </member>
2362 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.#ctor(QuickGraph.Representations.AdjacencyGraph)">
2363 <summary>
2364 Constructs a <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/> on top of
2365 the <see cref="T:QuickGraph.Representations.AdjacencyGraph"/> object.
2366 </summary>
2367 <param name="wrapped">parent graph</param>
2368 </member>
2369 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.#ctor(QuickGraph.Representations.ClusteredAdjacencyGraph)">
2370 <summary>
2371 Construct a cluster inside another cluster
2372 </summary>
2373 <param name="parent"></param>
2374 </member>
2375 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.ContainsEdge(QuickGraph.Concepts.IEdge)">
2376 <summary>
2377 Determines whether the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>
2378 contains the edge <paramref name="e"/>.
2379 </summary>
2380 <param name="e">
2381 The edge to locate in <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>.
2382 </param>
2383 <returns>
2384 true if the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/> contains
2385 the edge <paramref name="e"/>; otherwise, false.
2386 </returns>
2387 </member>
2388 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.ContainsEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2389 <summary>
2390 Determines whether the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>
2391 contains an edge from the vertex <paramref name="u"/> to
2392 the vertex <paramref name="v"/>.
2393 </summary>
2394 <param name="u">
2395 The source vertex of the edge(s) to locate in <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>.
2396 </param>
2397 <param name="v">
2398 The target vertex of the edge(s) to locate in <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>.
2399 </param>
2400 <returns>
2401 true if the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/> contains
2402 the edge (<paramref name="u"/>, <paramref name="v"/>); otherwise, false.
2403 </returns>
2404 </member>
2405 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.ContainsVertex(QuickGraph.Concepts.IVertex)">
2406 <summary>
2407 Determines whether the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>
2408 contains the vertex <paramref name="v"/>.
2409 </summary>
2410 <param name="v">
2411 The vertex to locate in <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>.
2412 </param>
2413 <returns>
2414 true if the <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/> contains
2415 the vertex <paramref name="v"/>; otherwise, false.
2416 </returns>
2417 </member>
2418 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectEdges(QuickGraph.Concepts.Predicates.IEdgePredicate)">
2419 <summary>
2420 Gets a filtered <see cref="T:QuickGraph.Concepts.Collections.IEdgeEnumerable"/> collection of edges.
2421 </summary>
2422 <param name="ep">edge predicate</param>
2423 <returns>filetered collection</returns>
2424 </member>
2425 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectOutEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2426 <summary>
2427
2428 </summary>
2429 <param name="v"></param>
2430 <param name="ep"></param>
2431 <returns></returns>
2432 </member>
2433 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.OutEdges(QuickGraph.Concepts.IVertex)">
2434 <summary>
2435
2436 </summary>
2437 <param name="v"></param>
2438 <returns></returns>
2439 </member>
2440 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.OutEdgesEmpty(QuickGraph.Concepts.IVertex)">
2441 <summary>
2442 Gets a value indicating if the set of out-edges is empty
2443 </summary>
2444 <remarks>
2445 <para>
2446 Usually faster that calling <see cref="M:QuickGraph.Representations.ClusteredAdjacencyGraph.OutDegree(QuickGraph.Concepts.IVertex)"/>.
2447 </para>
2448 </remarks>
2449 <value>
2450 true if the out-edge set is empty, false otherwise.
2451 </value>
2452 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2453 </member>
2454 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.OutDegree(QuickGraph.Concepts.IVertex)">
2455 <summary>
2456
2457 </summary>
2458 <param name="v"></param>
2459 <returns></returns>
2460 </member>
2461 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectSingleEdge(QuickGraph.Concepts.Predicates.IEdgePredicate)">
2462 <summary>
2463
2464 </summary>
2465 <param name="ep"></param>
2466 <returns></returns>
2467 </member>
2468 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectSingleOutEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2469 <summary>
2470
2471 </summary>
2472 <param name="v"></param>
2473 <param name="ep"></param>
2474 <returns></returns>
2475 </member>
2476 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectSingleVertex(QuickGraph.Concepts.Predicates.IVertexPredicate)">
2477 <summary>
2478
2479 </summary>
2480 <param name="vp"></param>
2481 <returns></returns>
2482 </member>
2483 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.SelectVertices(QuickGraph.Concepts.Predicates.IVertexPredicate)">
2484 <summary>
2485
2486 </summary>
2487 <param name="vp"></param>
2488 <returns></returns>
2489 </member>
2490 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AddCluster">
2491 <summary>
2492 Adds a new cluster.
2493 </summary>
2494 <returns>New cluster</returns>
2495 </member>
2496 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.QuickGraph#Concepts#Traversals#IClusteredGraph#AddCluster">
2497 <summary>
2498
2499 </summary>
2500 <returns></returns>
2501 </member>
2502 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveCluster(QuickGraph.Concepts.Traversals.IClusteredGraph)">
2503 <summary>
2504 Removes a cluster
2505 </summary>
2506 <param name="cluster">cluster to remove</param>
2507 <exception cref="T:System.ArgumentNullException">cluster is a null reference.</exception>
2508 </member>
2509 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AddVertex">
2510 <summary>
2511 Adds a new vertex to the cluster
2512 </summary>
2513 <returns>new vertex</returns>
2514 </member>
2515 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AddVertex(QuickGraph.Concepts.IVertex)">
2516 <summary>
2517 Adds an existing vertex to the cluster
2518 </summary>
2519 <param name="v">vertex to add</param>
2520 </member>
2521 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AddEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2522 <summary>
2523 Adds a new edge
2524 </summary>
2525 <param name="u">source vertex</param>
2526 <param name="v">target edge</param>
2527 <returns>added edge</returns>
2528 <exception cref="T:System.ArgumentNullException">u or v is a null reference</exception>
2529 </member>
2530 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AddEdge(QuickGraph.Concepts.IEdge)">
2531 <summary>
2532 Adds an existing edge to the cluster
2533 </summary>
2534 <param name="e">edge to add</param>
2535 </member>
2536 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveVertex(QuickGraph.Concepts.IVertex)">
2537 <summary>
2538 Removes a vertex from the cluster
2539 </summary>
2540 <param name="u"></param>
2541 </member>
2542 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.ClearVertex(QuickGraph.Concepts.IVertex)">
2543 <summary>
2544 Clears vertex out-edges
2545 </summary>
2546 <param name="u"></param>
2547 </member>
2548 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveEdge(QuickGraph.Concepts.IEdge)">
2549 <summary>
2550 Remove a specific edge
2551 </summary>
2552 <param name="e"></param>
2553 </member>
2554 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2555 <summary>
2556 Remove edges from u to v
2557 </summary>
2558 <param name="u"></param>
2559 <param name="v"></param>
2560 </member>
2561 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveOutEdgeIf(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
2562 <summary>
2563 Remove out edge satisfying the predicate
2564 </summary>
2565 <param name="v"></param>
2566 <param name="ep"></param>
2567 </member>
2568 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.RemoveEdgeIf(QuickGraph.Concepts.Predicates.IEdgePredicate)">
2569 <summary>
2570 Remove edge satifying the predicate
2571 </summary>
2572 <param name="ep"></param>
2573 </member>
2574 <member name="M:QuickGraph.Representations.ClusteredAdjacencyGraph.AdjacentVertices(QuickGraph.Concepts.IVertex)">
2575 <summary>
2576 Gets an enumerable collection of the v adjacent vertices
2577 </summary>
2578 <param name="v"></param>
2579 <returns></returns>
2580 </member>
2581 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Parent">
2582 <summary>
2583 Gets the parent <see cref="T:QuickGraph.Representations.AdjacencyGraph"/>.
2584 </summary>
2585 <value>
2586 Parent <see cref="T:QuickGraph.Representations.AdjacencyGraph"/>.
2587 </value>
2588 </member>
2589 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Colapsed">
2590 <summary>
2591 Not implemented yet.
2592 </summary>
2593 </member>
2594 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Wrapped">
2595 <summary>
2596 Gets the wrapped <see cref="T:QuickGraph.Representations.AdjacencyGraph"/> object.
2597 </summary>
2598 <remarks>
2599 Wrapped <see cref="T:QuickGraph.Representations.AdjacencyGraph"/> object. Can be a
2600 <see cref="T:QuickGraph.Representations.ClusteredAdjacencyGraph"/>.
2601 </remarks>
2602 </member>
2603 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.IsDirected">
2604 <summary>
2605 Gets a value indicating whether the graph is directed.
2606 </summary>
2607 <value>
2608 true if the graph is directed, false otherwize.
2609 </value>
2610 </member>
2611 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.AllowParallelEdges">
2612 <summary>
2613 Gets a value indicating whether the graph allows parallel edges.
2614 </summary>
2615 <value>
2616 true if the graph allows parallel edges, false otherwize.
2617 </value>
2618 </member>
2619 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.VertexProvider">
2620 <summary>
2621 Gets the <see cref="T:QuickGraph.Concepts.Providers.IVertexProvider"/> used to generate the vertices.
2622 </summary>
2623 <value>
2624 <see cref="T:QuickGraph.Concepts.Providers.IVertexProvider"/> instance used to generate the new
2625 vertices.
2626 </value>
2627 </member>
2628 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.EdgeProvider">
2629 <summary>
2630 Gets the <see cref="T:QuickGraph.Concepts.Providers.IEdgeProvider"/> used to generate the edges.
2631 </summary>
2632 <value>
2633 <see cref="T:QuickGraph.Concepts.Providers.IEdgeProvider"/> instance used to generate the new
2634 edges.
2635 </value>
2636 </member>
2637 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.EdgesEmpty">
2638 <summary>
2639 Gets a value indicating if the vertex set is empty
2640 </summary>
2641 <remarks>
2642 <para>
2643 Usually faster that calling <see cref="P:QuickGraph.Representations.ClusteredAdjacencyGraph.EdgesCount"/>.
2644 </para>
2645 </remarks>
2646 <value>
2647 true if the vertex set is empty, false otherwise.
2648 </value>
2649 </member>
2650 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Edges">
2651 <summary>
2652 Gets an enumerable collection of edges.
2653 </summary>
2654 <value>
2655 <see cref="T:QuickGraph.Concepts.Collections.IEdgeEnumerable"/> collection of edges.
2656 </value>
2657 </member>
2658 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.EdgesCount">
2659 <summary>
2660 Gets the edge count.
2661 </summary>
2662 <value>
2663 Edge count.
2664 </value>
2665 <remarks>
2666 Complexity: O(E)
2667 </remarks>
2668 </member>
2669 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.VerticesEmpty">
2670 <summary>
2671 Gets a value indicating if the vertex set is empty
2672 </summary>
2673 <para>
2674 Usually faster (O(1)) that calling <c>VertexCount</c>.
2675 </para>
2676 <value>
2677 true if the vertex set is empty, false otherwise.
2678 </value>
2679 </member>
2680 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Vertices">
2681 <summary>
2682 Gets an enumerable collection of vertices.
2683 </summary>
2684 <value>
2685 <see cref="T:QuickGraph.Concepts.Collections.IVertexEnumerable"/> collection of vertices.
2686 </value>
2687 </member>
2688 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.VerticesCount">
2689 <summary>
2690 Gets the vertex count.
2691 </summary>
2692 <value>
2693 Vertex count.
2694 </value>
2695 <remarks>
2696 Complexity: O(V)
2697 </remarks>
2698 </member>
2699 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.Clusters">
2700 <summary>
2701 Gets an enumerable collection of clusters
2702 </summary>
2703 <value>
2704 Enumerable collection of clusters
2705 </value>
2706 </member>
2707 <member name="P:QuickGraph.Representations.ClusteredAdjacencyGraph.ClustersCount">
2708 <summary>
2709 Gets the number of clusters
2710 </summary>
2711 <value>
2712 Number of clusters
2713 </value>
2714 </member>
2715 <member name="T:QuickGraph.Representations.EdgeList">
2716 <summary>
2717 An edge-list representation of a graph is simply a sequence of edges,
2718 where each edge is represented as a pair of vertex ID's.
2719 </summary>
2720 <remarks>
2721 <para>
2722 The EdgeList class is an adaptor that turns an edge collection
2723 into a class that models IEdgeListGraph.
2724 The value type of the edge collection must be be inherited form IEdge.
2725 </para>
2726 <para>
2727 An edge-list representation of a graph is simply a sequence of edges,
2728 where each edge is represented as a pair of vertex ID's.
2729 The memory required is only O(E). Edge insertion is typically O(1),
2730 though accessing a particular edge is O(E) (not efficient).
2731 </para>
2732 <seealso cref="T:QuickGraph.Concepts.Traversals.IEdgeListGraph"/>
2733 </remarks>
2734 </member>
2735 <member name="M:QuickGraph.Representations.EdgeList.#ctor(QuickGraph.Concepts.Collections.IEdgeCollection,System.Boolean,System.Boolean)">
2736 <summary>
2737 Builds an EdgeListGraph out of a edges collection
2738 </summary>
2739 <param name="edges"></param>
2740 <param name="isDirected"></param>
2741 <param name="allowParallelEdges"></param>
2742 </member>
2743 <member name="M:QuickGraph.Representations.EdgeList.ContainsEdge(QuickGraph.Concepts.IEdge)">
2744 <summary>
2745
2746 </summary>
2747 <param name="e"></param>
2748 <returns></returns>
2749 </member>
2750 <member name="P:QuickGraph.Representations.EdgeList.IsDirected">
2751 <summary>
2752
2753 </summary>
2754 </member>
2755 <member name="P:QuickGraph.Representations.EdgeList.AllowParallelEdges">
2756 <summary>
2757
2758 </summary>
2759 </member>
2760 <member name="P:QuickGraph.Representations.EdgeList.EdgesEmpty">
2761 <summary>
2762 Gets a value indicating if the vertex set is empty
2763 </summary>
2764 <remarks>
2765 <para>
2766 Usually faster that calling <see cref="P:QuickGraph.Representations.EdgeList.EdgesCount"/>.
2767 </para>
2768 </remarks>
2769 <value>
2770 true if the vertex set is empty, false otherwise.
2771 </value>
2772 </member>
2773 <member name="P:QuickGraph.Representations.EdgeList.EdgesCount">
2774 <summary>
2775 Returns the number of edges in the graph.
2776 </summary>
2777 </member>
2778 <member name="P:QuickGraph.Representations.EdgeList.Edges">
2779 <summary>
2780 Returns an enumerator providing access to all the edges in the graph.
2781 </summary>
2782 </member>
2783 <member name="P:QuickGraph.Representations.EdgeList.QuickGraph#Concepts#Traversals#IEdgeListGraph#Edges">
2784 <summary>
2785 IEdgeListGraph implemetentation.
2786 </summary>
2787 </member>
2788 <member name="T:QuickGraph.Representations.MutableTreeAdapterGraph">
2789 <summary>
2790 A mutable tree-like graph
2791 </summary>
2792 </member>
2793 <member name="T:QuickGraph.Representations.TreeAdaptorGraph">
2794 <summary>
2795 A tree-like wrapper for bidirectional graph
2796 </summary>
2797 <remarks>
2798 <para>
2799 This interface defines a DOM like tree node structure.
2800 </para>
2801 <para>
2802 Graphs used with this interface must be directed, not
2803 allowing parrallel edges. However, they can be cylic
2804 but the in-degree of each vertex must be equal to 1.
2805 </para>
2806 </remarks>
2807 </member>
2808 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalGraph)">
2809 <summary>
2810 Wraps a graph into a tree-like structure
2811 </summary>
2812 <param name="wrapped"></param>
2813 </member>
2814 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.ParentVertex(QuickGraph.Concepts.IVertex)">
2815 <summary>
2816 Gets the <see cref="T:QuickGraph.Concepts.IVertex"/> parent.
2817 </summary>
2818 <param name="v">current vertex</param>
2819 <returns>
2820 parent vertex if any, null reference otherwize
2821 </returns>
2822 <exception cref="T:System.ArgumentNullException">
2823 <paramref name="v"/> is a null reference
2824 </exception>
2825 <exception cref="T:QuickGraph.Exceptions.MultipleInEdgeException">
2826 <paramref name="v"/> has multiple in-edges
2827 </exception>
2828 </member>
2829 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.FirstChild(QuickGraph.Concepts.IVertex)">
2830 <summary>
2831 Gets the first adjacent vertex
2832 </summary>
2833 <param name="v">current vertex</param>
2834 <returns>first out-vertex</returns>
2835 <exception cref="T:System.ArgumentNullException">
2836 <paramref name="v"/> is a null reference
2837 </exception>
2838 </member>
2839 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.LastChild(QuickGraph.Concepts.IVertex)">
2840 <summary>
2841
2842 </summary>
2843 <param name="v"></param>
2844 <returns></returns>
2845 <exception cref="T:System.ArgumentNullException">
2846 <paramref name="v"/> is a null reference
2847 </exception>
2848 </member>
2849 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.HasChildVertices(QuickGraph.Concepts.IVertex)">
2850 <summary>
2851 Gets a value indicating if the <see cref="T:QuickGraph.Concepts.IVertex"/> has out-edges
2852 </summary>
2853 <param name="v"><see cref="T:QuickGraph.Concepts.IVertex"/> to test</param>
2854 <returns>true if <paramref name="v"/> has out-edges.</returns>
2855 <exception cref="T:System.ArgumentNullException">
2856 <paramref name="v"/> is a null reference
2857 </exception>
2858 </member>
2859 <member name="M:QuickGraph.Representations.TreeAdaptorGraph.ChildVertices(QuickGraph.Concepts.IVertex)">
2860 <summary>
2861 Gets an enumerable collection of child <see cref="T:QuickGraph.Concepts.IVertex"/>
2862 </summary>
2863 <param name="v">current <see cref="T:QuickGraph.Concepts.IVertex"/></param>
2864 <returns>An enumerable collection of adjacent vertices</returns>
2865 <exception cref="T:System.ArgumentNullException">
2866 <paramref name="v"/> is a null reference
2867 </exception>
2868 </member>
2869 <member name="P:QuickGraph.Representations.TreeAdaptorGraph.Wrapped">
2870 <summary>
2871 Gets the wrapped <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalGraph"/> instance.
2872 </summary>
2873 </member>
2874 <member name="M:QuickGraph.Representations.MutableTreeAdapterGraph.#ctor(QuickGraph.Concepts.MutableTraversals.IMutableBidirectionalVertexAndEdgeListGraph,System.Boolean)">
2875 <summary>
2876 Creates a mutable tree wrapper
2877 </summary>
2878 <param name="g">wrapped graph</param>
2879 <param name="allowCycles">cycle tolerance</param>
2880 </member>
2881 <member name="M:QuickGraph.Representations.MutableTreeAdapterGraph.AddChild(QuickGraph.Concepts.IVertex)">
2882 <summary>
2883 Adds a child vertex to the tree
2884 </summary>
2885 <param name="parent">parent vertex</param>
2886 <returns>created vertex</returns>
2887 <exception cref="T:System.ArgumentNullException">parent is a null reference</exception>
2888 <exception cref="!:NonAcyclicGraphException">
2889 if <c>AllowCycles</c> is false and the edge creates a cycle
2890 </exception>
2891 </member>
2892 <member name="M:QuickGraph.Representations.MutableTreeAdapterGraph.RemoveTree(QuickGraph.Concepts.IVertex)">
2893 <summary>
2894 Removes vertex and sub-tree
2895 </summary>
2896 <param name="v">vertex to remove</param>
2897 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
2898 <exception cref="!:GraphNotStronglyConnectedExceptoin">
2899 Removing the vertex breaks the graph connectivity
2900 </exception>
2901 </member>
2902 <member name="P:QuickGraph.Representations.MutableTreeAdapterGraph.AllowCycles">
2903 <summary>
2904 Gets a value indicating if the tree allows cycles
2905 </summary>
2906 <value>
2907 true if it allows cycle, false otherwise
2908 </value>
2909 </member>
2910 <member name="T:QuickGraph.Representations.NamespaceDoc">
2911 <summary>
2912 <para>
2913 The <b>QuickGraph.Representations</b> namespace contains
2914 implementations of the graph concepts (traversal concepts and
2915 modification concepts).
2916 </para>
2917 </summary>
2918 </member>
2919 <member name="T:QuickGraph.Representations.Petri.PetriGraph">
2920 <summary>
2921 A mutable incidence graph implemetation
2922 </summary>
2923 <remarks>
2924 <seealso cref="T:QuickGraph.Concepts.Modifications.IVertexMutableGraph"/>
2925 <seealso cref="T:QuickGraph.Concepts.Modifications.IMutableIncidenceGraph"/>
2926 </remarks>
2927 </member>
2928 <member name="M:QuickGraph.Representations.Petri.PetriGraph.#ctor">
2929 <summary>
2930 Builds a new empty directed graph with default vertex and edge
2931 provider.
2932 </summary>
2933 <remarks>
2934 </remarks>
2935 </member>
2936 <member name="M:QuickGraph.Representations.Petri.PetriGraph.#ctor(System.Boolean)">
2937 <summary>
2938 Builds a new empty directed graph with default vertex and edge
2939 provider.
2940 </summary>
2941 <param name="allowParallelEdges">true if parallel edges are allowed</param>
2942 </member>
2943 <member name="M:QuickGraph.Representations.Petri.PetriGraph.#ctor(QuickGraph.Concepts.Providers.IVertexProvider,QuickGraph.Concepts.Providers.IEdgeProvider,System.Boolean)">
2944 <summary>
2945 Builds a new empty directed graph with custom providers
2946 </summary>
2947 <param name="allowParallelEdges">true if the graph allows
2948 multiple edges</param>
2949 <param name="edgeProvider">custom edge provider</param>
2950 <param name="vertexProvider">custom vertex provider</param>
2951 <exception cref="T:System.ArgumentNullException">
2952 vertexProvider or edgeProvider is a null reference
2953 </exception>
2954 </member>
2955 <member name="M:QuickGraph.Representations.Petri.PetriGraph.Clear">
2956 <summary>
2957 Remove all of the edges and vertices from the graph.
2958 </summary>
2959 </member>
2960 <member name="M:QuickGraph.Representations.Petri.PetriGraph.AddVertex">
2961 <summary>
2962 Add a new vertex to the graph and returns it.
2963
2964 Complexity: 1 insertion.
2965 </summary>
2966 <returns>Create vertex</returns>
2967 </member>
2968 <member name="M:QuickGraph.Representations.Petri.PetriGraph.AddVertex(QuickGraph.Concepts.IVertex)">
2969 <summary>
2970 Add a new vertex to the graph and returns it.
2971
2972 Complexity: 1 insertion.
2973 </summary>
2974 <returns>Create vertex</returns>
2975 </member>
2976 <member name="M:QuickGraph.Representations.Petri.PetriGraph.AddEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
2977 <summary>
2978 Add a new vertex from source to target
2979
2980 Complexity: 2 search + 1 insertion
2981 </summary>
2982 <param name="source">Source vertex</param>
2983 <param name="target">Target vertex</param>
2984 <returns>Created Edge</returns>
2985 <exception cref="T:System.ArgumentNullException">source or target is null</exception>
2986 <exception cref="T:System.Exception">source or target are not part of the graph</exception>
2987 </member>
2988 <member name="M:QuickGraph.Representations.Petri.PetriGraph.AddEdge(QuickGraph.Concepts.IEdge)">
2989 <summary>
2990 Used for serialization. Not for private use.
2991 </summary>
2992 <param name="e">edge to add.</param>
2993 </member>
2994 <member name="M:QuickGraph.Representations.Petri.PetriGraph.OutEdgesEmpty(QuickGraph.Concepts.IVertex)">
2995 <summary>
2996 Gets a value indicating if the set of out-edges is empty
2997 </summary>
2998 <remarks>
2999 <para>
3000 Usually faster that calling <see cref="M:QuickGraph.Representations.Petri.PetriGraph.OutDegree(QuickGraph.Concepts.IVertex)"/>.
3001 </para>
3002 </remarks>
3003 <value>
3004 true if the out-edge set is empty, false otherwise.
3005 </value>
3006 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
3007 </member>
3008 <member name="M:QuickGraph.Representations.Petri.PetriGraph.OutDegree(QuickGraph.Concepts.IVertex)">
3009 <summary>
3010 Returns the number of out-degree edges of v
3011 </summary>
3012 <param name="v">vertex</param>
3013 <returns>number of out-edges of the <see cref="T:QuickGraph.Concepts.IVertex"/> v</returns>
3014 </member>
3015 <member name="M:QuickGraph.Representations.Petri.PetriGraph.OutEdges(QuickGraph.Concepts.IVertex)">
3016 <summary>
3017 Returns an iterable collection over the edge connected to v
3018 </summary>
3019 <param name="v"></param>
3020 <returns></returns>
3021 </member>
3022 <member name="M:QuickGraph.Representations.Petri.PetriGraph.QuickGraph#Concepts#Traversals#IImplicitGraph#OutEdges(QuickGraph.Concepts.IVertex)">
3023 <summary>
3024 Incidence graph implementation
3025 </summary>
3026 </member>
3027 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectSingleOutEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
3028 <summary>
3029 Returns the first out-edge that matches the predicate
3030 </summary>
3031 <param name="v"></param>
3032 <param name="ep">Edge predicate</param>
3033 <returns>null if not found, otherwize the first Edge that
3034 matches the predicate.</returns>
3035 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
3036 </member>
3037 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectOutEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
3038 <summary>
3039 Returns the collection of out-edges that matches the predicate
3040 </summary>
3041 <param name="v"></param>
3042 <param name="ep">Edge predicate</param>
3043 <returns>enumerable colleciton of vertices that matches the
3044 criteron</returns>
3045 <exception cref="T:System.ArgumentNullException">v or ep is null</exception>
3046 </member>
3047 <member name="M:QuickGraph.Representations.Petri.PetriGraph.QuickGraph#Concepts#Traversals#IFilteredIncidenceGraph#SelectOutEdges(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
3048 <summary>
3049
3050 </summary>
3051 <param name="v"></param>
3052 <param name="ep"></param>
3053 <returns></returns>
3054 </member>
3055 <member name="M:QuickGraph.Representations.Petri.PetriGraph.RemoveVertex(QuickGraph.Concepts.IVertex)">
3056 <summary>
3057 Removes the vertex from the graph.
3058 </summary>
3059 <param name="v">vertex to remove</param>
3060 <exception cref="T:System.ArgumentNullException">v is null</exception>
3061 </member>
3062 <member name="M:QuickGraph.Representations.Petri.PetriGraph.ClearVertex(QuickGraph.Concepts.IVertex)">
3063 <summary>
3064 Remove all edges to and from vertex u from the graph.
3065 </summary>
3066 <param name="v"></param>
3067 </member>
3068 <member name="M:QuickGraph.Representations.Petri.PetriGraph.RemoveEdge(QuickGraph.Concepts.IEdge)">
3069 <summary>
3070 Removes an edge from the graph.
3071
3072 Complexity: 2 edges removed from the vertex edge list + 1 edge
3073 removed from the edge list.
3074 </summary>
3075 <param name="e">edge to remove</param>
3076 <exception cref="T:System.ArgumentNullException">e is null</exception>
3077 </member>
3078 <member name="M:QuickGraph.Representations.Petri.PetriGraph.RemoveEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
3079 <summary>
3080 Remove the edge (u,v) from the graph.
3081 If the graph allows parallel edges this remove all occurrences of
3082 (u,v).
3083 </summary>
3084 <param name="u">source vertex</param>
3085 <param name="v">target vertex</param>
3086 </member>
3087 <member name="M:QuickGraph.Representations.Petri.PetriGraph.RemoveEdgeIf(QuickGraph.Concepts.Predicates.IEdgePredicate)">
3088 <summary>
3089 Remove all the edges from graph g for which the predicate pred
3090 returns true.
3091 </summary>
3092 <param name="pred">edge predicate</param>
3093 </member>
3094 <member name="M:QuickGraph.Representations.Petri.PetriGraph.RemoveOutEdgeIf(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.Predicates.IEdgePredicate)">
3095 <summary>
3096 Remove all the out-edges of vertex u for which the predicate pred
3097 returns true.
3098 </summary>
3099 <param name="u">vertex</param>
3100 <param name="pred">edge predicate</param>
3101 </member>
3102 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectSingleVertex(QuickGraph.Concepts.Predicates.IVertexPredicate)">
3103 <summary>
3104 Returns the first vertex that matches the predicate
3105 </summary>
3106 <param name="vp">vertex predicate</param>
3107 <returns>null if not found, otherwize the first vertex that
3108 matches the predicate.</returns>
3109 <exception cref="T:System.ArgumentNullException">vp is null</exception>
3110 </member>
3111 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectVertices(QuickGraph.Concepts.Predicates.IVertexPredicate)">
3112 <summary>
3113 Returns the collection of vertices that matches the predicate
3114 </summary>
3115 <param name="vp">vertex predicate</param>
3116 <returns>enumerable colleciton of vertices that matches the
3117 criteron</returns>
3118 <exception cref="T:System.ArgumentNullException">vp is null</exception>
3119 </member>
3120 <member name="M:QuickGraph.Representations.Petri.PetriGraph.ContainsVertex(QuickGraph.Concepts.IVertex)">
3121 <summary>
3122 Tests if a vertex is part of the graph
3123 </summary>
3124 <param name="v">Vertex to test</param>
3125 <returns>true if is part of the graph, false otherwize</returns>
3126 </member>
3127 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectSingleEdge(QuickGraph.Concepts.Predicates.IEdgePredicate)">
3128 <summary>
3129 Returns the first Edge that matches the predicate
3130 </summary>
3131 <param name="ep">Edge predicate</param>
3132 <returns>null if not found, otherwize the first Edge that
3133 matches the predicate.</returns>
3134 <exception cref="T:System.ArgumentNullException">ep is null</exception>
3135 </member>
3136 <member name="M:QuickGraph.Representations.Petri.PetriGraph.SelectEdges(QuickGraph.Concepts.Predicates.IEdgePredicate)">
3137 <summary>
3138 Returns the collection of edges that matches the predicate
3139 </summary>
3140 <param name="ep">Edge predicate</param>
3141 <returns>enumerable colleciton of vertices that matches the
3142 criteron</returns>
3143 <exception cref="T:System.ArgumentNullException">ep is null</exception>
3144 </member>
3145 <member name="M:QuickGraph.Representations.Petri.PetriGraph.QuickGraph#Concepts#Traversals#IFilteredEdgeListGraph#SelectEdges(QuickGraph.Concepts.Predicates.IEdgePredicate)">
3146 <summary>
3147
3148 </summary>
3149 <param name="ep"></param>
3150 <returns></returns>
3151 </member>
3152 <member name="M:QuickGraph.Representations.Petri.PetriGraph.ContainsEdge(QuickGraph.Concepts.IEdge)">
3153 <summary>
3154 Tests if a edge is part of the graph
3155 </summary>
3156 <param name="e">Edge to test</param>
3157 <returns>true if is part of the graph, false otherwize</returns>
3158 </member>
3159 <member name="M:QuickGraph.Representations.Petri.PetriGraph.ContainsEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
3160 <summary>
3161 Test is an edge (u,v) is part of the graph
3162 </summary>
3163 <param name="u">source vertex</param>
3164 <param name="v">target vertex</param>
3165 <returns>true if part of the graph</returns>
3166 </member>
3167 <member name="M:QuickGraph.Representations.Petri.PetriGraph.AdjacentVertices(QuickGraph.Concepts.IVertex)">
3168 <summary>
3169 Gets an enumerable collection of adjacent vertices
3170 </summary>
3171 <param name="v"></param>
3172 <returns>Enumerable collection of adjacent vertices</returns>
3173 </member>
3174 <member name="P:QuickGraph.Representations.Petri.PetriGraph.IsDirected">
3175 <summary>
3176 Gets a value indicating if the graph is directed.
3177 </summary>
3178 <value>
3179 true if the graph is directed, false if undirected.
3180 </value>
3181 <remarks>
3182 <seealso cref="T:QuickGraph.Concepts.IGraph"/>
3183 </remarks>
3184 </member>
3185 <member name="P:QuickGraph.Representations.Petri.PetriGraph.AllowParallelEdges">
3186 <summary>
3187 Gets a value indicating if the graph allows parralell edges.
3188 </summary>
3189 <value>
3190 true if the graph is a multi-graph, false otherwise
3191 </value>
3192 <remarks>
3193 <seealso cref="T:QuickGraph.Concepts.IGraph"/>
3194 </remarks>
3195 </member>
3196 <member name="P:QuickGraph.Representations.Petri.PetriGraph.VertexOutEdges">
3197 <summary>
3198 Vertex Out edges dictionary
3199 </summary>
3200 <value>
3201 Dictionary of <see cref="T:QuickGraph.Concepts.IVertex"/> to out edge collection.
3202 </value>
3203 </member>
3204 <member name="P:QuickGraph.Representations.Petri.PetriGraph.VertexProvider">
3205 <summary>
3206 Gets the <see cref="T:QuickGraph.Concepts.IVertex"/> provider
3207 </summary>
3208 <value>
3209 <see cref="T:QuickGraph.Concepts.IVertex"/> provider
3210 </value>
3211 </member>
3212 <member name="P:QuickGraph.Representations.Petri.PetriGraph.EdgeProvider">
3213 <summary>
3214 Gets the <see cref="T:QuickGraph.Concepts.IEdge"/> provider
3215 </summary>
3216 <value>
3217 <see cref="T:QuickGraph.Concepts.IEdge"/> provider
3218 </value>
3219 </member>
3220 <member name="P:QuickGraph.Representations.Petri.PetriGraph.VerticesEmpty">
3221 <summary>
3222 Gets a value indicating if the vertex set is empty
3223 </summary>
3224 <para>
3225 Usually faster (O(1)) that calling <c>VertexCount</c>.
3226 </para>
3227 <value>
3228 true if the vertex set is empty, false otherwise.
3229 </value>
3230 </member>
3231 <member name="P:QuickGraph.Representations.Petri.PetriGraph.VerticesCount">
3232 <summary>
3233 Gets the number of vertices
3234 </summary>
3235 <value>
3236 Number of vertices in the graph
3237 </value>
3238 </member>
3239 <member name="P:QuickGraph.Representations.Petri.PetriGraph.Vertices">
3240 <summary>
3241 Enumerable collection of vertices.
3242 </summary>
3243 </member>
3244 <member name="P:QuickGraph.Representations.Petri.PetriGraph.QuickGraph#Concepts#Traversals#IVertexListGraph#Vertices">
3245 <summary>
3246
3247 </summary>
3248 </member>
3249 <member name="P:QuickGraph.Representations.Petri.PetriGraph.EdgesEmpty">
3250 <summary>
3251 Gets a value indicating if the vertex set is empty
3252 </summary>
3253 <remarks>
3254 <para>
3255 Usually faster that calling <see cref="P:QuickGraph.Representations.Petri.PetriGraph.EdgesCount"/>.
3256 </para>
3257 </remarks>
3258 <value>
3259 true if the vertex set is empty, false otherwise.
3260 </value>
3261 </member>
3262 <member name="P:QuickGraph.Representations.Petri.PetriGraph.EdgesCount">
3263 <summary>
3264 Gets the edge count
3265 </summary>
3266 <remarks>
3267 Edges count
3268 </remarks>
3269 </member>
3270 <member name="P:QuickGraph.Representations.Petri.PetriGraph.Edges">
3271 <summary>
3272 Enumerable collection of edges.
3273 </summary>
3274 </member>
3275 <member name="P:QuickGraph.Representations.Petri.PetriGraph.QuickGraph#Concepts#Traversals#IEdgeListGraph#Edges">
3276 <summary>
3277 IEdgeListGraph implementation
3278 </summary>
3279 </member>
3280 <member name="T:QuickGraph.Representations.Representation">
3281 <summary>
3282 Summary description for Representation.
3283 </summary>
3284 </member>
3285 <member name="M:QuickGraph.Representations.Representation.OutVertexTree(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Concepts.IVertex,System.Int32)">
3286 <summary>
3287 Records all the vertices that are part of the out-subtree of v
3288 </summary>
3289 <param name="g">visited graph</param>
3290 <param name="v">root vertex</param>
3291 <param name="maxDepth">Maximum exploration depth</param>
3292 <returns></returns>
3293 </member>
3294 <member name="M:QuickGraph.Representations.Representation.InVertexTree(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph,QuickGraph.Concepts.IVertex,System.Int32)">
3295 <summary>
3296 Records all the vertices that are part of the in-subtree of v
3297 </summary>
3298 <param name="g">visited graph</param>
3299 <param name="v">root vertex</param>
3300 <param name="maxDepth">Maximum exploration depth</param>
3301 <returns></returns>
3302 </member>
3303 <member name="M:QuickGraph.Representations.Representation.OutEdgeTree(QuickGraph.Concepts.Traversals.IEdgeListAndIncidenceGraph,QuickGraph.Concepts.IEdge,System.Int32)">
3304 <summary>
3305 Records all the edges that are part of the subtree of v
3306 </summary>
3307 <param name="g">visited graph</param>
3308 <param name="e">root edge</param>
3309 <param name="maxDepth">maximum expolration depth</param>
3310 <returns></returns>
3311 </member>
3312 <member name="M:QuickGraph.Representations.Representation.InEdgeTree(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph,QuickGraph.Concepts.IEdge,System.Int32)">
3313 <summary>
3314 Records all the edges that are part of the subtree of v
3315 </summary>
3316 <param name="g">visited graph</param>
3317 <param name="e">root edge</param>
3318 <param name="maxDepth">maximum expolration depth</param>
3319 <returns></returns>
3320 </member>
3321 <member name="M:QuickGraph.Representations.Representation.dfs_BackEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
3322 <summary>
3323 Used in OutEdgeTree
3324 </summary>
3325 <param name="sender"></param>
3326 <param name="e"></param>
3327 </member>
3328 <member name="T:QuickGraph.Representations.ReversedBidirectionalGraph">
3329 <summary>
3330 Adaptor to flip in-edges and out-edges.
3331 </summary>
3332 <remarks>
3333 <para>
3334 This adaptor flips the in-edges and out-edges of a IBidirectionalGraph,
3335 effectively transposing the graph.
3336 </para>
3337 <para>
3338 The construction of the reverse graph is constant time,
3339 providing a highly efficient way to obtain a transposed-view of a
3340 graph.
3341 </para>
3342 </remarks>
3343 </member>
3344 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph)">
3345 <summary>
3346 Construct a reversed graph adaptor
3347 </summary>
3348 <param name="g">Graph to adapt</param>
3349 </member>
3350 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.InEdgesEmpty(QuickGraph.Concepts.IVertex)">
3351 <summary>
3352 Gets a value indicating if the set of in-edges is empty
3353 </summary>
3354 <remarks>
3355 <para>
3356 Usually faster that calling <see cref="M:QuickGraph.Representations.ReversedBidirectionalGraph.InDegree(QuickGraph.Concepts.IVertex)"/>.
3357 </para>
3358 </remarks>
3359 <value>
3360 true if the in-edge set is empty, false otherwise.
3361 </value>
3362 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
3363 </member>
3364 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.InDegree(QuickGraph.Concepts.IVertex)">
3365 <summary>
3366 Flipped out-degree
3367 </summary>
3368 <param name="v">vertex to compute</param>
3369 <returns>transposed out-edgree</returns>
3370 </member>
3371 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.OutEdgesEmpty(QuickGraph.Concepts.IVertex)">
3372 <summary>
3373 Gets a value indicating if the set of out-edges is empty
3374 </summary>
3375 <remarks>
3376 <para>
3377 Usually faster that calling <see cref="M:QuickGraph.Representations.ReversedBidirectionalGraph.OutDegree(QuickGraph.Concepts.IVertex)"/>.
3378 </para>
3379 </remarks>
3380 <value>
3381 true if the out-edge set is empty, false otherwise.
3382 </value>
3383 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
3384 </member>
3385 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.OutDegree(QuickGraph.Concepts.IVertex)">
3386 <summary>
3387 Flipped in-degree
3388 </summary>
3389 <param name="v">vertex to compute</param>
3390 <returns>transposed in-edgree</returns>
3391 </member>
3392 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.AdjacentEdgesEmpty(QuickGraph.Concepts.IVertex)">
3393 <summary>
3394 Gets a value indicating if the set of edges connected to v is empty
3395 </summary>
3396 <remarks>
3397 <para>
3398 Usually faster that calling <see cref="M:QuickGraph.Representations.ReversedBidirectionalGraph.Degree(QuickGraph.Concepts.IVertex)"/>.
3399 </para>
3400 </remarks>
3401 <value>
3402 true if the adjacent edge set is empty, false otherwise.
3403 </value>
3404 <exception cref="T:System.ArgumentNullException">v is a null reference</exception>
3405 </member>
3406 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.Degree(QuickGraph.Concepts.IVertex)">
3407 <summary>
3408 Vertex degree
3409 </summary>
3410 <param name="v">vertex to compute</param>
3411 <returns>vertex edgree</returns>
3412 </member>
3413 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.InEdges(QuickGraph.Concepts.IVertex)">
3414 <summary>
3415 Returns a transposed out-edges enumerable
3416 </summary>
3417 <param name="v">vertex to compute</param>
3418 <returns>transposed out edges enumerable</returns>
3419 </member>
3420 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.OutEdges(QuickGraph.Concepts.IVertex)">
3421 <summary>
3422 Returns a transposed in-edges enumerable
3423 </summary>
3424 <param name="v">vertex to compute</param>
3425 <returns>transposed in edges enumerable</returns>
3426 </member>
3427 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.ContainsEdge(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
3428 <summary>
3429 Check the graph contains an edge from <paramref name="u"/>
3430 to <paramref name="v"/>.
3431 </summary>
3432 <param name="u"></param>
3433 <param name="v"></param>
3434 <returns></returns>
3435 </member>
3436 <member name="M:QuickGraph.Representations.ReversedBidirectionalGraph.AdjacentVertices(QuickGraph.Concepts.IVertex)">
3437 <summary>
3438 Gets an enumerable collection of the v adjacent vertices
3439 </summary>
3440 <param name="v"></param>
3441 <returns></returns>
3442 </member>
3443 <member name="P:QuickGraph.Representations.ReversedBidirectionalGraph.ReversedGraph">
3444 <summary>
3445 Reversed graph
3446 </summary>
3447 </member>
3448 <member name="P:QuickGraph.Representations.ReversedBidirectionalGraph.IsDirected">
3449 <summary>
3450
3451 </summary>
3452 </member>
3453 <member name="P:QuickGraph.Representations.ReversedBidirectionalGraph.AllowParallelEdges">
3454 <summary>
3455
3456 </summary>
3457 </member>
3458 <member name="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm">
3459 <summary>
3460 Performs a breadth-first traversal
3461 of a directed or undirected graph.
3462 </summary>
3463 <remarks>
3464 <para>
3465 A breadth-first-search (BFS) traversal visits vertices that are closer to the
3466 source before visiting vertices that are further away.
3467 In this context ``distance'' is defined as the number of edges in the
3468 shortest path from the source vertex.
3469 </para>
3470 <para>
3471 The BFS can be used to compute the shortest
3472 path from the source to all reachable vertices and the resulting
3473 shortest-path distances.
3474 </para>
3475 <para>
3476 BFS uses two data structures to to implement the traversal:
3477 a color marker for each vertex and a queue.
3478 White vertices are undiscovered while gray vertices are discovered
3479 but have undiscovered adjacent vertices. Black vertices are discovered
3480 and are adjacent to only other black or gray vertices.
3481 </para>
3482 <para>
3483 The algorithm proceeds by removing a vertex u from the queue and
3484 examining each out-edge (u,v). If an adjacent vertex v is not already
3485 discovered, it is colored gray and placed in the queue. After all of
3486 the out-edges are examined, vertex u is colored black and the process
3487 is repeated. Pseudo-code for the BFS algorithm is a listed below.
3488 </para>
3489 <code>
3490 IVertexListGraph g;
3491 BFS(IVertex s)
3492 {
3493 // initialize vertices
3494 foreach(IVertex u in g.Vertices)
3495 {
3496 Colors[u] = White;
3497 OnInitializeVertex(u); // event
3498 }
3499
3500 Visit(s);
3501 }
3502
3503 Visit(IVertex s)
3504 {
3505 Colors[s]=GraphColor.Gray;
3506 OnDiscoverVertex(s); //event
3507
3508 m_Q.Push(s);
3509 while (m_Q.Count != 0)
3510 {
3511 IVertex u = m_Q.Peek();
3512 m_Q.Pop();
3513 OnExamineVertex(u); // event
3514
3515 foreach(Edge e in g.OutEdges(u))
3516 {
3517 OnExamineEdge(e); // event
3518
3519 GraphColor vColor = Colors[e.Target];
3520 if (vColor == GraphColor.White)
3521 {
3522 OnTreeEdge(e); // event
3523 OnDiscoverVertex(v); // event
3524 Colors[v]=GraphColor.Gray;
3525 m_Q.Push(v);
3526 }
3527 else
3528 {
3529 OnNonTreeEdge(e);
3530 if (vColor == GraphColor.Gray)
3531 {
3532 OnGrayTarget(e); // event
3533 }
3534 else
3535 {
3536 OnBlackTarget(e); //event
3537 }
3538 }
3539 }
3540 Colors[u]=GraphColor.Black;
3541 OnFinishVertex(this, uArgs);
3542 }
3543 }
3544 </code>
3545 <para>This algorithm is directly inspired from the
3546 BoostGraphLibrary implementation.
3547 </para>
3548 </remarks>
3549 </member>
3550 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
3551 <summary>
3552 BreadthFirstSearch searcher constructor
3553 </summary>
3554 <param name="g">Graph to visit</param>
3555 </member>
3556 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexBuffer,QuickGraph.Collections.VertexColorDictionary)">
3557 <summary>
3558 BreadthFirstSearch searcher contructor
3559 </summary>
3560 <param name="g">Graph to visit</param>
3561 <param name="q">Vertex buffer</param>
3562 <param name="colors">Vertex color map</param>
3563 </member>
3564 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
3565 <summary>
3566 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.InitializeVertex"/> event.
3567 </summary>
3568 <param name="v">vertex that raised the event</param>
3569 </member>
3570 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnExamineVertex(QuickGraph.Concepts.IVertex)">
3571 <summary>
3572 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.ExamineVertex"/> event.
3573 </summary>
3574 <param name="v">vertex that raised the event</param>
3575 </member>
3576 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
3577 <summary>
3578 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.DiscoverVertex"/> event.
3579 </summary>
3580 <param name="v">vertex that raised the event</param>
3581 </member>
3582 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
3583 <summary>
3584 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.ExamineEdge"/> event.
3585 </summary>
3586 <param name="e">edge that raised the event</param>
3587 </member>
3588 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
3589 <summary>
3590 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.TreeEdge"/> event.
3591 </summary>
3592 <param name="e">edge that raised the event</param>
3593 </member>
3594 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnNonTreeEdge(QuickGraph.Concepts.IEdge)">
3595 <summary>
3596 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.NonTreeEdge"/> event.
3597 </summary>
3598 <param name="e">edge that raised the event</param>
3599 </member>
3600 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnGrayTarget(QuickGraph.Concepts.IEdge)">
3601 <summary>
3602 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.GrayTarget"/> event.
3603 </summary>
3604 <param name="e">edge that raised the event</param>
3605 </member>
3606 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnBlackTarget(QuickGraph.Concepts.IEdge)">
3607 <summary>
3608 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.BlackTarget"/> event.
3609 </summary>
3610 <param name="e">edge that raised the event</param>
3611 </member>
3612 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
3613 <summary>
3614 Raises the <see cref="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.FinishVertex"/> event.
3615 </summary>
3616 <param name="v">vertex that raised the event</param>
3617 </member>
3618 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
3619 <summary>
3620 Computes the bfs starting at s
3621 </summary>
3622 <param name="s">starting vertex</param>
3623 <exception cref="T:System.ArgumentNullException">s is null</exception>
3624 <remarks>
3625 This method initializes the color map before appliying the visit.
3626 </remarks>
3627 </member>
3628 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex)">
3629 <summary>
3630 Computes the bfs starting at s without initalization.
3631 </summary>
3632 <param name="s">starting vertex</param>
3633 <param name="depth">current depth</param>
3634 <exception cref="T:System.ArgumentNullException">s is null</exception>
3635 </member>
3636 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
3637 <summary>
3638
3639 </summary>
3640 <param name="vis"></param>
3641 </member>
3642 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.RegisterDistanceRecorderHandlers(QuickGraph.Concepts.Visitors.IDistanceRecorderVisitor)">
3643 <summary>
3644
3645 </summary>
3646 <param name="vis"></param>
3647 </member>
3648 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
3649 <summary>
3650
3651 </summary>
3652 <param name="vis"></param>
3653 </member>
3654 <member name="M:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
3655 <summary>
3656 Registers the predecessors handler
3657 </summary>
3658 <param name="vis"></param>
3659 </member>
3660 <member name="P:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.VisitedGraph">
3661 <summary>
3662 Visited graph
3663 </summary>
3664 </member>
3665 <member name="P:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.Colors">
3666 <summary>
3667 Gets the <see cref="T:QuickGraph.Concepts.IVertex"/> to <see cref="T:QuickGraph.Concepts.GraphColor"/>dictionary
3668 </summary>
3669 <value>
3670 <see cref="T:QuickGraph.Concepts.IVertex"/> to <see cref="T:QuickGraph.Concepts.GraphColor"/>dictionary
3671 </value>
3672 </member>
3673 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.InitializeVertex">
3674 <summary>
3675 Invoked on every vertex before the start of the search
3676 </summary>
3677 </member>
3678 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.ExamineVertex">
3679 <summary>
3680 Invoked in each vertex as it is removed from the queue
3681 </summary>
3682 </member>
3683 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.DiscoverVertex">
3684 <summary>
3685 Invoked the first time the algorithm encounters vertex u.
3686 All vertices closer to the source vertex have been discovered,
3687 and vertices further from the source have not yet been discovered.
3688 </summary>
3689 </member>
3690 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.ExamineEdge">
3691 <summary>
3692 Invoked on every out-edge of each vertex immediately after the vertex is removed from the queue.
3693 </summary>
3694 </member>
3695 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.TreeEdge">
3696 <summary>
3697 Invoked (in addition to ExamineEdge()) if the edge is a tree edge.
3698 The target vertex of edge e is discovered at this time.
3699 </summary>
3700 </member>
3701 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.NonTreeEdge">
3702 <summary>
3703 Invoked (in addition to examine_edge()) if the edge is not a tree
3704 edge.
3705 </summary>
3706 </member>
3707 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.GrayTarget">
3708 <summary>
3709 Invoked (in addition to non_tree_edge()) if the target vertex is
3710 colored gray at the time of examination. The color gray indicates
3711 that the vertex is currently in the queue.
3712 </summary>
3713 </member>
3714 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.BlackTarget">
3715 <summary>
3716 Invoked (in addition to NonTreeEdge()) if the target vertex is
3717 colored black at the time of examination. The color black indicates
3718 that the vertex is no longer in the queue.
3719 </summary>
3720 </member>
3721 <member name="E:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm.FinishVertex">
3722 <summary>
3723 Invoked after all of the out edges of u have been examined
3724 and all of the adjacent vertices have been discovered.
3725 </summary>
3726 </member>
3727 <member name="T:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm">
3728 <summary>
3729 The DepthFirstSearchAlgorithm performs a depth-first traversal of the
3730 vertices in a directed graph.
3731 </summary>
3732 <remarks>
3733 <para>
3734 When possible, a depth-first traversal chooses a vertex adjacent to
3735 the current vertex to visit next. If all adjacent vertices have
3736 already been discovered, or there are no adjacent vertices,
3737 then the algorithm backtracks to the last vertex that had undiscovered
3738 neighbors. Once all reachable vertices have been visited, the algorithm
3739 selects from any remaining undiscovered vertices and continues the
3740 traversal. The algorithm finishes when all vertices have been visited.
3741 </para>
3742 <para>
3743 Depth-first search is useful for categorizing edges in a graph,
3744 and for imposing an ordering on the vertices.
3745 </para>
3746 <para>
3747 Similar to the <seealso cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>, color
3748 markers are used to keep track of which vertices have been discovered.
3749 White marks vertices that have yet to be discovered,
3750 gray marks a vertex that is discovered but still has vertices adjacent
3751 to it that are undiscovered. A black vertex is discovered vertex that
3752 is not adjacent to any white vertices.
3753 </para>
3754 <para>The main loop pseudo-code is as follows:
3755 <code>
3756 IVertexListGraph g;
3757 DFS(IVertex s)
3758 {
3759 // initialize vertex colors
3760 foreach(IVertex v in g.Vertices)
3761 {
3762 Colors[v] = White;
3763 InitializeVertex(v); // event
3764 }
3765
3766 // if there is a starting vertex, visit it
3767 if (s != null)
3768 {
3769 StartVertex(s); // event
3770 Visit(s);
3771 }
3772
3773 // visit all vertices, if not previously visited
3774 foreach(IVertex v in g.Vertices)
3775 {
3776 if (Colors[v] != White)
3777 {
3778 StartVertex(v); // event
3779 Visit(v);
3780 }
3781 }
3782 }
3783 </code>
3784 </para>
3785 <para>The Visit method pseudo-code is as follows:
3786 <code>
3787 Visit(IVertexListGraph g, IVertex u)
3788 {
3789 Colors[u] = Gray;
3790 OnDiscoverVertex(u); // event
3791
3792 // examine edges
3793 foreach(IEdge e in g.OutEdges(u))
3794 {
3795 OnExamineEdge(e); // event
3796 if (Colors[u] == White)
3797 {
3798 OnTreeEdge(e); // event
3799 Visit(e.Target);
3800 }
3801 else if (Colors[u] == Gray)
3802 {
3803 OnBackEdge(e); // event
3804 }
3805 else
3806 OnForwardOrCrossEdge(e); // event
3807 }
3808
3809 Colors[u] = Black;
3810 OnFinishVertex(u); // event
3811 }
3812 </code>
3813 </para>
3814 <para>In itself the algorithm does not take action, it is the user
3815 job to attach handlers to the different events that take part during
3816 the algorithm:
3817 <list type="bullet">
3818 <listheader>
3819 <term>Event</term>
3820 <description>When</description>
3821 </listheader>
3822 <item>
3823 <term>InitializeVertex</term>
3824 <description>Invoked on every vertex of the graph before the start of the graph
3825 search.</description>
3826 </item>
3827 <item>
3828 <term>StartVertex</term>
3829 <description>Invoked on the source vertex once before the start of the search.</description>
3830 </item>
3831 <item>
3832 <term>DiscoverVertex</term>
3833 <description>Invoked when a vertex is encountered for the first time. </description>
3834 </item>
3835 <item>
3836 <term>ExamineEdge</term>
3837 <description>Invoked on every out-edge of each vertex after it is discovered.</description>
3838 </item>
3839 <item>
3840 <term>TreeEdge</term>
3841 <description>Invoked on each edge as it becomes a member of the edges that form
3842 the search tree. If you wish to record predecessors, do so at this
3843 event point. </description>
3844 </item>
3845 <item>
3846 <term>BackEdge</term>
3847 <description>Invoked on the back edges in the graph. </description>
3848 </item>
3849 <item>
3850 <term>FowardOrCrossEdge</term>
3851 <description>Invoked on forward or cross edges in the graph.
3852 (In an undirected graph this method is never called.)</description>
3853 </item>
3854 <item>
3855 <term>FinishVertex</term>
3856 <description>Invoked on a vertex after all of its out edges have been added to
3857 the search tree and all of the adjacent vertices have been
3858 discovered (but before their out-edges have been examined).</description>
3859 </item>
3860 </list>
3861 </para>
3862 <para>
3863 Predifined visitors, such as <seealso cref="T:QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor"/>
3864 and <seealso cref="T:QuickGraph.Concepts.Visitors.ITimeStamperVisitor"/>
3865 can be used with this algorithm.
3866 </para>
3867 <para>This algorithm is directly inspired from the
3868 BoostGraphLibrary implementation.
3869 </para>
3870 </remarks>
3871 </member>
3872 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
3873 <summary>
3874 A depth first search algorithm on a directed graph
3875 </summary>
3876 <param name="g">The graph to traverse</param>
3877 <exception cref="T:System.ArgumentNullException">g is null</exception>
3878 </member>
3879 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexColorDictionary)">
3880 <summary>
3881 A depth first search algorithm on a directed graph
3882 </summary>
3883 <param name="g">The graph to traverse</param>
3884 <param name="colors">vertex color map</param>
3885 <exception cref="T:System.ArgumentNullException">g or colors are null</exception>
3886 </member>
3887 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
3888 <summary>
3889 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.InitializeVertex"/> event.
3890 </summary>
3891 <param name="v">vertex that raised the event</param>
3892 </member>
3893 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
3894 <summary>
3895 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.StartVertex"/> event.
3896 </summary>
3897 <param name="v">vertex that raised the event</param>
3898 </member>
3899 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
3900 <summary>
3901 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.DiscoverVertex"/> event.
3902 </summary>
3903 <param name="v">vertex that raised the event</param>
3904 </member>
3905 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
3906 <summary>
3907 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.ExamineEdge"/> event.
3908 </summary>
3909 <param name="e">edge that raised the event</param>
3910 </member>
3911 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
3912 <summary>
3913 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.TreeEdge"/> event.
3914 </summary>
3915 <param name="e">edge that raised the event</param>
3916 </member>
3917 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
3918 <summary>
3919 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.BackEdge"/> event.
3920 </summary>
3921 <param name="e">edge that raised the event</param>
3922 </member>
3923 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
3924 <summary>
3925 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.ForwardOrCrossEdge"/> event.
3926 </summary>
3927 <param name="e">edge that raised the event</param>
3928 </member>
3929 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
3930 <summary>
3931 Raises the <see cref="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.FinishVertex"/> event.
3932 </summary>
3933 <param name="v">vertex that raised the event</param>
3934 </member>
3935 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.Compute">
3936 <summary>
3937 Execute the DFS search.
3938 </summary>
3939 </member>
3940 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
3941 <summary>
3942 Execute the DFS starting with the vertex s
3943 </summary>
3944 <param name="s">Starting vertex</param>
3945 </member>
3946 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.Initialize">
3947 <summary>
3948 Initializes the vertex color map
3949 </summary>
3950 <remarks>
3951 </remarks>
3952 </member>
3953 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex,System.Int32)">
3954 <summary>
3955 Does a depth first search on the vertex u
3956 </summary>
3957 <param name="u">vertex to explore</param>
3958 <param name="depth">current recursion depth</param>
3959 <exception cref="T:System.ArgumentNullException">u cannot be null</exception>
3960 </member>
3961 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
3962 <summary>
3963 Registers the predecessors handler
3964 </summary>
3965 <param name="vis"></param>
3966 </member>
3967 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.RegisterTimeStamperHandlers(QuickGraph.Concepts.Visitors.ITimeStamperVisitor)">
3968 <summary>
3969
3970 </summary>
3971 <param name="vis"></param>
3972 </member>
3973 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
3974 <summary>
3975
3976 </summary>
3977 <param name="vis"></param>
3978 </member>
3979 <member name="M:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
3980 <summary>
3981
3982 </summary>
3983 <param name="vis"></param>
3984 </member>
3985 <member name="P:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.VisitedGraph">
3986 <summary>
3987 Visited graph
3988 </summary>
3989 </member>
3990 <member name="P:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.Colors">
3991 <summary>
3992 Gets the vertex color map
3993 </summary>
3994 <value>
3995 Vertex color (<see cref="T:QuickGraph.Concepts.GraphColor"/>) dictionary
3996 </value>
3997 </member>
3998 <member name="P:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.QuickGraph#Concepts#Algorithms#IVertexColorizerAlgorithm#Colors">
3999 <summary>
4000 IVertexColorizerAlgorithm implementation
4001 </summary>
4002 </member>
4003 <member name="P:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.MaxDepth">
4004 <summary>
4005 Gets or sets the maximum exploration depth, from
4006 the start vertex.
4007 </summary>
4008 <remarks>
4009 Defaulted at <c>int.MaxValue</c>.
4010 </remarks>
4011 <value>
4012 Maximum exploration depth.
4013 </value>
4014 </member>
4015 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.InitializeVertex">
4016 <summary>
4017 Invoked on every vertex of the graph before the start of the graph
4018 search.
4019 </summary>
4020 </member>
4021 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.StartVertex">
4022 <summary>
4023 Invoked on the source vertex once before the start of the search.
4024 </summary>
4025 </member>
4026 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.DiscoverVertex">
4027 <summary>
4028 Invoked when a vertex is encountered for the first time.
4029 </summary>
4030 </member>
4031 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.ExamineEdge">
4032 <summary>
4033 Invoked on every out-edge of each vertex after it is discovered.
4034 </summary>
4035 </member>
4036 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.TreeEdge">
4037 <summary>
4038 Invoked on each edge as it becomes a member of the edges that form
4039 the search tree. If you wish to record predecessors, do so at this
4040 event point.
4041 </summary>
4042 </member>
4043 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.BackEdge">
4044 <summary>
4045 Invoked on the back edges in the graph.
4046 </summary>
4047 </member>
4048 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.ForwardOrCrossEdge">
4049 <summary>
4050 Invoked on forward or cross edges in the graph.
4051 (In an undirected graph this method is never called.)
4052 </summary>
4053 </member>
4054 <member name="E:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm.FinishVertex">
4055 <summary>
4056 Invoked on a vertex after all of its out edges have been added to
4057 the search tree and all of the adjacent vertices have been
4058 discovered (but before their out-edges have been examined).
4059 </summary>
4060 </member>
4061 <member name="T:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm">
4062 <summary>
4063 The EdgeDepthFirstSearchAlgorithm performs a depth-first traversal of the
4064 edges in a directed graph.
4065 </summary>
4066 </member>
4067 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IEdgeListAndIncidenceGraph)">
4068 <summary>
4069 A depth first search algorithm on a directed graph
4070 </summary>
4071 <param name="g">The graph to traverse</param>
4072 <exception cref="T:System.ArgumentNullException">g is null</exception>
4073 </member>
4074 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IEdgeListAndIncidenceGraph,QuickGraph.Collections.EdgeColorDictionary)">
4075 <summary>
4076 A depth first search algorithm on a directed graph
4077 </summary>
4078 <param name="g">The graph to traverse</param>
4079 <param name="colors">vertex color map</param>
4080 <exception cref="T:System.ArgumentNullException">g or colors are null</exception>
4081 </member>
4082 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnInitializeEdge(QuickGraph.Concepts.IEdge)">
4083 <summary>
4084 Triggers the ForwardOrCrossEdge event.
4085 </summary>
4086 <param name="e"></param>
4087 </member>
4088 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4089 <summary>
4090 Triggers the StartVertex event.
4091 </summary>
4092 <param name="v"></param>
4093 </member>
4094 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnStartEdge(QuickGraph.Concepts.IEdge)">
4095 <summary>
4096 Triggers the StartEdge event.
4097 </summary>
4098 <param name="e"></param>
4099 </member>
4100 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnDiscoverTreeEdge(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IEdge)">
4101 <summary>
4102 Triggers DiscoverEdge event
4103 </summary>
4104 <param name="se"></param>
4105 <param name="e"></param>
4106 </member>
4107 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
4108 <summary>
4109 Triggers the TreeEdge event.
4110 </summary>
4111 <param name="e"></param>
4112 </member>
4113 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
4114 <summary>
4115 Triggers the BackEdge event.
4116 </summary>
4117 <param name="e"></param>
4118 </member>
4119 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
4120 <summary>
4121 Triggers the ForwardOrCrossEdge event.
4122 </summary>
4123 <param name="e"></param>
4124 </member>
4125 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.OnFinishEdge(QuickGraph.Concepts.IEdge)">
4126 <summary>
4127 Triggers the ForwardOrCrossEdge event.
4128 </summary>
4129 <param name="e"></param>
4130 </member>
4131 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.Compute">
4132 <summary>
4133 Compute the algorithm starting at the first vertex.
4134 </summary>
4135 </member>
4136 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
4137 <summary>
4138 Execute the EDFS starting with the vertex s
4139 </summary>
4140 <param name="v">Starting vertex</param>
4141 </member>
4142 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.Initialize">
4143 <summary>
4144 Initiliaze color map
4145 </summary>
4146 </member>
4147 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IEdge,System.Int32)">
4148 <summary>
4149 Does a depth first search on the vertex u
4150 </summary>
4151 <param name="se">edge to explore</param>
4152 <param name="depth">current exploration depth</param>
4153 <exception cref="T:System.ArgumentNullException">se cannot be null</exception>
4154 </member>
4155 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
4156 <summary>
4157 Registers the handlers of a <see cref="T:QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor"/>
4158 visitor.
4159 </summary>
4160 <param name="vis">visitor to "attach"</param>
4161 </member>
4162 <member name="M:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.RegisterEdgeColorizerHandlers(QuickGraph.Concepts.Visitors.IEdgeColorizerVisitor)">
4163 <summary>
4164 Registers the handlers of a <see cref="T:QuickGraph.Concepts.Visitors.IEdgeColorizerVisitor"/>
4165 visitor.
4166 </summary>
4167 <param name="vis">visitor to "attach"</param>
4168 </member>
4169 <member name="P:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.VisitedGraph">
4170 <summary>
4171 Gets the <see cref="T:QuickGraph.Concepts.Traversals.IEdgeListAndIncidenceGraph"/> visited graph
4172 </summary>
4173 <value>
4174 The <see cref="T:QuickGraph.Concepts.Traversals.IEdgeListAndIncidenceGraph"/> visited graph
4175 </value>
4176 </member>
4177 <member name="P:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.EdgeColors">
4178 <summary>
4179 Gets the edge <see cref="T:QuickGraph.Concepts.GraphColor"/> dictionary
4180 </summary>
4181 <value>
4182 Edge <see cref="T:QuickGraph.Concepts.GraphColor"/> dictionary
4183 </value>
4184 </member>
4185 <member name="P:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.MaxDepth">
4186 <summary>
4187 Gets or sets the maximum exploration depth, from
4188 the start edge.
4189 </summary>
4190 <remarks>
4191 Defaulted at <c>int.MaxValue</c>.
4192 </remarks>
4193 <value>
4194 Maximum exploration depth.
4195 </value>
4196 </member>
4197 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.InitializeEdge">
4198 <summary>
4199 Invoked on every vertex of the graph before the start of the graph
4200 search.
4201 </summary>
4202 </member>
4203 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.StartVertex">
4204 <summary>
4205 Invoked on the source vertex once before the start of the search.
4206 </summary>
4207 </member>
4208 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.StartEdge">
4209 <summary>
4210 Invoked on the first edge of a test case
4211 </summary>
4212 </member>
4213 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.DiscoverTreeEdge">
4214 <summary>
4215
4216 </summary>
4217 </member>
4218 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.TreeEdge">
4219 <summary>
4220 Invoked on each edge as it becomes a member of the edges that form
4221 the search tree. If you wish to record predecessors, do so at this
4222 event point.
4223 </summary>
4224 </member>
4225 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.BackEdge">
4226 <summary>
4227 Invoked on the back edges in the graph.
4228 </summary>
4229 </member>
4230 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.ForwardOrCrossEdge">
4231 <summary>
4232 Invoked on forward or cross edges in the graph.
4233 (In an undirected graph this method is never called.)
4234 </summary>
4235 </member>
4236 <member name="E:QuickGraph.Algorithms.Search.EdgeDepthFirstSearchAlgorithm.FinishEdge">
4237 <summary>
4238 Invoked on a edge after all of its out edges have been added to
4239 the search tree and all of the adjacent vertices have been
4240 discovered (but before their out-edges have been examined).
4241 </summary>
4242 </member>
4243 <member name="T:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm">
4244 <summary>
4245 The EdgeDepthFirstSearchAlgorithm performs a depth-first traversal of the
4246 edges in a directed graph.
4247 </summary>
4248 </member>
4249 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph)">
4250 <summary>
4251 A depth first search algorithm on a directed graph
4252 </summary>
4253 <param name="g">The graph to traverse</param>
4254 <exception cref="T:System.ArgumentNullException">g is null</exception>
4255 </member>
4256 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph,QuickGraph.Collections.EdgeColorDictionary)">
4257 <summary>
4258 A depth first search algorithm on a directed graph
4259 </summary>
4260 <param name="g">The graph to traverse</param>
4261 <param name="colors">vertex color map</param>
4262 <exception cref="T:System.ArgumentNullException">g or colors are null</exception>
4263 </member>
4264 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnInitializeEdge(QuickGraph.Concepts.IEdge)">
4265 <summary>
4266 Triggers the ForwardOrCrossEdge event.
4267 </summary>
4268 <param name="e"></param>
4269 </member>
4270 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4271 <summary>
4272 Triggers the StartVertex event.
4273 </summary>
4274 <param name="v"></param>
4275 </member>
4276 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnStartEdge(QuickGraph.Concepts.IEdge)">
4277 <summary>
4278 Triggers the StartEdge event.
4279 </summary>
4280 <param name="e"></param>
4281 </member>
4282 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnDiscoverTreeEdge(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IEdge)">
4283 <summary>
4284 Triggers DiscoverEdge event
4285 </summary>
4286 <param name="se"></param>
4287 <param name="e"></param>
4288 </member>
4289 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
4290 <summary>
4291 Triggers the TreeEdge event.
4292 </summary>
4293 <param name="e"></param>
4294 </member>
4295 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
4296 <summary>
4297 Triggers the BackEdge event.
4298 </summary>
4299 <param name="e"></param>
4300 </member>
4301 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
4302 <summary>
4303 Triggers the ForwardOrCrossEdge event.
4304 </summary>
4305 <param name="e"></param>
4306 </member>
4307 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.OnFinishEdge(QuickGraph.Concepts.IEdge)">
4308 <summary>
4309 Triggers the ForwardOrCrossEdge event.
4310 </summary>
4311 <param name="e"></param>
4312 </member>
4313 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.Compute">
4314 <summary>
4315 Compute the algorithm starting at the first vertex.
4316 </summary>
4317 </member>
4318 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
4319 <summary>
4320 Execute the EDFS starting with the vertex s
4321 </summary>
4322 <param name="v">Starting vertex</param>
4323 </member>
4324 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.Initialize">
4325 <summary>
4326 Initiliaze color map
4327 </summary>
4328 </member>
4329 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IEdge,System.Int32)">
4330 <summary>
4331 Does a depth first search on the vertex u
4332 </summary>
4333 <param name="se">edge to explore</param>
4334 <param name="depth">current exploration depth</param>
4335 <exception cref="T:System.ArgumentNullException">se cannot be null</exception>
4336 </member>
4337 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
4338 <summary>
4339 Registers the handlers of a <see cref="T:QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor"/>
4340 visitor.
4341 </summary>
4342 <param name="vis">visitor to "attach"</param>
4343 </member>
4344 <member name="M:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.RegisterEdgeColorizerHandlers(QuickGraph.Concepts.Visitors.IEdgeColorizerVisitor)">
4345 <summary>
4346 Registers the handlers of a <see cref="T:QuickGraph.Concepts.Visitors.IEdgeColorizerVisitor"/>
4347 visitor.
4348 </summary>
4349 <param name="vis">visitor to "attach"</param>
4350 </member>
4351 <member name="P:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.VisitedGraph">
4352 <summary>
4353 Gets the <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph"/> visited graph
4354 </summary>
4355 <value>
4356 The <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph"/> visited graph
4357 </value>
4358 </member>
4359 <member name="P:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.EdgeColors">
4360 <summary>
4361 Gets the edge <see cref="T:QuickGraph.Concepts.GraphColor"/> dictionary
4362 </summary>
4363 <value>
4364 Edge <see cref="T:QuickGraph.Concepts.GraphColor"/> dictionary
4365 </value>
4366 </member>
4367 <member name="P:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.MaxDepth">
4368 <summary>
4369 Gets or sets the maximum exploration depth, from
4370 the start edge.
4371 </summary>
4372 <remarks>
4373 Defaulted at <c>int.MaxValue</c>.
4374 </remarks>
4375 <value>
4376 Maximum exploration depth.
4377 </value>
4378 </member>
4379 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.InitializeEdge">
4380 <summary>
4381 Invoked on every vertex of the graph before the start of the graph
4382 search.
4383 </summary>
4384 </member>
4385 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.StartVertex">
4386 <summary>
4387 Invoked on the source vertex once before the start of the search.
4388 </summary>
4389 </member>
4390 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.StartEdge">
4391 <summary>
4392 Invoked on the first edge of a test case
4393 </summary>
4394 </member>
4395 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.DiscoverTreeEdge">
4396 <summary>
4397
4398 </summary>
4399 </member>
4400 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.TreeEdge">
4401 <summary>
4402 Invoked on each edge as it becomes a member of the edges that form
4403 the search tree. If you wish to record predecessors, do so at this
4404 event point.
4405 </summary>
4406 </member>
4407 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.BackEdge">
4408 <summary>
4409 Invoked on the back edges in the graph.
4410 </summary>
4411 </member>
4412 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.ForwardOrCrossEdge">
4413 <summary>
4414 Invoked on forward or cross edges in the graph.
4415 (In an undirected graph this method is never called.)
4416 </summary>
4417 </member>
4418 <member name="E:QuickGraph.Algorithms.Search.EdgeHeightFirstSearchAlgorithm.FinishEdge">
4419 <summary>
4420 Invoked on a edge after all of its out edges have been added to
4421 the search tree and all of the adjacent vertices have been
4422 discovered (but before their out-edges have been examined).
4423 </summary>
4424 </member>
4425 <member name="T:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm">
4426 <summary>
4427 </summary>
4428 </member>
4429 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph)">
4430 <summary>
4431 A height first search algorithm on a directed graph
4432 </summary>
4433 <param name="g">The graph to traverse</param>
4434 <exception cref="T:System.ArgumentNullException">g is null</exception>
4435 </member>
4436 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph,QuickGraph.Collections.VertexColorDictionary)">
4437 <summary>
4438 A height first search algorithm on a directed graph
4439 </summary>
4440 <param name="g">The graph to traverse</param>
4441 <param name="colors">vertex color map</param>
4442 <exception cref="T:System.ArgumentNullException">g or colors are null</exception>
4443 </member>
4444 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
4445 <summary>
4446 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.InitializeVertex"/> event.
4447 </summary>
4448 <param name="v">vertex that raised the event</param>
4449 </member>
4450 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4451 <summary>
4452 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.StartVertex"/> event.
4453 </summary>
4454 <param name="v">vertex that raised the event</param>
4455 </member>
4456 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
4457 <summary>
4458 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.DiscoverVertex"/> event.
4459 </summary>
4460 <param name="v">vertex that raised the event</param>
4461 </member>
4462 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
4463 <summary>
4464 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.ExamineEdge"/> event.
4465 </summary>
4466 <param name="e">edge that raised the event</param>
4467 </member>
4468 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
4469 <summary>
4470 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.TreeEdge"/> event.
4471 </summary>
4472 <param name="e">edge that raised the event</param>
4473 </member>
4474 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
4475 <summary>
4476 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.BackEdge"/> event.
4477 </summary>
4478 <param name="e">edge that raised the event</param>
4479 </member>
4480 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
4481 <summary>
4482 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.ForwardOrCrossEdge"/> event.
4483 </summary>
4484 <param name="e">edge that raised the event</param>
4485 </member>
4486 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
4487 <summary>
4488 Raises the <see cref="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.FinishVertex"/> event.
4489 </summary>
4490 <param name="v">vertex that raised the event</param>
4491 </member>
4492 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.Compute">
4493 <summary>
4494 Execute the DFS search.
4495 </summary>
4496 </member>
4497 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
4498 <summary>
4499 Execute the DFS starting with the vertex s
4500 </summary>
4501 <param name="s">Starting vertex</param>
4502 </member>
4503 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.Initialize">
4504 <summary>
4505 Initializes the vertex color map
4506 </summary>
4507 <remarks>
4508 </remarks>
4509 </member>
4510 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex,System.Int32)">
4511 <summary>
4512 Does a depth first search on the vertex u
4513 </summary>
4514 <param name="u">vertex to explore</param>
4515 <param name="depth">current recursion depth</param>
4516 <exception cref="T:System.ArgumentNullException">u cannot be null</exception>
4517 </member>
4518 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
4519 <summary>
4520 Registers the predecessors handler
4521 </summary>
4522 <param name="vis"></param>
4523 </member>
4524 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.RegisterTimeStamperHandlers(QuickGraph.Concepts.Visitors.ITimeStamperVisitor)">
4525 <summary>
4526
4527 </summary>
4528 <param name="vis"></param>
4529 </member>
4530 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
4531 <summary>
4532
4533 </summary>
4534 <param name="vis"></param>
4535 </member>
4536 <member name="M:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
4537 <summary>
4538
4539 </summary>
4540 <param name="vis"></param>
4541 </member>
4542 <member name="P:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.VisitedGraph">
4543 <summary>
4544 Visited graph
4545 </summary>
4546 </member>
4547 <member name="P:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.Colors">
4548 <summary>
4549 Gets the vertex color map
4550 </summary>
4551 <value>
4552 Vertex color (<see cref="T:QuickGraph.Concepts.GraphColor"/>) dictionary
4553 </value>
4554 </member>
4555 <member name="P:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.QuickGraph#Concepts#Algorithms#IVertexColorizerAlgorithm#Colors">
4556 <summary>
4557 IVertexColorizerAlgorithm implementation
4558 </summary>
4559 </member>
4560 <member name="P:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.MaxDepth">
4561 <summary>
4562 Gets or sets the maximum exploration depth, from
4563 the start vertex.
4564 </summary>
4565 <remarks>
4566 Defaulted at <c>int.MaxValue</c>.
4567 </remarks>
4568 <value>
4569 Maximum exploration depth.
4570 </value>
4571 </member>
4572 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.InitializeVertex">
4573 <summary>
4574 Invoked on every vertex of the graph before the start of the graph
4575 search.
4576 </summary>
4577 </member>
4578 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.StartVertex">
4579 <summary>
4580 Invoked on the source vertex once before the start of the search.
4581 </summary>
4582 </member>
4583 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.DiscoverVertex">
4584 <summary>
4585 Invoked when a vertex is encountered for the first time.
4586 </summary>
4587 </member>
4588 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.ExamineEdge">
4589 <summary>
4590 Invoked on every out-edge of each vertex after it is discovered.
4591 </summary>
4592 </member>
4593 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.TreeEdge">
4594 <summary>
4595 Invoked on each edge as it becomes a member of the edges that form
4596 the search tree. If you wish to record predecessors, do so at this
4597 event point.
4598 </summary>
4599 </member>
4600 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.BackEdge">
4601 <summary>
4602 Invoked on the back edges in the graph.
4603 </summary>
4604 </member>
4605 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.ForwardOrCrossEdge">
4606 <summary>
4607 Invoked on forward or cross edges in the graph.
4608 (In an undirected graph this method is never called.)
4609 </summary>
4610 </member>
4611 <member name="E:QuickGraph.Algorithms.Search.HeightFirstSearchAlgorithm.FinishVertex">
4612 <summary>
4613 Invoked on a vertex after all of its out edges have been added to
4614 the search tree and all of the adjacent vertices have been
4615 discovered (but before their out-edges have been examined).
4616 </summary>
4617 </member>
4618 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4619 <summary>
4620 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.StartVertex"/> event.
4621 </summary>
4622 <param name="v">vertex that raised the event</param>
4623 </member>
4624 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
4625 <summary>
4626 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.DiscoverVertex"/> event.
4627 </summary>
4628 <param name="v">vertex that raised the event</param>
4629 </member>
4630 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
4631 <summary>
4632 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.ExamineEdge"/> event.
4633 </summary>
4634 <param name="e">edge that raised the event</param>
4635 </member>
4636 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
4637 <summary>
4638 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.TreeEdge"/> event.
4639 </summary>
4640 <param name="e">edge that raised the event</param>
4641 </member>
4642 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
4643 <summary>
4644 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.BackEdge"/> event.
4645 </summary>
4646 <param name="e">edge that raised the event</param>
4647 </member>
4648 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
4649 <summary>
4650 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.ForwardOrCrossEdge"/> event.
4651 </summary>
4652 <param name="e">edge that raised the event</param>
4653 </member>
4654 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
4655 <summary>
4656 Raises the <see cref="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.FinishVertex"/> event.
4657 </summary>
4658 <param name="v">vertex that raised the event</param>
4659 </member>
4660 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
4661 <summary>
4662 Does an implicit depth first search on the graph
4663 </summary>
4664 <param name="startVertex">
4665 Start vertex of the depth first search
4666 </param>
4667 </member>
4668 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.Initialize">
4669 <summary>
4670 Initializes the algorithm before computation.
4671 </summary>
4672 </member>
4673 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex,System.Int32)">
4674 <summary>
4675 Visit vertex <paramref name="u"/>.
4676 </summary>
4677 <param name="u"></param>
4678 <param name="depth"></param>
4679 </member>
4680 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
4681 <summary>
4682 Registers the predecessors handler
4683 </summary>
4684 <param name="vis"></param>
4685 </member>
4686 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.RegisterTimeStamperHandlers(QuickGraph.Concepts.Visitors.ITimeStamperVisitor)">
4687 <summary>
4688
4689 </summary>
4690 <param name="vis"></param>
4691 </member>
4692 <member name="M:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
4693 <summary>
4694
4695 </summary>
4696 <param name="vis"></param>
4697 </member>
4698 <member name="P:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.VisitedGraph">
4699 <summary>
4700 Gets the Visited graph
4701 </summary>
4702 </member>
4703 <member name="P:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.Colors">
4704 <summary>
4705 Gets the vertex color map
4706 </summary>
4707 <value>
4708 Vertex color (<see cref="T:QuickGraph.Concepts.GraphColor"/>) dictionary
4709 </value>
4710 </member>
4711 <member name="P:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.MaxDepth">
4712 <summary>
4713 Gets or sets the maximum exploration depth, from
4714 the start vertex.
4715 </summary>
4716 <remarks>
4717 Defaulted at <c>int.MaxValue</c>.
4718 </remarks>
4719 <value>
4720 Maximum exploration depth.
4721 </value>
4722 </member>
4723 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.StartVertex">
4724 <summary>
4725 Invoked on the source vertex once before the start of the search.
4726 </summary>
4727 </member>
4728 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.DiscoverVertex">
4729 <summary>
4730 Invoked when a vertex is encountered for the first time.
4731 </summary>
4732 </member>
4733 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.ExamineEdge">
4734 <summary>
4735 Invoked on every out-edge of each vertex after it is discovered.
4736 </summary>
4737 </member>
4738 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.TreeEdge">
4739 <summary>
4740 Invoked on each edge as it becomes a member of the edges that form
4741 the search tree. If you wish to record predecessors, do so at this
4742 event point.
4743 </summary>
4744 </member>
4745 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.BackEdge">
4746 <summary>
4747 Invoked on the back edges in the graph.
4748 </summary>
4749 </member>
4750 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.ForwardOrCrossEdge">
4751 <summary>
4752 Invoked on forward or cross edges in the graph.
4753 (In an undirected graph this method is never called.)
4754 </summary>
4755 </member>
4756 <member name="E:QuickGraph.Algorithms.Search.ImplicitDepthFirstSearchAlgorithm.FinishVertex">
4757 <summary>
4758 Invoked on a vertex after all of its out edges have been added to
4759 the search tree and all of the adjacent vertices have been
4760 discovered (but before their out-edges have been examined).
4761 </summary>
4762 </member>
4763 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4764 <summary>
4765 Triggers the StartVertex event.
4766 </summary>
4767 <param name="v"></param>
4768 </member>
4769 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnStartEdge(QuickGraph.Concepts.IEdge)">
4770 <summary>
4771 Triggers the StartEdge event.
4772 </summary>
4773 <param name="e"></param>
4774 </member>
4775 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnDiscoverTreeEdge(QuickGraph.Concepts.IEdge,QuickGraph.Concepts.IEdge)">
4776 <summary>
4777 Triggers DiscoverEdge event
4778 </summary>
4779 <param name="se"></param>
4780 <param name="e"></param>
4781 </member>
4782 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
4783 <summary>
4784 Triggers the TreeEdge event.
4785 </summary>
4786 <param name="e"></param>
4787 </member>
4788 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
4789 <summary>
4790 Triggers the BackEdge event.
4791 </summary>
4792 <param name="e"></param>
4793 </member>
4794 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnForwardOrCrossEdge(QuickGraph.Concepts.IEdge)">
4795 <summary>
4796 Triggers the ForwardOrCrossEdge event.
4797 </summary>
4798 <param name="e"></param>
4799 </member>
4800 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.OnFinishEdge(QuickGraph.Concepts.IEdge)">
4801 <summary>
4802 Triggers the ForwardOrCrossEdge event.
4803 </summary>
4804 <param name="e"></param>
4805 </member>
4806 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
4807 <summary>
4808 Does an implicit depth first search on the graph
4809 </summary>
4810 <param name="startVertex">
4811 Start vertex of the depth first search
4812 </param>
4813 </member>
4814 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IEdge,System.Int32)">
4815 <summary>
4816 Does a depth first search on the vertex u
4817 </summary>
4818 <param name="se">edge to explore</param>
4819 <param name="depth">current exploration depth</param>
4820 <exception cref="T:System.ArgumentNullException">se cannot be null</exception>
4821 </member>
4822 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.Initialize">
4823 <summary>
4824 Initializes the algorithm before computation.
4825 </summary>
4826 </member>
4827 <member name="M:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
4828 <summary>
4829 Registers the handlers of a <see cref="T:QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor"/>
4830 visitor.
4831 </summary>
4832 <param name="vis">visitor to "attach"</param>
4833 </member>
4834 <member name="P:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.VisitedGraph">
4835 <summary>
4836 Gets the Visited graph
4837 </summary>
4838 </member>
4839 <member name="P:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.EdgeColors">
4840 <summary>
4841 Gets the vertex color map
4842 </summary>
4843 <value>
4844 Vertex color (<see cref="T:QuickGraph.Concepts.GraphColor"/>) dictionary
4845 </value>
4846 </member>
4847 <member name="P:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.MaxDepth">
4848 <summary>
4849 Gets or sets the maximum exploration depth, from
4850 the start vertex.
4851 </summary>
4852 <remarks>
4853 Defaulted at <c>int.MaxValue</c>.
4854 </remarks>
4855 <value>
4856 Maximum exploration depth.
4857 </value>
4858 </member>
4859 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.StartVertex">
4860 <summary>
4861 Invoked on the source vertex once before the start of the search.
4862 </summary>
4863 </member>
4864 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.StartEdge">
4865 <summary>
4866 Invoked on the first edge of a test case
4867 </summary>
4868 </member>
4869 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.DiscoverTreeEdge">
4870 <summary>
4871
4872 </summary>
4873 </member>
4874 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.TreeEdge">
4875 <summary>
4876 Invoked on each edge as it becomes a member of the edges that form
4877 the search tree. If you wish to record predecessors, do so at this
4878 event point.
4879 </summary>
4880 </member>
4881 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.BackEdge">
4882 <summary>
4883 Invoked on the back edges in the graph.
4884 </summary>
4885 </member>
4886 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.ForwardOrCrossEdge">
4887 <summary>
4888 Invoked on forward or cross edges in the graph.
4889 (In an undirected graph this method is never called.)
4890 </summary>
4891 </member>
4892 <member name="E:QuickGraph.Algorithms.Search.ImplicitEdgeDepthFirstSearchAlgorithm.FinishEdge">
4893 <summary>
4894 Invoked on a edge after all of its out edges have been added to
4895 the search tree and all of the adjacent vertices have been
4896 discovered (but before their out-edges have been examined).
4897 </summary>
4898 </member>
4899 <member name="T:QuickGraph.Algorithms.Search.NamespaceDoc">
4900 <summary>
4901 The <b>QuickGraph.Algorithms.Search</b> namespace contains basic
4902 algorithms, such as the <see cref="T:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm"/>
4903 that are the building blocks other more complex algorithms.
4904 </summary>
4905 </member>
4906 <member name="T:QuickGraph.Algorithms.Search.NeighborBreadthFirstSearch">
4907 <summary>
4908 Summary description for NeighborBreadthFirstSearch.
4909 </summary>
4910 </member>
4911 <member name="T:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm">
4912 <summary>
4913 The DepthFirstSearchAlgorithm performs a depth-first traversal of the
4914 vertices in a directed graph.
4915 </summary>
4916 </member>
4917 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph)">
4918 <summary>
4919 A depth first search algorithm on a directed graph
4920 </summary>
4921 <param name="g">The graph to traverse</param>
4922 <exception cref="T:System.ArgumentNullException">g is null</exception>
4923 </member>
4924 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexListGraph,QuickGraph.Collections.VertexColorDictionary)">
4925 <summary>
4926 A depth first search algorithm on a directed graph
4927 </summary>
4928 <param name="g">The graph to traverse</param>
4929 <param name="colors">vertex color map</param>
4930 <exception cref="T:System.ArgumentNullException">g or colors are null</exception>
4931 </member>
4932 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
4933 <summary>
4934 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.InitializeVertex"/> event.
4935 </summary>
4936 <param name="v">vertex that raised the event</param>
4937 </member>
4938 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
4939 <summary>
4940 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.StartVertex"/> event.
4941 </summary>
4942 <param name="v">vertex that raised the event</param>
4943 </member>
4944 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
4945 <summary>
4946 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.DiscoverVertex"/> event.
4947 </summary>
4948 <param name="v">vertex that raised the event</param>
4949 </member>
4950 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnExamineOutEdge(QuickGraph.Concepts.IEdge)">
4951 <summary>
4952 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ExamineOutEdge"/> event.
4953 </summary>
4954 <param name="e">edge that raised the event</param>
4955 </member>
4956 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnExamineInEdge(QuickGraph.Concepts.IEdge)">
4957 <summary>
4958 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ExamineInEdge"/> event.
4959 </summary>
4960 <param name="e">edge that raised the event</param>
4961 </member>
4962 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnTreeOutEdge(QuickGraph.Concepts.IEdge)">
4963 <summary>
4964 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.TreeOutEdge"/> event.
4965 </summary>
4966 <param name="e">edge that raised the event</param>
4967 </member>
4968 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnTreeInEdge(QuickGraph.Concepts.IEdge)">
4969 <summary>
4970 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.TreeInEdge"/> event.
4971 </summary>
4972 <param name="e">edge that raised the event</param>
4973 </member>
4974 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnBackOutEdge(QuickGraph.Concepts.IEdge)">
4975 <summary>
4976 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.BackOutEdge"/> event.
4977 </summary>
4978 <param name="e">edge that raised the event</param>
4979 </member>
4980 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnBackInEdge(QuickGraph.Concepts.IEdge)">
4981 <summary>
4982 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.BackInEdge"/> event.
4983 </summary>
4984 <param name="e">edge that raised the event</param>
4985 </member>
4986 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnForwardOrCrossOutEdge(QuickGraph.Concepts.IEdge)">
4987 <summary>
4988 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ForwardOrCrossOutEdge"/> event.
4989 </summary>
4990 <param name="e">edge that raised the event</param>
4991 </member>
4992 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnForwardOrCrossInEdge(QuickGraph.Concepts.IEdge)">
4993 <summary>
4994 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ForwardOrCrossInEdge"/> event.
4995 </summary>
4996 <param name="e">edge that raised the event</param>
4997 </member>
4998 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
4999 <summary>
5000 Raises the <see cref="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.FinishVertex"/> event.
5001 </summary>
5002 <param name="v">vertex that raised the event</param>
5003 </member>
5004 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.Compute">
5005 <summary>
5006 Execute the DFS search.
5007 </summary>
5008 </member>
5009 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
5010 <summary>
5011 Execute the DFS starting with the vertex s
5012 </summary>
5013 <param name="s">Starting vertex</param>
5014 </member>
5015 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.Initialize">
5016 <summary>
5017 Initializes the vertex color map
5018 </summary>
5019 <remarks>
5020 </remarks>
5021 </member>
5022 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex,System.Int32)">
5023 <summary>
5024 Does a depth first search on the vertex u
5025 </summary>
5026 <param name="u">vertex to explore</param>
5027 <param name="depth">current recursion depth</param>
5028 <exception cref="T:System.ArgumentNullException">u cannot be null</exception>
5029 </member>
5030 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
5031 <summary>
5032 Registers the predecessors handler
5033 </summary>
5034 <param name="vis"></param>
5035 </member>
5036 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.RegisterTimeStamperHandlers(QuickGraph.Concepts.Visitors.ITimeStamperVisitor)">
5037 <summary>
5038
5039 </summary>
5040 <param name="vis"></param>
5041 </member>
5042 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
5043 <summary>
5044
5045 </summary>
5046 <param name="vis"></param>
5047 </member>
5048 <member name="M:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.RegisterTreeEdgeBuilderHandlers(QuickGraph.Concepts.Visitors.ITreeEdgeBuilderVisitor)">
5049 <summary>
5050
5051 </summary>
5052 <param name="vis"></param>
5053 </member>
5054 <member name="P:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.VisitedGraph">
5055 <summary>
5056 Visited graph
5057 </summary>
5058 </member>
5059 <member name="P:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.Colors">
5060 <summary>
5061 Gets the vertex color map
5062 </summary>
5063 <value>
5064 Vertex color (<see cref="T:QuickGraph.Concepts.GraphColor"/>) dictionary
5065 </value>
5066 </member>
5067 <member name="P:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.QuickGraph#Concepts#Algorithms#IVertexColorizerAlgorithm#Colors">
5068 <summary>
5069 IVertexColorizerAlgorithm implementation
5070 </summary>
5071 </member>
5072 <member name="P:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.MaxDepth">
5073 <summary>
5074 Gets or sets the maximum exploration depth, from
5075 the start vertex.
5076 </summary>
5077 <remarks>
5078 Defaulted at <c>int.MaxValue</c>.
5079 </remarks>
5080 <value>
5081 Maximum exploration depth.
5082 </value>
5083 </member>
5084 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.InitializeVertex">
5085 <summary>
5086 Invoked on every vertex of the graph before the start of the graph
5087 search.
5088 </summary>
5089 </member>
5090 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.StartVertex">
5091 <summary>
5092 Invoked on the source vertex once before the start of the search.
5093 </summary>
5094 </member>
5095 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.DiscoverVertex">
5096 <summary>
5097 Invoked when a vertex is encountered for the first time.
5098 </summary>
5099 </member>
5100 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ExamineOutEdge">
5101 <summary>
5102 Invoked on every out-edge of each vertex after it is discovered.
5103 </summary>
5104 </member>
5105 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ExamineInEdge">
5106 <summary>
5107 Invoked on every out-edge of each vertex after it is discovered.
5108 </summary>
5109 </member>
5110 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.TreeOutEdge">
5111 <summary>
5112 Invoked on each edge as it becomes a member of the edges that form
5113 the search tree. If you wish to record predecessors, do so at this
5114 event point.
5115 </summary>
5116 </member>
5117 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.TreeInEdge">
5118 <summary>
5119 Invoked on each edge as it becomes a member of the edges that form
5120 the search tree. If you wish to record predecessors, do so at this
5121 event point.
5122 </summary>
5123 </member>
5124 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.BackOutEdge">
5125 <summary>
5126 Invoked on the back edges in the graph.
5127 </summary>
5128 </member>
5129 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.BackInEdge">
5130 <summary>
5131 Invoked on the back edges in the graph.
5132 </summary>
5133 </member>
5134 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ForwardOrCrossOutEdge">
5135 <summary>
5136 Invoked on forward or cross edges in the graph.
5137 (In an undirected graph this method is never called.)
5138 </summary>
5139 </member>
5140 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.ForwardOrCrossInEdge">
5141 <summary>
5142 Invoked on forward or cross edges in the graph.
5143 (In an undirected graph this method is never called.)
5144 </summary>
5145 </member>
5146 <member name="E:QuickGraph.Algorithms.Search.NeighborDepthFirstSearchAlgorithm.FinishVertex">
5147 <summary>
5148 Invoked on a vertex after all of its out edges have been added to
5149 the search tree and all of the adjacent vertices have been
5150 discovered (but before their out-edges have been examined).
5151 </summary>
5152 </member>
5153 <member name="T:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm">
5154 <summary>
5155 Performs a undirected (depth first and height first) depth first
5156 search on a directed bidirectional graph.
5157 </summary>
5158 <remarks>
5159 <para>This algorithm is directly inspired from the
5160 BoostGraphLibrary implementation.
5161 </para>
5162 </remarks>
5163 </member>
5164 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph)">
5165 <summary>
5166 Create a undirected dfs algorithm
5167 </summary>
5168 <param name="g">Graph to search on.</param>
5169 </member>
5170 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
5171 <summary>
5172 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.InitializeVertex"/> event.
5173 </summary>
5174 <param name="v">vertex that raised the event</param>
5175 </member>
5176 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnStartVertex(QuickGraph.Concepts.IVertex)">
5177 <summary>
5178 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.StartVertex"/> event.
5179 </summary>
5180 <param name="v">vertex that raised the event</param>
5181 </member>
5182 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
5183 <summary>
5184 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.DiscoverVertex"/> event.
5185 </summary>
5186 <param name="v">vertex that raised the event</param>
5187 </member>
5188 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
5189 <summary>
5190 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.ExamineEdge"/> event.
5191 </summary>
5192 <param name="e">edge that raised the event</param>
5193 </member>
5194 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
5195 <summary>
5196 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.TreeEdge"/> event.
5197 </summary>
5198 <param name="e">edge that raised the event</param>
5199 </member>
5200 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnBackEdge(QuickGraph.Concepts.IEdge)">
5201 <summary>
5202 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.BackEdge"/> event.
5203 </summary>
5204 <param name="e">edge that raised the event</param>
5205 </member>
5206 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
5207 <summary>
5208 Raises the <see cref="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.FinishVertex"/> event.
5209 </summary>
5210 <param name="v">vertex that raised the event</param>
5211 </member>
5212 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.Compute">
5213 <summary>
5214 Computes the dfs
5215 </summary>
5216 </member>
5217 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
5218 <summary>
5219 Computes the dfs starting at s
5220 </summary>
5221 <param name="s">start vertex</param>
5222 </member>
5223 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.Visit(QuickGraph.Concepts.IVertex)">
5224 <summary>
5225 Visits vertex s
5226 </summary>
5227 <param name="u">vertex to visit</param>
5228 </member>
5229 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
5230 <summary>
5231 Registers the predecessors handler
5232 </summary>
5233 <param name="vis"></param>
5234 </member>
5235 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.RegisterTimeStamperHandlers(QuickGraph.Concepts.Visitors.ITimeStamperVisitor)">
5236 <summary>
5237
5238 </summary>
5239 <param name="vis"></param>
5240 </member>
5241 <member name="M:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
5242 <summary>
5243
5244 </summary>
5245 <param name="vis"></param>
5246 </member>
5247 <member name="P:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.VisitedGraph">
5248 <summary>
5249 Visited graph
5250 </summary>
5251 </member>
5252 <member name="P:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.Colors">
5253 <summary>
5254 Vertex color map
5255 </summary>
5256 </member>
5257 <member name="P:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.EdgeColors">
5258 <summary>
5259 Edge color map
5260 </summary>
5261 </member>
5262 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.InitializeVertex">
5263 <summary>
5264 Invoked on every vertex of the graph before the start of the graph
5265 search.
5266 </summary>
5267 </member>
5268 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.StartVertex">
5269 <summary>
5270 Invoked on the source vertex once before the start of the search.
5271 </summary>
5272 </member>
5273 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.DiscoverVertex">
5274 <summary>
5275 Invoked when a vertex is encountered for the first time.
5276 </summary>
5277 </member>
5278 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.ExamineEdge">
5279 <summary>
5280 Invoked on every out-edge of each vertex after it is discovered.
5281 </summary>
5282 </member>
5283 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.TreeEdge">
5284 <summary>
5285 Invoked on each edge as it becomes a member of the edges that form
5286 the search tree. If you wish to record predecessors, do so at this
5287 event point.
5288 </summary>
5289 </member>
5290 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.BackEdge">
5291 <summary>
5292 Invoked on the back edges in the graph.
5293 </summary>
5294 </member>
5295 <member name="E:QuickGraph.Algorithms.Search.UndirectedDepthFirstSearchAlgorithm.FinishVertex">
5296 <summary>
5297 Invoked on a vertex after all of its out edges have been added to
5298 the search tree and all of the adjacent vertices have been
5299 discovered (but before their out-edges have been examined).
5300 </summary>
5301 </member>
5302 <member name="T:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm">
5303 <summary>
5304 Bellman Ford shortest path algorithm.
5305 </summary>
5306 <remarks>
5307 <para>
5308 The Bellman-Ford algorithm solves the single-source shortest paths
5309 problem for a graph with both positive and negative edge weights.
5310 </para>
5311 <para>
5312 If you only need to solve the shortest paths problem for positive
5313 edge weights, Dijkstra's algorithm provides a more efficient
5314 alternative.
5315 </para>
5316 <para>
5317 If all the edge weights are all equal to one then breadth-first search
5318 provides an even more efficient alternative.
5319 </para>
5320 </remarks>
5321 </member>
5322 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph,QuickGraph.Collections.EdgeDoubleDictionary)">
5323 <summary>
5324 Builds a new Bellman Ford searcher.
5325 </summary>
5326 <param name="g">The graph</param>
5327 <param name="weights">Edge weights</param>
5328 <exception cref="T:System.ArgumentNullException">Any argument is null</exception>
5329 <remarks>This algorithm uses the <seealso cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>.</remarks>
5330 </member>
5331 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
5332 <summary>
5333 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.InitializeVertex"/> event.
5334 </summary>
5335 <param name="v">vertex that raised the event</param>
5336 </member>
5337 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
5338 <summary>
5339 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.ExamineEdge"/> event.
5340 </summary>
5341 <param name="e">edge that raised the event</param>
5342 </member>
5343 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnEdgeRelaxed(QuickGraph.Concepts.IEdge)">
5344 <summary>
5345 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeRelaxed"/> event.
5346 </summary>
5347 <param name="e">edge that raised the event</param>
5348 </member>
5349 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnEdgeNotRelaxed(QuickGraph.Concepts.IEdge)">
5350 <summary>
5351 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeNotRelaxed"/> event.
5352 </summary>
5353 <param name="e">edge that raised the event</param>
5354 </member>
5355 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnEdgeMinimized(QuickGraph.Concepts.IEdge)">
5356 <summary>
5357 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeMinimized"/> event.
5358 </summary>
5359 <param name="e">edge that raised the event</param>
5360 </member>
5361 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.OnEdgeNotMinimized(QuickGraph.Concepts.IEdge)">
5362 <summary>
5363 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeNotMinimized"/> event.
5364 </summary>
5365 <param name="e">edge that raised the event</param>
5366 </member>
5367 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
5368 <summary>
5369 Computes all the shortest path from s to the oter vertices
5370 </summary>
5371 <param name="s">Start vertex</param>
5372 <remarks>
5373 Initializes the predecessor and distance map.
5374 </remarks>
5375 <returns>true if successful, false if there was a negative cycle.</returns>
5376 <exception cref="T:System.ArgumentNullException">s is null</exception>
5377 </member>
5378 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Compute">
5379 <summary>
5380 Applies the Bellman Ford algorithm
5381 </summary>
5382 <remarks>
5383 Does not initialize the predecessor and distance map.
5384 </remarks>
5385 <returns>true if successful, false if there was a negative cycle.</returns>
5386 </member>
5387 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Compare(System.Double,System.Double)">
5388 <summary>
5389
5390 </summary>
5391 <param name="a"></param>
5392 <param name="b"></param>
5393 <returns></returns>
5394 </member>
5395 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Combine(System.Double,System.Double)">
5396 <summary>
5397
5398 </summary>
5399 <param name="d"></param>
5400 <param name="w"></param>
5401 <returns></returns>
5402 </member>
5403 <member name="M:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Relax(QuickGraph.Concepts.IEdge)">
5404 <summary>
5405
5406 </summary>
5407 <param name="e"></param>
5408 <returns></returns>
5409 </member>
5410 <member name="P:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.VisitedGraph">
5411 <summary>
5412
5413 </summary>
5414 </member>
5415 <member name="P:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Colors">
5416 <summary>
5417 Vertex color map
5418 </summary>
5419 </member>
5420 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.InitializeVertex">
5421 <summary>
5422 Invoked on each vertex in the graph before the start of the
5423 algorithm.
5424 </summary>
5425 </member>
5426 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.ExamineEdge">
5427 <summary>
5428 Invoked on every edge in the graph |V| times.
5429 </summary>
5430 </member>
5431 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeRelaxed">
5432 <summary>
5433 Invoked when the distance label for the target vertex is decreased.
5434 The edge that participated in the last relaxation for vertex v is
5435 an edge in the shortest paths tree.
5436 </summary>
5437 </member>
5438 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeNotRelaxed">
5439 <summary>
5440 Invoked if the distance label for the target vertex is not
5441 decreased.
5442 </summary>
5443 </member>
5444 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeMinimized">
5445 <summary>
5446 Invoked during the second stage of the algorithm,
5447 during the test of whether each edge was minimized.
5448
5449 If the edge is minimized then this function is invoked.
5450 </summary>
5451 </member>
5452 <member name="E:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.EdgeNotMinimized">
5453 <summary>
5454 Invoked during the second stage of the algorithm,
5455 during the test of whether each edge was minimized.
5456
5457 If the edge was not minimized, this function is invoked.
5458 This happens when there is a negative cycle in the graph.
5459 </summary>
5460 </member>
5461 <member name="P:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Distances">
5462 <summary>
5463 Constructed distance map
5464 </summary>
5465 </member>
5466 <member name="P:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Predecessors">
5467 <summary>
5468 Constructed predecessor map
5469 </summary>
5470 </member>
5471 <member name="P:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm.Weights">
5472 <summary>
5473 Edge weights
5474 </summary>
5475 </member>
5476 <member name="T:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm">
5477 <summary>
5478 Directed Acyclic Graph single source shortest path algorithm.
5479 </summary>
5480 <remarks>
5481 <para>
5482 This algorithm solves the single-source shortest-paths problem on a
5483 weighted, directed acyclic graph (DAG).
5484 </para>
5485 <para>
5486 This algorithm is more efficient for DAG's than either the
5487 <see cref="T:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm"/> or
5488 <see cref="T:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm"/>..
5489 Use <see cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/> instead of this algorithm
5490 when all edge weights are equal to one.
5491 </para>
5492 <para>
5493 It is strongly inspired from the
5494 Boost Graph Library implementation.
5495 </para>
5496 </remarks>
5497 </member>
5498 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.EdgeDoubleDictionary)">
5499 <summary>
5500 Builds a new Dagsearcher.
5501 </summary>
5502 <param name="g">Acyclic graph</param>
5503 <param name="weights">Edge weights</param>
5504 <exception cref="T:System.ArgumentNullException">Any argument is null</exception>
5505 <remarks>This algorithm uses the <seealso cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>.</remarks>
5506 </member>
5507 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnInitializeVertex(QuickGraph.Concepts.IVertex)">
5508 <summary>
5509 Triggers the InitializeVertex event
5510 </summary>
5511 <param name="v"></param>
5512 </member>
5513 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnDiscoverVertex(QuickGraph.Concepts.IVertex)">
5514 <summary>
5515 Triggers the DiscoverVertex event
5516 </summary>
5517 <param name="v"></param>
5518 </member>
5519 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnExamineVertex(QuickGraph.Concepts.IVertex)">
5520 <summary>
5521 Triggers the ExamineVertex event
5522 </summary>
5523 <param name="v"></param>
5524 </member>
5525 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
5526 <summary>
5527 Triggers the ExamineEdge event
5528 </summary>
5529 <param name="e"></param>
5530 </member>
5531 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnEdgeRelaxed(QuickGraph.Concepts.IEdge)">
5532 <summary>
5533 Triggers the EdgeRelaxed event
5534 </summary>
5535 <param name="e"></param>
5536 </member>
5537 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnEdgeNotRelaxed(QuickGraph.Concepts.IEdge)">
5538 <summary>
5539 Triggers the EdgeNotRelaxed event
5540 </summary>
5541 <param name="e"></param>
5542 </member>
5543 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.OnFinishVertex(QuickGraph.Concepts.IVertex)">
5544 <summary>
5545 Triggers the FinishVertex event
5546 </summary>
5547 <param name="v"></param>
5548 </member>
5549 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
5550 <summary>
5551 Computes all the shortest path from s to the oter vertices
5552 </summary>
5553 <param name="s">Start vertex</param>
5554 <exception cref="T:System.ArgumentNullException">s is null</exception>
5555 </member>
5556 <member name="M:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
5557 <summary>
5558
5559 </summary>
5560 <param name="vis"></param>
5561 </member>
5562 <member name="P:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.VisitedGraph">
5563 <summary>
5564 Visited graph
5565 </summary>
5566 </member>
5567 <member name="P:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.Colors">
5568 <summary>
5569 Vertex color map
5570 </summary>
5571 </member>
5572 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.InitializeVertex">
5573 <summary>
5574 Invoked on each vertex in the graph before the start of the
5575 algorithm.
5576 </summary>
5577 </member>
5578 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.DiscoverVertex">
5579 <summary>
5580 Invoked on vertex v when the edge (u,v) is examined and v is White.
5581 Since a vertex is colored Gray when it is discovered, each
5582 reachable vertex is discovered exactly once. This is also when the
5583 vertex is inserted into the priority queue.
5584 </summary>
5585 </member>
5586 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.ExamineVertex">
5587 <summary>
5588 Invoked on a vertex as it is added to set S.
5589 </summary>
5590 <remarks>
5591 <para>
5592 At this point we know that <c>(p[u],u)</c> is a shortest-paths tree
5593 edge so <c>d[u] = delta(s,u) = d[p[u]] + w(p[u],u)</c>.
5594 </para>
5595 <para>
5596 Also, the distances of the examined vertices is monotonically increasing
5597 <c>d[u1] <= d[u2] <= d[un]</c>.
5598 </para>
5599 </remarks>
5600 </member>
5601 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.ExamineEdge">
5602 <summary>
5603 Invoked on each out-edge of a vertex immediately after it has
5604 been added to set S.
5605 </summary>
5606 </member>
5607 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.EdgeRelaxed">
5608 <summary>
5609 invoked on edge (u,v) if d[u] + w(u,v) < d[v]. The edge (u,v)
5610 that participated in the last relaxation for vertex v is an edge
5611 in the shortest paths tree.
5612 </summary>
5613 </member>
5614 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.EdgeNotRelaxed">
5615 <summary>
5616 Invoked if the edge is not relaxed. <seealso cref="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.EdgeRelaxed"/>.
5617 </summary>
5618 </member>
5619 <member name="E:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.FinishVertex">
5620 <summary>
5621 Invoked on a vertex after all of its out edges have been examined.
5622 </summary>
5623 </member>
5624 <member name="P:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.Distances">
5625 <summary>
5626 Constructed distance map
5627 </summary>
5628 </member>
5629 <member name="P:QuickGraph.Algorithms.ShortestPath.DagShortestPathAlgorithm.Predecessors">
5630 <summary>
5631 Constructed predecessor map
5632 </summary>
5633 </member>
5634 <member name="T:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm">
5635 <summary>
5636 Dijkstra shortest path algorithm.
5637 </summary>
5638 <remarks>
5639 This algorithm solves the single-source shortest-paths problem
5640 on a weighted, directed for the case where all
5641 edge weights are nonnegative. It is strongly inspired from the
5642 Boost Graph Library implementation.
5643
5644 Use the Bellman-Ford algorithm for the case when some edge weights are
5645 negative.
5646 Use breadth-first search instead of Dijkstra's algorithm when all edge
5647 weights are equal to one.
5648 </remarks>
5649 </member>
5650 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.EdgeDoubleDictionary)">
5651 <summary>
5652 Builds a new Dijsktra searcher.
5653 </summary>
5654 <param name="g">The graph</param>
5655 <param name="weights">Edge weights</param>
5656 <exception cref="T:System.ArgumentNullException">Any argument is null</exception>
5657 <remarks>This algorithm uses the <seealso cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>.</remarks>
5658 </member>
5659 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.UnaryWeightsFromEdgeList(QuickGraph.Concepts.Traversals.IEdgeListGraph)">
5660 <summary>
5661 Create a edge unary weight dictionary.
5662 </summary>
5663 <param name="graph">graph to map</param>
5664 <returns>Dictionary where each edge wheight is 1</returns>
5665 </member>
5666 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.UnaryWeightsFromVertexList(QuickGraph.Concepts.Traversals.IVertexListGraph)">
5667 <summary>
5668 Create a edge unary weight dictionary.
5669 </summary>
5670 <param name="graph">graph to map</param>
5671 <returns>Dictionary where each edge wheight is 1</returns>
5672 </member>
5673 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.OnEdgeRelaxed(QuickGraph.Concepts.IEdge)">
5674 <summary>
5675 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.EdgeRelaxed"/> event.
5676 </summary>
5677 <param name="e">edge that raised the event</param>
5678 </member>
5679 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.OnEdgeNotRelaxed(QuickGraph.Concepts.IEdge)">
5680 <summary>
5681 Raises the <see cref="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.EdgeNotRelaxed"/> event.
5682 </summary>
5683 <param name="e">edge that raised the event</param>
5684 </member>
5685 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.TreeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
5686 <summary>
5687 Checks for edge relation.
5688 </summary>
5689 <param name="sender"></param>
5690 <param name="args"></param>
5691 </member>
5692 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.GrayTarget(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
5693 <summary>
5694 Checks for edge relation.
5695 </summary>
5696 <param name="sender"></param>
5697 <param name="args"></param>
5698 </member>
5699 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.Compute(QuickGraph.Concepts.IVertex)">
5700 <summary>
5701 Computes all the shortest path from s to the oter vertices
5702 </summary>
5703 <param name="s">Start vertex</param>
5704 <exception cref="T:System.ArgumentNullException">s is null</exception>
5705 </member>
5706 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.RegisterVertexColorizerHandlers(QuickGraph.Concepts.Visitors.IVertexColorizerVisitor)">
5707 <summary>
5708
5709 </summary>
5710 <param name="vis"></param>
5711 </member>
5712 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.RegisterPredecessorRecorderHandlers(QuickGraph.Concepts.Visitors.IPredecessorRecorderVisitor)">
5713 <summary>
5714 Register the predecessor handlers
5715 </summary>
5716 <param name="vis">visitor</param>
5717 </member>
5718 <member name="M:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.RegisterDistanceRecorderHandlers(QuickGraph.Concepts.Visitors.IDistanceRecorderVisitor)">
5719 <summary>
5720 Add event handlers to the corresponding events.
5721 </summary>
5722 <param name="vis">Distance recorder visitor</param>
5723 </member>
5724 <member name="P:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.VisitedGraph">
5725 <summary>
5726 Visited graph
5727 </summary>
5728 </member>
5729 <member name="P:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.Colors">
5730 <summary>
5731 Vertex color map
5732 </summary>
5733 </member>
5734 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.InitializeVertex">
5735 <summary>
5736 Invoked on each vertex in the graph before the start of the
5737 algorithm.
5738 </summary>
5739 </member>
5740 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.DiscoverVertex">
5741 <summary>
5742 Invoked on vertex v when the edge (u,v) is examined and v is WHITE.
5743 Since a vertex is colored GRAY when it is discovered, each
5744 reachable vertex is discovered exactly once. This is also when the
5745 vertex is inserted into the priority queue.
5746 </summary>
5747 </member>
5748 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.ExamineVertex">
5749 <summary>
5750 Invoked on a vertex as it is removed from the priority queue and
5751 added to set S. At this point we know that (p[u],u) is a
5752 shortest-paths tree edge so
5753 d[u] = delta(s,u) = d[p[u]] + w(p[u],u).
5754 Also, the distances of the examined vertices is monotonically
5755 increasing d[u1] <= d[u2] <= d[un].
5756 </summary>
5757 </member>
5758 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.ExamineEdge">
5759 <summary>
5760 Invoked on each out-edge of a vertex immediately after it has
5761 been added to set S.
5762 </summary>
5763 </member>
5764 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.EdgeRelaxed">
5765 <summary>
5766 invoked on edge (u,v) if d[u] + w(u,v) < d[v]. The edge (u,v)
5767 that participated in the last relaxation for vertex v is an edge
5768 in the shortest paths tree.
5769 </summary>
5770 </member>
5771 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.EdgeNotRelaxed">
5772 <summary>
5773 Invoked if the edge is not relaxed. <seealso cref="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.EdgeRelaxed"/>.
5774 </summary>
5775 </member>
5776 <member name="E:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.FinishVertex">
5777 <summary>
5778 Invoked on a vertex after all of its out edges have been examined.
5779 </summary>
5780 </member>
5781 <member name="P:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.Distances">
5782 <summary>
5783 Constructed distance map
5784 </summary>
5785 </member>
5786 <member name="P:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm.VertexQueue">
5787 <summary>
5788 Vertex priorithized queue. Used internally.
5789 </summary>
5790 </member>
5791 <member name="T:QuickGraph.Algorithms.ShortestPath.NamespaceDoc">
5792 <summary>
5793 <para>
5794 The <b>QuickGraph.Algorithms.ShortestPath</b> namespace contains
5795 algorithms for solving shortest path problems.
5796 </para>
5797 <para>
5798 Graph with positive edge weight should use the
5799 <see cref="T:QuickGraph.Algorithms.ShortestPath.DijkstraShortestPathAlgorithm"/>.
5800 </para>
5801 <para>If all the wieghts are
5802 equal to 1, the <see cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>
5803 is more efficient to use.
5804 </para>
5805 <para>
5806 If the weights can be negavite,
5807 use the <see cref="T:QuickGraph.Algorithms.ShortestPath.BellmanFordShortestPathAlgorithm"/>.
5808 </para>
5809 </summary>
5810 </member>
5811 <member name="T:QuickGraph.Algorithms.StrongComponentsAlgorithm">
5812 <summary>
5813 Computes the graph strong components.
5814 </summary>
5815 <remarks>
5816 This class compute the strongly connected
5817 components of a directed graph using Tarjan's algorithm based on DFS.
5818 </remarks>
5819 </member>
5820 <member name="M:QuickGraph.Algorithms.StrongComponentsAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
5821 <summary>
5822 Construct a strong component algorithm
5823 </summary>
5824 <param name="g">graph to apply algorithm on</param>
5825 <exception cref="T:System.ArgumentNullException">graph is null</exception>
5826 </member>
5827 <member name="M:QuickGraph.Algorithms.StrongComponentsAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,QuickGraph.Collections.VertexIntDictionary)">
5828 <summary>
5829 Construct a strong component algorithm
5830 </summary>
5831 <param name="g">graph to apply algorithm on</param>
5832 <param name="components">component map to record results</param>
5833 <exception cref="T:System.ArgumentNullException">graph is null</exception>
5834 </member>
5835 <member name="M:QuickGraph.Algorithms.StrongComponentsAlgorithm.DiscoverVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
5836 <summary>
5837 Used internally
5838 </summary>
5839 <param name="sender"></param>
5840 <param name="args"></param>
5841 </member>
5842 <member name="M:QuickGraph.Algorithms.StrongComponentsAlgorithm.FinishVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
5843 <summary>
5844 Used internally
5845 </summary>
5846 <param name="sender"></param>
5847 <param name="args"></param>
5848 </member>
5849 <member name="M:QuickGraph.Algorithms.StrongComponentsAlgorithm.Compute">
5850 <summary>
5851 Executes the algorithm
5852 </summary>
5853 <remarks>
5854 The output of the algorithm is recorded in the component property
5855 Components, which will contain numbers giving the component ID
5856 assigned to each vertex.
5857 </remarks>
5858 <returns>The number of components is the return value of the function.</returns>
5859 </member>
5860 <member name="P:QuickGraph.Algorithms.StrongComponentsAlgorithm.VisitedGraph">
5861 <summary>
5862 Visited graph
5863 </summary>
5864 </member>
5865 <member name="P:QuickGraph.Algorithms.StrongComponentsAlgorithm.Components">
5866 <summary>
5867 Component map
5868 </summary>
5869 </member>
5870 <member name="P:QuickGraph.Algorithms.StrongComponentsAlgorithm.Roots">
5871 <summary>
5872 Root map
5873 </summary>
5874 </member>
5875 <member name="P:QuickGraph.Algorithms.StrongComponentsAlgorithm.DiscoverTimes">
5876 <summary>
5877 Vertex discory times
5878 </summary>
5879 </member>
5880 <member name="P:QuickGraph.Algorithms.StrongComponentsAlgorithm.Count">
5881 <summary>
5882 Gets the number of strongly connected components in the graph
5883 </summary>
5884 <value>
5885 Number of strongly connected components
5886 </value>
5887 </member>
5888 <member name="T:QuickGraph.Algorithms.TestGames.BoundedReachabilityGame">
5889 <summary>
5890 Summary description for BoundedReachabilityGame.
5891 </summary>
5892 </member>
5893 <member name="T:QuickGraph.Algorithms.TestGames.IBoundedReachabilityGamePlayer">
5894 <summary>
5895 Summary description for Strategy.
5896 </summary>
5897 </member>
5898 <member name="T:QuickGraph.Algorithms.TestGames.IStrategy">
5899 <summary>
5900 A <b>Strategy</b> as defined in section 3 of the article.
5901 </summary>
5902 </member>
5903 <member name="T:QuickGraph.Algorithms.TestGames.ITestGraph">
5904 <summary>
5905 <para>
5906 A <em>TestGraph</em> as defined in the section 2 of the article.
5907 </para>
5908 <para>
5909 </para>
5910 </summary>
5911 </member>
5912 <member name="M:QuickGraph.Algorithms.TestGames.ITestGraph.ContainsState(QuickGraph.Concepts.IVertex)">
5913 <summary>
5914 Gets a value indicating if <paramref name="v"/> is in the state set.
5915 </summary>
5916 <param name="v">vertex to test</param>
5917 <returns>true if <paramref name="v"/> is in the state set</returns>
5918 </member>
5919 <member name="M:QuickGraph.Algorithms.TestGames.ITestGraph.ContainsChoicePoint(QuickGraph.Concepts.IVertex)">
5920 <summary>
5921 Gets a value indicating if <paramref name="v"/> is in CP.
5922 </summary>
5923 <param name="v">vertex to test</param>
5924 <returns>true if <paramref name="v"/> is in CP</returns>
5925 </member>
5926 <member name="M:QuickGraph.Algorithms.TestGames.ITestGraph.Prob(QuickGraph.Concepts.IEdge)">
5927 <summary>
5928 Gets a probability associated to the <see cref="T:QuickGraph.Concepts.IEdge"/>
5929 <paramref name="e"/>.
5930 </summary>
5931 <param name="e">edge to test</param>
5932 <returns>Probability associated to <paramref name="e"/></returns>
5933 </member>
5934 <member name="M:QuickGraph.Algorithms.TestGames.ITestGraph.Cost(QuickGraph.Concepts.IEdge)">
5935 <summary>
5936 Gets a cost associated to the <see cref="T:QuickGraph.Concepts.IEdge"/>
5937 <paramref name="e"/>.
5938 </summary>
5939 <param name="e">edge to test</param>
5940 <returns>Cost associated to <paramref name="e"/></returns>
5941 </member>
5942 <member name="P:QuickGraph.Algorithms.TestGames.ITestGraph.Graph">
5943 <summary>
5944 Gets the underlying <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph"/>
5945 graph representing the Finite State Machine.
5946 </summary>
5947 <value>
5948 <see cref="T:QuickGraph.Concepts.Traversals.IBidirectionalVertexAndEdgeListGraph"/> instance representing
5949 the fsm.
5950 </value>
5951 </member>
5952 <member name="P:QuickGraph.Algorithms.TestGames.ITestGraph.States">
5953 <summary>
5954 Get the state enumerable collection (V-CP).
5955 </summary>
5956 <value>
5957 State vertices enumerable collection.
5958 </value>
5959 </member>
5960 <member name="P:QuickGraph.Algorithms.TestGames.ITestGraph.ChoicePoints">
5961 <summary>
5962 Get the choice point enumerable collection (CP).
5963 </summary>
5964 <value>
5965 Choice point vertices enumerable collection.
5966 </value>
5967 </member>
5968 <member name="T:QuickGraph.Algorithms.TestGames.NamespaceDoc">
5969 <summary>
5970 <para>
5971 The <b></b> implements the algorithm from the article:
5972 </para>
5973 <para>
5974 <em>Optimal Strategies for Testing Nondeterministic Systems</em>,
5975 Lev Nachmanson Margus Veanes Wolfram Schulte
5976 Nikolai Tillmann Wolfgang Grieskamp
5977 Microsoft Research, One Microsoft Way, Redmond, WA
5978 <em>flevnach,margus,schulte,nikolait,wrwgg@microsoft.com</em>
5979 http://research.microsoft.com/users/schulte/Papers/OptimalStrategiesForTestingNondeterminsticSystems(ISSTA2004).pdf
5980 </para>
5981 </summary>
5982 </member>
5983 <member name="T:QuickGraph.Algorithms.TestGames.OptimalStrategy">
5984 <summary>
5985 Summary description for OptimalStrategy.
5986 </summary>
5987 </member>
5988 <member name="T:QuickGraph.Algorithms.TestGames.OptimalWinningStrategyCalculationAlgorithm">
5989 <summary>
5990 Optimal winning strategy calculation algorithm.
5991 </summary>
5992 <remarks>
5993 <para>
5994 This algorithm is an implementation of the
5995 http://research.microsoft.com/users/schulte/Papers/OptimalStrategiesForTestingNondeterminsticSystems(ISSTA2004).pdf
5996 </para>
5997 </remarks>
5998 </member>
5999 <member name="T:QuickGraph.Algorithms.TestGames.PairPreOrderPerformanceComparer">
6000 <summary>
6001 Summary description for PairPreOrderPerformanceComparer.
6002 </summary>
6003 </member>
6004 <member name="T:QuickGraph.Algorithms.TestGames.ReachabilityStrategyCalculationAlgorithm">
6005 <summary>
6006 Summary description for ReachabilityStrategyCalculationAlgorithm.
6007 </summary>
6008 </member>
6009 <member name="T:QuickGraph.Algorithms.TestGames.Strategy">
6010 <summary>
6011 Summary description for Strategy.
6012 </summary>
6013 </member>
6014 <member name="T:QuickGraph.Algorithms.TopologicalSortAlgorithm">
6015 <summary>
6016 Topological sort of the graph.
6017 </summary>
6018 <remarks>
6019 <para>
6020 The topological sort algorithm creates a linear ordering of the
6021 vertices such that if edge (u,v) appears in the graph, then v comes
6022 before u in the ordering.
6023 </para>
6024 <para>
6025 The graph must be a directed acyclic graph
6026 (DAG). The implementation consists mainly of a call to
6027 <see cref="T:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm"/>.
6028 </para>
6029 <para>This algorithm is directly inspired from the
6030 BoostGraphLibrary implementation.
6031 </para>
6032 </remarks>
6033 </member>
6034 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
6035 <summary>
6036 Builds a new sorter
6037 </summary>
6038 <param name="g">Graph to sort</param>
6039 </member>
6040 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph,System.Collections.IList)">
6041 <summary>
6042 Builds a new sorter
6043 </summary>
6044 <param name="g">Graph to sort</param>
6045 <param name="vertices">vertices list</param>
6046 </member>
6047 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.BackEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6048 <summary>
6049 Delegate event that detects cycle. <seealso cref="T:QuickGraph.Concepts.EdgeEventHandler"/>.
6050 </summary>
6051 <param name="sender">DepthFirstSearch algorithm</param>
6052 <param name="args">Edge that produced the error</param>
6053 <exception cref="T:System.Exception">Will always throw an exception.</exception>
6054 </member>
6055 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.FinishVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6056 <summary>
6057 Delegate that adds the vertex to the vertex list. <seealso cref="T:QuickGraph.Concepts.VertexEventHandler"/>.
6058 </summary>
6059 <param name="sender"></param>
6060 <param name="args"></param>
6061 </member>
6062 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.Compute">
6063 <summary>
6064 Computes the topological sort and stores it in the list.
6065 </summary>
6066 </member>
6067 <member name="M:QuickGraph.Algorithms.TopologicalSortAlgorithm.Compute(System.Collections.IList)">
6068 <summary>
6069 Computes the topological sort and stores it in the list.
6070 </summary>
6071 <param name="vertices">Vertex list that will contain the results</param>
6072 </member>
6073 <member name="P:QuickGraph.Algorithms.TopologicalSortAlgorithm.VisitedGraph">
6074 <summary>
6075 Visited vertex list
6076 </summary>
6077 </member>
6078 <member name="P:QuickGraph.Algorithms.TopologicalSortAlgorithm.SortedVertices">
6079 <summary>
6080 Sorted vertices list
6081 </summary>
6082 </member>
6083 <member name="T:QuickGraph.Algorithms.TransitiveClosureAlgorithm">
6084 <summary>
6085 Creates a transitive closure of the input graph
6086 </summary>
6087 <remarks>
6088 <para>
6089 The core algorithm for Transitive Closure (TC) is inspired by the
6090 Boost Graph Library implementation
6091 and Nuutila, E's work "Efficient Transitive Closure Computation in
6092 Large Digraphs".
6093 </para>
6094 <para>
6095 Event <see cref="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.InitTransitiveClosureVertex"/> is raised when a new
6096 vertex is added to the TC graph.
6097 It maps a vertex in the original graph to the corresponding vertex in
6098 the TC graph
6099 </para>
6100 <para>
6101 Event <see cref="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.ExamineEdge"/> is rasied when an edge is added to the
6102 TC graph
6103 </para>
6104 </remarks>
6105 <author name="Rohit Gadogkar" email="rohit.gadagkar@gmail.com"/>
6106 </member>
6107 <member name="M:QuickGraph.Algorithms.TransitiveClosureAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexListGraph)">
6108 <summary>
6109 Transitive closure constructor
6110 </summary>
6111 <param name="g">
6112 Graph whose transitive closre needs to be
6113 computed
6114 </param>
6115 <exception cref="T:System.ArgumentNullException">
6116 <paramref name="g"/> is a <null/>.
6117 </exception>
6118 </member>
6119 <member name="M:QuickGraph.Algorithms.TransitiveClosureAlgorithm.OnInitTransitiveClosureVertex(QuickGraph.Algorithms.TransitiveClosureVertexEventArgs)">
6120 <summary>
6121 Raises the <see cref="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.InitTransitiveClosureVertex"/> event.
6122 </summary>
6123 <param name="arg"></param>
6124 </member>
6125 <member name="M:QuickGraph.Algorithms.TransitiveClosureAlgorithm.OnExamineEdge(QuickGraph.Concepts.IEdge)">
6126 <summary>
6127 Raises the <see cref="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.ExamineEdge"/> event.
6128 </summary>
6129 <param name="e">New edge that was added to the transitive closure graph</param>
6130 </member>
6131 <member name="M:QuickGraph.Algorithms.TransitiveClosureAlgorithm.Create(QuickGraph.Concepts.MutableTraversals.IMutableVertexAndEdgeListGraph)">
6132 <summary>
6133 Compute the transitive closure and store it in the supplied graph 'tc'
6134 </summary>
6135 <param name="tc">
6136 Mutable Graph instance to store the transitive closure
6137 </param>
6138 <exception cref="T:System.ArgumentNullException">
6139 <paramref name="tc"/> is a <null/>.
6140 </exception>
6141 </member>
6142 <member name="P:QuickGraph.Algorithms.TransitiveClosureAlgorithm.VisitedGraph">
6143 <summary>
6144 Visited Graph
6145 </summary>
6146 </member>
6147 <member name="P:QuickGraph.Algorithms.TransitiveClosureAlgorithm.OrigToTCVertexMap">
6148 <summary>
6149 Map of vertex in Original graph to corresponding vertex in Transitive Closure
6150 </summary>
6151 </member>
6152 <member name="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.InitTransitiveClosureVertex">
6153 <summary>
6154 Invoked when a new vertex is added to the Transitive Closure graph
6155 </summary>
6156 </member>
6157 <member name="E:QuickGraph.Algorithms.TransitiveClosureAlgorithm.ExamineEdge">
6158 <summary>
6159 Invoked when a new edge is added to the transitive closure graph.
6160 </summary>
6161 </member>
6162 <member name="T:QuickGraph.Algorithms.TransitiveClosureVertexEventArgs">
6163 <summary>
6164 Encapsulates a vertex in the original graph and it's corresponding vertex in a transformation of the graph
6165 </summary>
6166 </member>
6167 <member name="M:QuickGraph.Algorithms.TransitiveClosureVertexEventArgs.#ctor(QuickGraph.Concepts.IVertex,QuickGraph.Concepts.IVertex)">
6168 <summary>
6169 constructor
6170 </summary>
6171 <param name="original_vertex">Vertex in original graph</param>
6172 <param name="transform_vertex">Equivalent Vertex in the transformation graph</param>
6173 </member>
6174 <member name="P:QuickGraph.Algorithms.TransitiveClosureVertexEventArgs.VertexInOriginalGraph">
6175 <summary>
6176 Vertex in original graph
6177 </summary>
6178 </member>
6179 <member name="P:QuickGraph.Algorithms.TransitiveClosureVertexEventArgs.VertexInTransformationGraph">
6180 <summary>
6181 Equivalent Vertex in the transformation graph
6182 </summary>
6183 </member>
6184 <member name="T:QuickGraph.Algorithms.TransitiveClosureVertexEventHandler">
6185 <summary>
6186 Delegate to handle the TransformVertexEvent
6187 </summary>
6188 </member>
6189 <member name="T:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm">
6190 <summary>
6191 Under construction
6192 </summary>
6193 </member>
6194 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.#ctor(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph)">
6195 <summary>
6196 Construct an eulerian trail builder
6197 </summary>
6198 <param name="g"></param>
6199 </member>
6200 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.OnTreeEdge(QuickGraph.Concepts.IEdge)">
6201 <summary>
6202
6203 </summary>
6204 <param name="e"></param>
6205 </member>
6206 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.OnCircuitEdge(QuickGraph.Concepts.IEdge)">
6207 <summary>
6208
6209 </summary>
6210 <param name="e"></param>
6211 </member>
6212 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.OnVisitEdge(QuickGraph.Concepts.IEdge)">
6213 <summary>
6214
6215 </summary>
6216 <param name="e"></param>
6217 </member>
6218 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Search(QuickGraph.Concepts.IVertex)">
6219 <summary>
6220 Search a new path to add to the current circuit
6221 </summary>
6222 <param name="u">start vertex</param>
6223 <returns>true if successfull, false otherwize</returns>
6224 </member>
6225 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Visit">
6226 <summary>
6227 Looks for a new path to add to the current vertex.
6228 </summary>
6229 <returns>true if found a new path, false otherwize</returns>
6230 </member>
6231 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.ComputeEulerianPathCount(QuickGraph.Concepts.Traversals.IVertexAndEdgeListGraph)">
6232 <summary>
6233 Computes the number of eulerian trail in the graph. If negative,
6234 there is an eulerian circuit.
6235 </summary>
6236 <param name="g"></param>
6237 <returns>number of eulerian trails</returns>
6238 </member>
6239 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.CircuitAugmentation">
6240 <summary>
6241 Merges the temporary circuit with the current circuit
6242 </summary>
6243 <returns>true if all the graph edges are in the circuit</returns>
6244 </member>
6245 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Compute">
6246 <summary>
6247 Computes the eulerian trails
6248 </summary>
6249 </member>
6250 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.AddTemporaryEdges(QuickGraph.Concepts.MutableTraversals.IMutableVertexAndEdgeListGraph)">
6251 <summary>
6252 Adds temporary edges to the graph to make all vertex even.
6253 </summary>
6254 <param name="g"></param>
6255 <returns></returns>
6256 </member>
6257 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.RemoveTemporaryEdges(QuickGraph.Concepts.Modifications.IEdgeMutableGraph)">
6258 <summary>
6259 Removes temporary edges
6260 </summary>
6261 <param name="g"></param>
6262 </member>
6263 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Trails">
6264 <summary>
6265 Computes the set of eulerian trails that traverse the edge set.
6266 </summary>
6267 <remarks>
6268 This method returns a set of disjoint eulerian trails. This set
6269 of trails spans the entire set of edges.
6270 </remarks>
6271 <returns>Eulerian trail set</returns>
6272 </member>
6273 <member name="M:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Trails(QuickGraph.Concepts.IVertex)">
6274 <summary>
6275 Computes a set of eulerian trail, starting at <paramref name="s"/>
6276 that spans the entire graph.
6277 </summary>
6278 <remarks>
6279 <para>
6280 This method computes a set of eulerian trail starting at <paramref name="s"/>
6281 that spans the entire graph.The algorithm outline is as follows:
6282 </para>
6283 <para>
6284 The algorithms iterates throught the Eulerian circuit of the augmented
6285 graph (the augmented graph is the graph with additional edges to make
6286 the number of odd vertices even).
6287 </para>
6288 <para>
6289 If the current edge is not temporary, it is added to the current trail.
6290 </para>
6291 <para>
6292 If the current edge is temporary, the current trail is finished and
6293 added to the trail collection. The shortest path between the
6294 start vertex <paramref name="s"/> and the target vertex of the
6295 temporary edge is then used to start the new trail. This shortest
6296 path is computed using the <see cref="T:QuickGraph.Algorithms.Search.BreadthFirstSearchAlgorithm"/>.
6297 </para>
6298 </remarks>
6299 <param name="s">start vertex</param>
6300 <returns>eulerian trail set, all starting at s</returns>
6301 <exception cref="T:System.ArgumentNullException">s is a null reference.</exception>
6302 <exception cref="T:System.Exception">Eulerian trail not computed yet.</exception>
6303 </member>
6304 <member name="P:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.VisitedGraph">
6305 <summary>
6306 Visited Graph
6307 </summary>
6308 </member>
6309 <member name="P:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.QuickGraph#Concepts#Algorithms#IAlgorithm#VisitedGraph">
6310 <summary>
6311
6312 </summary>
6313 </member>
6314 <member name="P:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.Circuit">
6315 <summary>
6316 Eulerian circuit on modified graph
6317 </summary>
6318 </member>
6319 <member name="P:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.TemporaryCircuit">
6320 <summary>
6321 Used internally
6322 </summary>
6323 </member>
6324 <member name="E:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.TreeEdge">
6325 <summary>
6326
6327 </summary>
6328 </member>
6329 <member name="E:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.CircuitEdge">
6330 <summary>
6331
6332 </summary>
6333 </member>
6334 <member name="E:QuickGraph.Algorithms.Travelling.EulerianTrailAlgorithm.VisitEdge">
6335 <summary>
6336
6337 </summary>
6338 </member>
6339 <member name="T:QuickGraph.Algorithms.Travelling.NamespaceDoc">
6340 <summary>
6341 The <b>QuickGraph.Algorithms.Travelling</b> namespace
6342 contains classes for solving travelling problems such as
6343 computing Eulerian trails, Chinese Postman (not yet), Travelling salesman (not yet).
6344 </summary>
6345 </member>
6346 <member name="T:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor">
6347 <summary>
6348 Records the vertex distance
6349 </summary>
6350 </member>
6351 <member name="M:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.#ctor">
6352 <summary>
6353 Default constructor
6354 </summary>
6355 </member>
6356 <member name="M:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.#ctor(QuickGraph.Collections.VertexIntDictionary)">
6357 <summary>
6358 Uses the dictionary to record the distance
6359 </summary>
6360 <param name="distances">Distance dictionary</param>
6361 <exception cref="T:System.ArgumentNullException">distances is null</exception>
6362 </member>
6363 <member name="M:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.InitializeVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6364 <summary>
6365 d[u] = + intfy
6366 </summary>
6367 <param name="sender">Algorithm using the visitor</param>
6368 <param name="args">Contains the vertex</param>
6369 </member>
6370 <member name="M:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.DiscoverVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6371 <summary>
6372 d[u] = 0;
6373 </summary>
6374 <param name="sender"></param>
6375 <param name="args"></param>
6376 </member>
6377 <member name="M:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.TreeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6378 <summary>
6379 Let e = (u,v), d[ v ] = d[ u ] + 1;
6380 </summary>
6381 <param name="sender"></param>
6382 <param name="args"></param>
6383 </member>
6384 <member name="P:QuickGraph.Algorithms.Visitors.DistanceRecorderVisitor.Distances">
6385 <summary>
6386 Vertex distance dictionary
6387 </summary>
6388 </member>
6389 <member name="T:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor">
6390 <summary>
6391 Visitor that computes the edge predecessors.
6392 </summary>
6393 </member>
6394 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.#ctor">
6395 <summary>
6396 Default constructor
6397 </summary>
6398 </member>
6399 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.#ctor(QuickGraph.Collections.EdgeEdgeDictionary,QuickGraph.Collections.EdgeCollection)">
6400 <summary>
6401
6402 </summary>
6403 <param name="edgePredecessors"></param>
6404 <param name="endPathEdges"></param>
6405 </member>
6406 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.Path(QuickGraph.Concepts.IEdge)">
6407 <summary>
6408 Returns the path leading to the vertex v.
6409 </summary>
6410 <param name="se">end of the path</param>
6411 <returns>path leading to v</returns>
6412 </member>
6413 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.AllPaths">
6414 <summary>
6415 Returns the minimal set of path from the entry point that
6416 executes all actions
6417 </summary>
6418 <returns></returns>
6419 </member>
6420 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.MergedPath(QuickGraph.Concepts.IEdge,QuickGraph.Collections.EdgeColorDictionary)">
6421 <summary>
6422 Create a merged path.
6423 </summary>
6424 <remarks>
6425 <para>
6426 This method creates an edge path that stops if an edge is not white
6427 or the edge has no more predecessors.
6428 </para>
6429 </remarks>
6430 <param name="se">end edge</param>
6431 <param name="colors">edge color dictionary</param>
6432 <returns>path to edge</returns>
6433 </member>
6434 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.AllMergedPaths">
6435 <summary>
6436 Returns the array of merged paths
6437 </summary>
6438 </member>
6439 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.InitializeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6440 <summary>
6441 Not used
6442 </summary>
6443 <param name="sender"></param>
6444 <param name="args"></param>
6445 </member>
6446 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.DiscoverTreeEdge(System.Object,QuickGraph.Concepts.EdgeEdgeEventArgs)">
6447 <summary>
6448 Records edge predecessor
6449 </summary>
6450 </member>
6451 <member name="M:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.FinishEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6452 <summary>
6453 Records end path edges
6454 </summary>
6455 <param name="sender"></param>
6456 <param name="args"></param>
6457 </member>
6458 <member name="P:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.EdgePredecessors">
6459 <summary>
6460 Vertex Edge predecessor map.
6461 </summary>
6462 </member>
6463 <member name="P:QuickGraph.Algorithms.Visitors.EdgePredecessorRecorderVisitor.EndPathEdges">
6464 <summary>
6465 End path edges collection
6466 </summary>
6467 </member>
6468 <member name="T:QuickGraph.Algorithms.Visitors.EdgeRecorderVisitor">
6469 <summary>
6470 A visitor that records edges.
6471 </summary>
6472 </member>
6473 <member name="M:QuickGraph.Algorithms.Visitors.EdgeRecorderVisitor.#ctor">
6474 <summary>
6475 Create an empty edge visitor
6476 </summary>
6477 </member>
6478 <member name="M:QuickGraph.Algorithms.Visitors.EdgeRecorderVisitor.#ctor(QuickGraph.Collections.EdgeCollection)">
6479 <summary>
6480
6481 </summary>
6482 <param name="edges"></param>
6483 </member>
6484 <member name="M:QuickGraph.Algorithms.Visitors.EdgeRecorderVisitor.RecordEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6485 <summary>
6486 Record edge handler
6487 </summary>
6488 <param name="sender"></param>
6489 <param name="args"></param>
6490 </member>
6491 <member name="P:QuickGraph.Algorithms.Visitors.EdgeRecorderVisitor.Edges">
6492 <summary>
6493 Recorded edges
6494 </summary>
6495 </member>
6496 <member name="T:QuickGraph.Algorithms.Visitors.EdgeWeightScalerVisitor">
6497 <summary>
6498 Scales the edge weights at each call
6499 </summary>
6500 </member>
6501 <member name="M:QuickGraph.Algorithms.Visitors.EdgeWeightScalerVisitor.#ctor(QuickGraph.Collections.EdgeDoubleDictionary,System.Double)">
6502 <summary>
6503 Constructs a edge weight scaler
6504 </summary>
6505 <param name="weights">edge weight dictionary</param>
6506 <param name="factor">weight scale factor</param>
6507 </member>
6508 <member name="M:QuickGraph.Algorithms.Visitors.EdgeWeightScalerVisitor.TreeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6509 <summary>
6510 Event handler that applies the factor the edge weight
6511 </summary>
6512 <param name="sender"></param>
6513 <param name="e">event arguement containing the edge</param>
6514 </member>
6515 <member name="P:QuickGraph.Algorithms.Visitors.EdgeWeightScalerVisitor.Weights">
6516 <summary>
6517 Gets the edge weight dictionary
6518 </summary>
6519 <value>
6520 Edge weight dictionary
6521 </value>
6522 </member>
6523 <member name="P:QuickGraph.Algorithms.Visitors.EdgeWeightScalerVisitor.Factor">
6524 <summary>
6525 Gets or sets the scale factor
6526 </summary>
6527 <value>
6528 Scale factor
6529 </value>
6530 </member>
6531 <member name="T:QuickGraph.Algorithms.Visitors.SinkRecorderVisitor">
6532 <summary>
6533 Visitor that records the sink vertices in the visited tree.
6534 </summary>
6535 <remarks>
6536 A sink vertex is a vertex that has no out-edges.
6537 </remarks>
6538 </member>
6539 <member name="M:QuickGraph.Algorithms.Visitors.SinkRecorderVisitor.#ctor(QuickGraph.Concepts.Traversals.IIncidenceGraph)">
6540 <summary>
6541 Create a <see cref="!:sinkRecorderVisitor"/> instance.
6542 </summary>
6543 <param name="g">visited graph</param>
6544 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
6545 </member>
6546 <member name="M:QuickGraph.Algorithms.Visitors.SinkRecorderVisitor.#ctor(QuickGraph.Concepts.Traversals.IIncidenceGraph,QuickGraph.Collections.VertexCollection)">
6547 <summary>
6548 Create a <see cref="!:sinkRecorderVisitor"/> instance.
6549 </summary>
6550 <param name="g">visited graph</param>
6551 <param name="sinks">collection that will hold the sinks</param>
6552 <exception cref="T:System.ArgumentNullException">g is a null reference</exception>
6553 </member>
6554 <member name="P:QuickGraph.Algorithms.Visitors.SinkRecorderVisitor.VisitedGraph">
6555 <summary>
6556 Gets the visited <see cref="T:QuickGraph.Concepts.Traversals.IIncidenceGraph"/> instance
6557 </summary>
6558 <value>
6559 The visited graph
6560 </value>
6561 </member>
6562 <member name="P:QuickGraph.Algorithms.Visitors.SinkRecorderVisitor.Sinks">
6563 <summary>
6564 Gets the sink collection
6565 </summary>
6566 <value>
6567 A <see cref="T:QuickGraph.Collections.VertexCollection"/> of sink vertices
6568 </value>
6569 </member>
6570 <member name="T:QuickGraph.Algorithms.Visitors.NamespaceDoc">
6571 <summary>
6572 <para>
6573 The <b>QuickGraph.Algorithms.Visitors</b> namespace contains
6574 classic graph algorithm visitors.
6575 </para>
6576 </summary>
6577 </member>
6578 <member name="T:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor">
6579 <summary>
6580 Visitor that computes the vertices predecessors.
6581 </summary>
6582 <remarks>
6583 The visitor applies to any algorithm that implements the
6584 <seealso cref="T:QuickGraph.Concepts.Algorithms.IPredecessorRecorderAlgorithm"/> model.
6585 </remarks>
6586 <example>
6587 This sample shows how to use the find the predecessor map using a
6588 <seealso cref="T:QuickGraph.Algorithms.Search.DepthFirstSearchAlgorithm"/>:
6589 <code>
6590 Graph g = ...;
6591
6592 // creating dfs algorithm
6593 DepthFirstSearchAlgorithm dfs = new DepthFirstSearchAlgorithm(g);
6594
6595 // creating predecessor visitor
6596 PredecessorVisitor pred = new PredecessorVisitor();
6597
6598 // registering event handlers
6599 pred.RegisterHandlers(dfs);
6600
6601 //executing...
6602 dfs.Compute();
6603
6604 // pred.Predecessors now contains the map of predecessors.
6605 </code>
6606 </example>
6607 </member>
6608 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.#ctor">
6609 <summary>
6610 Default constructor
6611 </summary>
6612 </member>
6613 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.#ctor(QuickGraph.Collections.VertexEdgeDictionary)">
6614 <summary>
6615 Constructor, uses the given predecessor map.
6616 </summary>
6617 <param name="predecessors">Predecessor map</param>
6618 <exception cref="T:System.ArgumentNullException">
6619 predecessors is null
6620 </exception>
6621 </member>
6622 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.Path(QuickGraph.Concepts.IVertex)">
6623 <summary>
6624 Returns the path leading to the vertex v.
6625 </summary>
6626 <param name="v">end of the path</param>
6627 <returns>path leading to v</returns>
6628 </member>
6629 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.AllPaths">
6630 <summary>
6631 Returns the minimal set of path from the entry point that
6632 executes all actions
6633 </summary>
6634 <returns></returns>
6635 </member>
6636 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.TreeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6637 <summary>
6638 Let e = (u,v), p[v]=u
6639 </summary>
6640 </member>
6641 <member name="M:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.FinishVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6642 <summary>
6643 Records end of path vertex
6644 </summary>
6645 <param name="sender"></param>
6646 <param name="args"></param>
6647 </member>
6648 <member name="P:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.Predecessors">
6649 <summary>
6650 Vertex Edge predecessor map.
6651 </summary>
6652 </member>
6653 <member name="P:QuickGraph.Algorithms.Visitors.PredecessorRecorderVisitor.EndPathVertices">
6654 <summary>
6655 End of path vertices
6656 </summary>
6657 </member>
6658 <member name="T:QuickGraph.Algorithms.Visitors.SuccessorRecorderVisitor">
6659 <summary>
6660 Summary description for SuccessorRecorderVisitor.
6661 </summary>
6662 </member>
6663 <member name="M:QuickGraph.Algorithms.Visitors.SuccessorRecorderVisitor.InitializeVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6664 <summary>
6665 Removes
6666 </summary>
6667 <param name="sender"></param>
6668 <param name="args"></param>
6669 </member>
6670 <member name="M:QuickGraph.Algorithms.Visitors.SuccessorRecorderVisitor.TreeEdge(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6671 <summary>
6672 Let e = (u,v), p[u]=e
6673 </summary>
6674 </member>
6675 <member name="T:QuickGraph.Algorithms.Visitors.TimeStamperVisitor">
6676 <summary>
6677 Description résumée de TimeStamperVisitor.
6678 </summary>
6679 </member>
6680 <member name="M:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.#ctor">
6681 <summary>
6682 Default constructor
6683 </summary>
6684 </member>
6685 <member name="M:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.DiscoverVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6686 <summary>
6687 Store the current time in the discover dictionary and increment
6688 the current time.
6689 </summary>
6690 <param name="sender"></param>
6691 <param name="args"></param>
6692 </member>
6693 <member name="M:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.FinishVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6694 <summary>
6695 Store the current time in the finish dictionary and increment
6696 the current time.
6697 </summary>
6698 <param name="sender"></param>
6699 <param name="args"></param>
6700 </member>
6701 <member name="P:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.DiscoverTimes">
6702 <summary>
6703 Vertex discover time dictionary
6704 </summary>
6705 </member>
6706 <member name="P:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.FinishTimes">
6707 <summary>
6708 Vertex finish time dictionary
6709 </summary>
6710 </member>
6711 <member name="P:QuickGraph.Algorithms.Visitors.TimeStamperVisitor.Time">
6712 <summary>
6713 Current time
6714 </summary>
6715 </member>
6716 <member name="T:QuickGraph.Algorithms.Visitors.PopulatorVisitor">
6717 <summary>
6718 Summary description for VertexListPopulatorVisitor.
6719 </summary>
6720 </member>
6721 <member name="T:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor">
6722 <summary>
6723 A visitor that records vertices.
6724 </summary>
6725 </member>
6726 <member name="M:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.#ctor">
6727 <summary>
6728 Create an empty vertex visitor
6729 </summary>
6730 </member>
6731 <member name="M:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.#ctor(QuickGraph.Collections.VertexCollection)">
6732 <summary>
6733
6734 </summary>
6735 <param name="vertices"></param>
6736 </member>
6737 <member name="M:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.RecordVertex(System.Object,QuickGraph.Concepts.VertexEventArgs)">
6738 <summary>
6739 Record vertex handler
6740 </summary>
6741 <param name="sender"></param>
6742 <param name="args"></param>
6743 </member>
6744 <member name="M:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.RecordTarget(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6745 <summary>
6746 Record vertex handler
6747 </summary>
6748 <param name="sender"></param>
6749 <param name="args"></param>
6750 </member>
6751 <member name="M:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.RecordSource(System.Object,QuickGraph.Concepts.EdgeEventArgs)">
6752 <summary>
6753 Record vertex handler
6754 </summary>
6755 <param name="sender"></param>
6756 <param name="args"></param>
6757 </member>
6758 <member name="P:QuickGraph.Algorithms.Visitors.VertexRecorderVisitor.Vertices">
6759 <summary>
6760 Recorded vertices
6761 </summary>
6762 </member>
6763 </members>
6764</doc>