QuickGraph Given a Distance map, compare two vertex distance Builds a vertex distance comparer Compare the distance between vertex x and y First vertex Second vertex -1 if d[x]<d[y], 0 if d[x] equals d[y] and +1 if d[x] > d[y] A collection of elements of type Double Initializes a new empty instance of the DoubleCollection class. Initializes a new instance of the DoubleCollection class, containing elements copied from an array. The array whose elements are to be added to the new DoubleCollection. Initializes a new instance of the DoubleCollection class, containing elements copied from another instance of DoubleCollection The DoubleCollection whose elements are to be added to the new DoubleCollection. Adds the elements of an array to the end of this DoubleCollection. The array whose elements are to be added to the end of this DoubleCollection. Adds the elements of another DoubleCollection to the end of this DoubleCollection. The DoubleCollection whose elements are to be added to the end of this DoubleCollection. Adds an instance of type Double to the end of this DoubleCollection. The Double to be added to the end of this DoubleCollection. Determines whether a specfic Double value is in this DoubleCollection. The Double value to locate in this DoubleCollection. true if value is found in this DoubleCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this DoubleCollection The Double value to locate in the DoubleCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the DoubleCollection at the specified index The index at which the Double is to be inserted. The Double to insert. Removes the first occurrence of a specific Double from this DoubleCollection. The Double value to remove from this DoubleCollection. Returns an enumerator that can iterate through the elements of this DoubleCollection. An object that implements System.Collections.IEnumerator. Gets or sets the Double at the given index in this DoubleCollection. Type-specific enumeration class, used by DoubleCollection.GetEnumerator. A collection of elements of type Edge An edge enumerable collection Edge enumerable collection Initializes a new empty instance of the EdgeCollection class. Initializes a new instance of the EdgeCollection class, containing elements copied from an array. The array whose elements are to be added to the new EdgeCollection. Initializes a new instance of the EdgeCollection class, containing elements copied from another instance of EdgeCollection The EdgeCollection whose elements are to be added to the new EdgeCollection. Adds the elements of an array to the end of this EdgeCollection. The array whose elements are to be added to the end of this EdgeCollection. Adds the elements of another EdgeCollection to the end of this EdgeCollection. The EdgeCollection whose elements are to be added to the end of this EdgeCollection. Adds an instance of type Edge to the end of this EdgeCollection. The Edge to be added to the end of this EdgeCollection. Determines whether a specfic Edge value is in this EdgeCollection. The Edge value to locate in this EdgeCollection. true if value is found in this EdgeCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this EdgeCollection The Edge value to locate in the EdgeCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the EdgeCollection at the specified index The index at which the Edge is to be inserted. The Edge to insert. Removes the first occurrence of a specific Edge from this EdgeCollection. The Edge value to remove from this EdgeCollection. Returns an enumerator that can iterate through the elements of this EdgeCollection. An object that implements System.Collections.IEnumerator. Gets or sets the Edge at the given index in this EdgeCollection. Type-specific enumeration class, used by EdgeCollection.GetEnumerator. An edge enumerator Current edge Create a new enumerator on the collection collection to enumerate Moves cursor to next element. true if current is valid, false otherwize Resets the cursor to the position before the first element. The current element. A collection of elements of type EdgeCollection Initializes a new empty instance of the EdgeCollectionCollection class. Initializes a new instance of the EdgeCollectionCollection class, containing elements copied from an array. The array whose elements are to be added to the new EdgeCollectionCollection. Initializes a new instance of the EdgeCollectionCollection class, containing elements copied from another instance of EdgeCollectionCollection The EdgeCollectionCollection whose elements are to be added to the new EdgeCollectionCollection. Adds the elements of an array to the end of this EdgeCollectionCollection. The array whose elements are to be added to the end of this EdgeCollectionCollection. Adds the elements of another EdgeCollectionCollection to the end of this EdgeCollectionCollection. The EdgeCollectionCollection whose elements are to be added to the end of this EdgeCollectionCollection. Adds an instance of type EdgeCollection to the end of this EdgeCollectionCollection. The EdgeCollection to be added to the end of this EdgeCollectionCollection. Determines whether a specfic EdgeCollection value is in this EdgeCollectionCollection. The EdgeCollection value to locate in this EdgeCollectionCollection. true if value is found in this EdgeCollectionCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this EdgeCollectionCollection The EdgeCollection value to locate in the EdgeCollectionCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the EdgeCollectionCollection at the specified index The index at which the EdgeCollection is to be inserted. The EdgeCollection to insert. Removes the first occurrence of a specific EdgeCollection from this EdgeCollectionCollection. The EdgeCollection value to remove from this EdgeCollectionCollection. Returns an enumerator that can iterate through the elements of this EdgeCollectionCollection. An object that implements System.Collections.IEnumerator. Gets or sets the EdgeCollection at the given index in this EdgeCollectionCollection. Type-specific enumeration class, used by EdgeCollectionCollection.GetEnumerator. Gets the current edge collection Current edge collection A dictionary with keys of type Edge and values of type GraphColor Initializes a new empty instance of the EdgeGraphColorDictionary class Adds an element with the specified key and value to this EdgeGraphColorDictionary. The Edge key of the element to add. The GraphColor value of the element to add. Determines whether this EdgeGraphColorDictionary contains a specific key. The Edge key to locate in this EdgeGraphColorDictionary. true if this EdgeGraphColorDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeGraphColorDictionary contains a specific key. The Edge key to locate in this EdgeGraphColorDictionary. true if this EdgeGraphColorDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeGraphColorDictionary contains a specific value. The GraphColor value to locate in this EdgeGraphColorDictionary. true if this EdgeGraphColorDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeGraphColorDictionary. The Edge key of the element to remove. Gets or sets the GraphColor associated with the given Edge The Edge whose value to get or set. Gets a collection containing the keys in this EdgeGraphColorDictionary. Gets a collection containing the values in this EdgeGraphColorDictionary. A dictionary with keys of type Edge and values of type Double Initializes a new empty instance of the EdgeDoubleDictionary class Adds an element with the specified key and value to this EdgeDoubleDictionary. The Edge key of the element to add. The Double value of the element to add. Determines whether this EdgeDoubleDictionary contains a specific key. The Edge key to locate in this EdgeDoubleDictionary. true if this EdgeDoubleDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeDoubleDictionary contains a specific key. The Edge key to locate in this EdgeDoubleDictionary. true if this EdgeDoubleDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeDoubleDictionary contains a specific value. The Double value to locate in this EdgeDoubleDictionary. true if this EdgeDoubleDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeDoubleDictionary. The Edge key of the element to remove. Gets or sets the Double associated with the given Edge The Edge whose value to get or set. Gets a collection containing the keys in this EdgeDoubleDictionary. Gets a collection containing the values in this EdgeDoubleDictionary. A dictionary with keys of type IEdge and values of type IEdge Initializes a new empty instance of the EdgeEdgeDictionary class Adds an element with the specified key and value to this EdgeEdgeDictionary. The IEdge key of the element to add. The IEdge value of the element to add. Determines whether this EdgeEdgeDictionary contains a specific key. The IEdge key to locate in this EdgeEdgeDictionary. true if this EdgeEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeEdgeDictionary contains a specific key. The IEdge key to locate in this EdgeEdgeDictionary. true if this EdgeEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeEdgeDictionary contains a specific value. The IEdge value to locate in this EdgeEdgeDictionary. true if this EdgeEdgeDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeEdgeDictionary. The IEdge key of the element to remove. Gets or sets the IEdge associated with the given IEdge The IEdge whose value to get or set. Gets a collection containing the keys in this EdgeEdgeDictionary. Gets a collection containing the values in this EdgeEdgeDictionary. A wrapper class for weak collection of IEdge This class works as a proxy for a weakly named collection of IEdge by implementing the IEdgeEnumerable interface. In this example, we show how to convert the value collection of a vertex dictionary to a stronly typed collection: VertexEdgeDictionary names = new VertexEdgeDictionary(); ... // this will fail names.Values implements IEnumerable. IEdgeEnumerable c = names.Values; // wrapping the values IEdgeEnumrable c = new EdgeEnumerable(names.Values); Method Wrapped enumerable en is null Wraps up the weakly typed collection in a strongly typed (IEdge) collection. Collection to wrap Edge enumerable collection The method is thread-safe. Return a strongly typed enumerator strongly typed enumerator Wrapped enumerable Strongly typed enumerator Builds a new enumrator wrapped enumerator e is null Wrapped enumerator Current Edge A dictionary with keys of type IEdge and values of type Int Initializes a new empty instance of the EdgeIntDictionary class Adds an element with the specified key and value to this EdgeIntDictionary. The IEdge key of the element to add. The Int value of the element to add. Determines whether this EdgeIntDictionary contains a specific key. The IEdge key to locate in this EdgeIntDictionary. true if this EdgeIntDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeIntDictionary contains a specific key. The IEdge key to locate in this EdgeIntDictionary. true if this EdgeIntDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeIntDictionary contains a specific value. The Int value to locate in this EdgeIntDictionary. true if this EdgeIntDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeIntDictionary. The IEdge key of the element to remove. Gets or sets the Int associated with the given IEdge The IEdge whose value to get or set. Gets a collection containing the keys in this EdgeIntDictionary. Gets a collection containing the values in this EdgeIntDictionary. A dictionary with keys of type Edge and values of type Object Initializes a new empty instance of the EdgeObjectDictionary class Adds an element with the specified key and value to this EdgeObjectDictionary. The Edge key of the element to add. The Object value of the element to add. Determines whether this EdgeObjectDictionary contains a specific key. The Edge key to locate in this EdgeObjectDictionary. true if this EdgeObjectDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeObjectDictionary contains a specific key. The Edge key to locate in this EdgeObjectDictionary. true if this EdgeObjectDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeObjectDictionary contains a specific value. The Object value to locate in this EdgeObjectDictionary. true if this EdgeObjectDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeObjectDictionary. The Edge key of the element to remove. Gets or sets the Object associated with the given Edge The Edge whose value to get or set. Gets a collection containing the keys in this EdgeObjectDictionary. Gets a collection containing the values in this EdgeObjectDictionary. A dictionary with keys of type Edge and values of type String Initializes a new empty instance of the EdgeStringDictionary class Adds an element with the specified key and value to this EdgeStringDictionary. The Edge key of the element to add. The String value of the element to add. Determines whether this EdgeStringDictionary contains a specific key. The Edge key to locate in this EdgeStringDictionary. true if this EdgeStringDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeStringDictionary contains a specific key. The Edge key to locate in this EdgeStringDictionary. true if this EdgeStringDictionary contains an element with the specified key; otherwise, false. Determines whether this EdgeStringDictionary contains a specific value. The String value to locate in this EdgeStringDictionary. true if this EdgeStringDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this EdgeStringDictionary. The Edge key of the element to remove. Gets or sets the String associated with the given Edge The Edge whose value to get or set. Gets a collection containing the keys in this EdgeStringDictionary. Gets a collection containing the values in this EdgeStringDictionary. A filtered adjacency graph AdjacentGraph concept Returns a enumerable collection of adjacent vertices Create an adjacency filtered graph graph to filter vertex predicate Returns a filtered enumerable collection of adjacent vertices Filtered adjacency graph Vertex predicate used to filter the vertices A filtered bidirectional graph A filtered incidence graph Base class for filtered graphs The Graph concept contains a few requirements that are common to all the graph concepts. Directed or undirected graph True if directed graph Parallel edge handling This describes whether the graph class allows the insertion of parallel edges (edges with the same source and target). Construct a graph that filters edges graph to filter edge predicate g or edgePredicate is null Construct a filtered graph with an edge and a vertex predicate. graph to filter edge predicate vertex predicate g, edgePredicate or vertexPredicate are null Underlying filtered graph Edge predicate used to filter the edges Vertex predicate used to filter the vertices True if underlying graph in directed True if underlying graph allows parallel edges Access to each vertex out-edges. The IncidenceGraph concept provides an interface for efficient access to the out-edges of each vertex in the graph. A graph defined by a out-edges method. The concept provides an interface for implicitely defining graphs through an method. Gets a value indicating if the set of out-edges is empty Usually faster that calling . true if the out-edge set is empty, false otherwise. v is a null reference Returns the out-degree edges of v vertex to test out-degree Returns an iterable collection of the out edges of v Gets a value indicating if there is an edge between the vertices , . source vertex target vertex true if (, ) exists. u or v is a null reference This method checks wheter an edge exists between the two vertices. Complexity: O(E) Construct a graph that filters in-edges graph to filter edge predicate g or edgePredicate is null Construct a filtered graph with an edge and a vertex predicate. graph to filter edge predicate vertex predicate g, edgePredicate or vertexPredicate are null Gets a value indicating if the set of out-edges is empty Usually faster that calling . true if the out-edge set is empty, false otherwise. v is a null reference Returns the number of out-degree edges of v vertex to test out-degree Returns an iterable collection of the out edges of v Implentes IIncidenceGraph interface. Gets a value indicating if there is an edge between the vertices , . source vertex target vertex true if (, ) exists. u or v is a null reference This method checks wheter an edge exists between the two vertices. Complexity: O(E) Gets an enumerable collection of the v adjacent vertices Underlying incidence graph Adds access to in-edges. The BidirectionalGraph concept refines IncidenceGraph and adds the requirement for efficient access to the in-edges of each vertex. This concept is separated from IncidenceGraph because for directed graphs efficient access to in-edges typically requires more storage space, and many algorithms do not require access to in-edges. For undirected graphs this is not an issue, since the InEdges and OutEdges functions are the same, they both return the edges incident to the vertex. The InEdges() function is required to be constant time. The InDegree and Degree properties functions must be linear in the number of in-edges (for directed graphs) or incident edges (for undirected graphs). Gets a value indicating if the set of in-edges is empty Usually faster that calling . true if the in-edge set is empty, false otherwise. v is a null reference Returns the number of in-edges (for directed graphs) or the number of incident edges (for undirected graphs) of vertex v in graph g. vertex to test out-degree Gets a value indicating if the set of edges connected to v is empty Usually faster that calling . true if the adjacent edge set is empty, false otherwise. v is a null reference Returns the number of in-edges plus out-edges (for directed graphs) or the number of incident edges (for undirected graphs) of vertex v in graph g. vertex to test out-degree Enumerable collection of in-edges Returns an enumerable collection of in-edges (for directed graphs) or incident edges (for undirected graphs) of vertex v in graph g. For both directed and undirected graphs, the target of an out-edge is required to be vertex v and the source is required to be a vertex that is adjacent to v. Construct a graph that filters in and out edges graph to filter edge predicate g or edgePredicate is null Construct a filtered graph with an edge and a vertex predicate. graph to filter edge predicate vertex predicate g, edgePredicate or vertexPredicate are null Gets a value indicating if the set of edges connected to v is empty Usually faster that calling . true if the adjacent edge set is empty, false otherwise. v is a null reference Gets a value indicating if the set of in-edges is empty Usually faster that calling . true if the in-edge set is empty, false otherwise. v is a null reference Returns the number of out-degree edges of v vertex to test out-degree Vertex filtered degre v to compute degree of filtered degree Returns an iterable collection of the out edges of v Implentens IIncidenceGraph interface. Underlying incidence graph A filtered IEdgeListAndIncidenceGraph. A filtered edge list graph The EdgeListGraph concept refines the Graph concept, and adds the requirement for efficient access to all the edges in the graph. Gets a value indicating if the edge is part of the list. edge to test true if part of the list, false otherwize e is a null reference This method checks wheter a particular edge is part of the set. Complexity: O(E). Gets a value indicating if the vertex set is empty Usually faster that calling . true if the vertex set is empty, false otherwise. Returns the number of edges in the graph. Returns an enumerator providing access to all the edges in the graph. Construct a graph that filters edges graph to filter edge predicate g or edgePredicate is null Construct a graph that filters edges graph to filter edge predicate vertex predicate g or edgePredicate or vertexPredicate is null Gets a value indicating if the edge is part of the list. edge to test true if part of the list, false otherwize e is a null reference This method checks wheter a particular edge is part of the set. Complexity: O(E). Underlying incidence graph Gets a value indicating if the vertex set is empty Usually faster that calling . true if the vertex set is empty, false otherwise. Returns the number of filtered edges in the graph number of edges Returns an iterable collection of filtered edges Defines the union of EdgeListGraph and IncidenceListGraph. Construct a graph that filters edges and out-edges graph to filter edge predicate g or edgePredicate is null Gets a value indicating if the set of out-edges is empty Usually faster that calling . true if the out-edge set is empty, false otherwise. v is a null reference Returns the number of out-degree edges of v vertex to test out-degree Returns an iterable collection of the out edges of v Implentens IIncidenceGraph interface. Gets a value indicating if there is an edge between the vertices , . source vertex target vertex true if (, ) exists. u or v is a null reference This method checks wheter an edge exists between the two vertices. Complexity: O(E) Gets an enumerable collection of the v adjacent vertices Underlying incidence graph Wrapped filtered edge list A filtered edge list graph Summary description for FilteredVertexList. The VertexListGraph concept refines the Graph concept, and adds the requirement for efficient traversal of all the vertices in the graph. One issue in the design of this concept is whether to include the refinement from the IncidenceGraph concepts. The ability to traverse the vertices of a graph is orthogonal to traversing out-edges, so it would make sense to have a VertexListGraph concept that only includes vertex traversal. However, such a concept would no longer really be a graph, but would just be a set, and the STL already has concepts for dealing with such things. However, there are many BGL algorithms that need to traverse the vertices and out-edges of a graph, so for convenience a concept is needed that groups these requirements together, hence the VertexListGraph concept. Gets a value indicating if the vertex is part of the list. vertex to test true if part of the list, false otherwize v is a null reference This method checks wheter a particular vertex is part of the set. Complexity: O(V) at least, possibly in amortized constant time. Gets a value indicating if the vertex set is empty Usually faster (O(1)) that calling VertexCount. true if the vertex set is empty, false otherwise. Gets the number of in the graph. The number of in the graph Gets an iterator-range providing access to all the vertices in the graph. collection over the instances of the graph. Construct a graph that filters in-edges graph to filter vertex predicate g or vertexPredicate is null Construct a graph that filters in-edges graph to filter edge predicate g or edgePredicate is null Construct a filtered graph with an edge and a vertex predicate. graph to filter edge predicate vertex predicate g, edgePredicate or vertexPredicate are null Gets a value indicating if the vertex is part of the list. vertex to test true if part of the list, false otherwize v is a null reference This method checks wheter a particular vertex is part of the set. Complexity: O(V) Underlying incidence graph Gets a value indicating if the vertex set is empty Usually faster (O(1)) that calling VertexCount. true if the vertex set is empty, false otherwise. Gets the filtered vertices count This method is O(|V|). Filtered enumerable collection of vertices Defines the union of VertexListGraph and EdgeListGraph. Construct a graph that filters edges and vertices graph to filter edge predicate g or edgePredicate is null Underlying incidence graph Wrapped filtered edge list Gets a value indicating if the vertex set is empty Usually faster that calling . true if the vertex set is empty, false otherwise. Returns the number of filtered edges in the graph number of edges Returns an iterable collection of filtered edges The QuickGraph.Collections.Filtered namespace contains filtered graph proxies that enables to have filtered views of graph. Each traversal concept/interface is mapped with a corresponding filtered class. Description résumée de FilteredEdgeCollection. Filtered edge collection base collection filtering predicate Returns the enumerator IEnumerable implementation Base collection Edge predicate Filetred enumerator class Positions the cursor before the first element. Moves the cursor to the next in-edge. True if successful, false if the iteration ended. Current edge IEnumerator implementation Filtered vertex collectiohn This colleciton is used to do filtered iteration. Edge enumerable collection Default constructor base collection predicate ec or ep null Returns a filtered enumerator enumerator IEnumerable implementation IVertexEnumerable implementation Base collection Predicate Filtered enumerator An edge enumerator Current edge Constructor Base enumerator predicate Positions the cursor before the first element. Moves the cursor to the next Vertex. True if successful, false if the iteration ended. Current Vertex IEnumerator implementation The QuickGraph.Collections namespace contains a bunch of strongly typed collections and dictionaries. A Priorithized (with respect to distance) vertex buffer. A vertex buffer that acts like a stack. Constructs an empty buffer Returns the latest vertex in the buffer. Leaves it in the buffer. Latest vertex Pushes a new vertex at the end of the buffer: Vertex to push Removes the latest vertex. Sorts the buffer using the comparer Comparer used to sort the buffer Returns an enumerator over the buffer Buffer enumerator The number of vertices in the buffer Builds a priorithzied vertex buffer and fills a vertex distance map. vertex distance map Updates the buffer order modified vertex Push a new vertex on the buffer. new vertex Summary description for ReversedEdge. Edge interface Edge identification number Source vertex Target vertex Defines the == operator Summary description for ReversedEdgeEnumerable. Summary description for ReversedEdgeEnumerator. Default object comparer. Default swap class Object swapper interface Swaps left and right in the list Default swap operation Summary description for ISorter. Sorts the . http://www.codeproject.com/csharp/csquicksort.asp Abstract base class for Swap sort algorithms. This class serves as a base class for swap based sort algorithms. Gets or sets the object Comparer object Set property, the value is a null reference Gets or set the swapper object The swapper. Swapper is a null reference Sorts the array. The array to sort. A dictionary with keys of type String and values of type IEdge Initializes a new empty instance of the StringEdgeDictionary class Adds an element with the specified key and value to this StringEdgeDictionary. The String key of the element to add. The IEdge value of the element to add. Determines whether this StringEdgeDictionary contains a specific key. The String key to locate in this StringEdgeDictionary. true if this StringEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this StringEdgeDictionary contains a specific key. The String key to locate in this StringEdgeDictionary. true if this StringEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this StringEdgeDictionary contains a specific value. The IEdge value to locate in this StringEdgeDictionary. true if this StringEdgeDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this StringEdgeDictionary. The String key of the element to remove. Gets or sets the IEdge associated with the given String The String whose value to get or set. Gets a collection containing the keys in this StringEdgeDictionary. Gets a collection containing the values in this StringEdgeDictionary. A dictionary with keys of type String and values of type IVertex Initializes a new empty instance of the StringVertexDictionary class Adds an element with the specified key and value to this StringVertexDictionary. The String key of the element to add. The IVertex value of the element to add. Determines whether this StringVertexDictionary contains a specific key. The String key to locate in this StringVertexDictionary. true if this StringVertexDictionary contains an element with the specified key; otherwise, false. Determines whether this StringVertexDictionary contains a specific key. The String key to locate in this StringVertexDictionary. true if this StringVertexDictionary contains an element with the specified key; otherwise, false. Determines whether this StringVertexDictionary contains a specific value. The IVertex value to locate in this StringVertexDictionary. true if this StringVertexDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this StringVertexDictionary. The String key of the element to remove. Gets or sets the IVertex associated with the given String The String whose value to get or set. Gets a collection containing the keys in this StringVertexDictionary. Gets a collection containing the values in this StringVertexDictionary. Summary description for AdjacentVertexEnumerator. Summary description for Vector2D. A collection of elements of type Vertex A vertex enumerable collection Initializes a new empty instance of the VertexCollection class. Initializes a new instance of the VertexCollection class, containing elements copied from an array. The array whose elements are to be added to the new VertexCollection. Initializes a new instance of the interface, containing elements copied from another instance of VertexCollection The whose elements are to be added to the new VertexCollection. Adds the elements of an array to the end of this VertexCollection. The array whose elements are to be added to the end of this VertexCollection. Adds the elements of another to the end of this VertexCollection. The whose elements are to be added to the end of this VertexCollection. Adds an instance of type Vertex to the end of this VertexCollection. The Vertex to be added to the end of this VertexCollection. Determines whether a specfic Vertex value is in this VertexCollection. The Vertex value to locate in this VertexCollection. true if value is found in this VertexCollection; false otherwise. Return the zero-based index of the first occurrence of a specific value in this VertexCollection The Vertex value to locate in the VertexCollection. The zero-based index of the first occurrence of the _ELEMENT value if found; -1 otherwise. Inserts an element into the VertexCollection at the specified index The index at which the Vertex is to be inserted. The Vertex to insert. Returns an enumerator that can iterate through the elements of this VertexCollection. An object that implements System.Collections.IEnumerator. Removes the first occurrence of a specific Vertex from this VertexCollection. The Vertex value to remove from this VertexCollection. Gets or sets the Vertex at the given index in this VertexCollection. Type-specific enumeration class, used by VertexCollection.GetEnumerator. Builds a enumerator on the collection Current vertex A dictionary with keys of type Vertex and values of type GraphColor Initializes a new empty instance of the VertexColorDictionary class Adds an element with the specified key and value to this VertexColorDictionary. The Vertex key of the element to add. The GraphColor value of the element to add. Determines whether this VertexColorDictionary contains a specific key. The Vertex key to locate in this VertexColorDictionary. true if this VertexColorDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexColorDictionary contains a specific key. The Vertex key to locate in this VertexColorDictionary. true if this VertexColorDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexColorDictionary contains a specific value. The GraphColor value to locate in this VertexColorDictionary. true if this VertexColorDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexColorDictionary. The Vertex key of the element to remove. Gets or sets the GraphColor associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexColorDictionary. Gets a collection containing the values in this VertexColorDictionary. A dictionary with keys of type Vertex and values of type Double Initializes a new empty instance of the VertexDistanceDictionary class Adds an element with the specified key and value to this VertexDistanceDictionary. The Vertex key of the element to add. The Double value of the element to add. Determines whether this VertexDistanceDictionary contains a specific key. The Vertex key to locate in this VertexDistanceDictionary. true if this VertexDistanceDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexDistanceDictionary contains a specific key. The Vertex key to locate in this VertexDistanceDictionary. true if this VertexDistanceDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexDistanceDictionary contains a specific value. The Double value to locate in this VertexDistanceDictionary. true if this VertexDistanceDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexDistanceDictionary. The Vertex key of the element to remove. Gets or sets the Double associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexDistanceDictionary. Gets a collection containing the values in this VertexDistanceDictionary. A dictionary with keys of type IVertex and values of type DoubleCollection Initializes a new empty instance of the VertexDoublesDictionary class Adds an element with the specified key and value to this VertexDoublesDictionary. The IVertex key of the element to add. The DoubleCollection value of the element to add. Determines whether this VertexDoublesDictionary contains a specific key. The IVertex key to locate in this VertexDoublesDictionary. true if this VertexDoublesDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexDoublesDictionary contains a specific key. The IVertex key to locate in this VertexDoublesDictionary. true if this VertexDoublesDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexDoublesDictionary contains a specific value. The DoubleCollection value to locate in this VertexDoublesDictionary. true if this VertexDoublesDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexDoublesDictionary. The IVertex key of the element to remove. Gets or sets the DoubleCollection associated with the given IVertex The IVertex whose value to get or set. Gets a collection containing the keys in this VertexDoublesDictionary. Gets a collection containing the values in this VertexDoublesDictionary. A dictionary with keys of type Vertex and values of type Edge Initializes a new empty instance of the VertexEdgeDictionary class Adds an element with the specified key and value to this VertexEdgeDictionary. The Vertex key of the element to add. The Edge value of the element to add. Determines whether this VertexEdgeDictionary contains a specific key. The Vertex key to locate in this VertexEdgeDictionary. true if this VertexEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexEdgeDictionary contains a specific key. The Vertex key to locate in this VertexEdgeDictionary. true if this VertexEdgeDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexEdgeDictionary contains a specific value. The Edge value to locate in this VertexEdgeDictionary. true if this VertexEdgeDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexEdgeDictionary. The Vertex key of the element to remove. Gets or sets the Edge associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexEdgeDictionary. Gets a collection containing the values in this VertexEdgeDictionary. A dictionary with keys of type Vertex and values of type EdgeCollection Initializes a new empty instance of the VertexEdgesDictionary class Adds an element with the specified key and value to this VertexEdgesDictionary. The Vertex key of the element to add. The EdgeCollection value of the element to add. Determines whether this VertexEdgesDictionary contains a specific key. The Vertex key to locate in this VertexEdgesDictionary. true if this VertexEdgesDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexEdgesDictionary contains a specific key. The Vertex key to locate in this VertexEdgesDictionary. true if this VertexEdgesDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexEdgesDictionary contains a specific value. The EdgeCollection value to locate in this VertexEdgesDictionary. true if this VertexEdgesDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexEdgesDictionary. The Vertex key of the element to remove. Gets or sets the EdgeCollection associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexEdgesDictionary. Gets a collection containing the values in this VertexEdgesDictionary. A simple IEnumerable class that provides an enumerator over the graph edges. Construct an enumerable collection of edges vertex out edges dictionary vertexOutEdges is null Provides an enumerator over the graph edges An enumerator Implements the IEnumerable method. An enumerator over the edges An adaptor class to enumerate edges. The enumerator works be succesively iterating the vertices out-edges. This class should not be constructed directly. It is created on a GetEnumerator() call. Construct an enumerator over the out-edges Out edge dictionary to iterate vertexOutEdges is null Sets the enumerator to its initial position, which is before the first element in the collection. Advances the enumerator to the next element of the collection. true if the enumerator was successfully advanced to the next edge; false if the enumerator has passed the end of the collection. Move the vertex iterator to the next vertex. Gets the current element in the collection. The enumerator is positioned before the first element of the collection or after the last element. Implement IEnumerator.Current. A wrapper class for weak collection of IVertex This class works as a proxy for a weakly named collection of IVertex by implementing the IVertexEnumerable interface. In this example, we show how to convert the key collection of a vertex dictionary to a stronly typed collection: VertexStringDictionary names = new VertexStringDictionary(); // adding names ... // this will fail names.Keys implements IEnumerable. IVertexEnumerable c = names.Keys; // wrapping the keys IVertexEnumrable c = new VertexEnumerable(names.Keys); Constructor Wrapped enumerable en is null Wraps up the weakly typed collection in a strongly typed (IVertex) collection. Collection to wrap vertex enumerable collection The method is thread-safe. Return a strongly typed enumerator strongly typed enumerator Wrapped enumerable Strongly typed enumerator Builds a new enumrator wrapped enumerator e is null Wrapped enumerator Current vertex A dictionary with keys of type Vertex and values of type int Initializes a new empty instance of the VertexIntDictionary class Adds an element with the specified key and value to this VertexIntDictionary. The Vertex key of the element to add. The int value of the element to add. Determines whether this VertexIntDictionary contains a specific key. The Vertex key to locate in this VertexIntDictionary. true if this VertexIntDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexIntDictionary contains a specific key. The Vertex key to locate in this VertexIntDictionary. true if this VertexIntDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexIntDictionary contains a specific value. The int value to locate in this VertexIntDictionary. true if this VertexIntDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexIntDictionary. The Vertex key of the element to remove. Gets or sets the int associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexIntDictionary. Gets a collection containing the values in this VertexIntDictionary. A dictionary with keys of type Vertex and values of type Object Initializes a new empty instance of the VertexObjectDictionary class Adds an element with the specified key and value to this VertexObjectDictionary. The Vertex key of the element to add. The Object value of the element to add. Determines whether this VertexObjectDictionary contains a specific key. The Vertex key to locate in this VertexObjectDictionary. true if this VertexObjectDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexObjectDictionary contains a specific key. The Vertex key to locate in this VertexObjectDictionary. true if this VertexObjectDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexObjectDictionary contains a specific value. The Object value to locate in this VertexObjectDictionary. true if this VertexObjectDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexObjectDictionary. The Vertex key of the element to remove. Gets or sets the Object associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexObjectDictionary. Gets a collection containing the values in this VertexObjectDictionary. A class containing a pair of . Mini-class useful in a number of situations. Create a pair first instance second instance or is a null reference Gets or sets the first instance First instance. set property, value is a null reference Gets or sets the second instance Second instance. set property, value is a null reference A dictionary with keys of type VertexPair and values of type double Initializes a new empty instance of the VertexPairDoubleDictionary class Adds an element with the specified key and value to this VertexPairDoubleDictionary. The VertexPair key of the element to add. The double value of the element to add. Determines whether this VertexPairDoubleDictionary contains a specific key. The VertexPair key to locate in this VertexPairDoubleDictionary. true if this VertexPairDoubleDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexPairDoubleDictionary contains a specific key. The VertexPair key to locate in this VertexPairDoubleDictionary. true if this VertexPairDoubleDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexPairDoubleDictionary contains a specific value. The double value to locate in this VertexPairDoubleDictionary. true if this VertexPairDoubleDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexPairDoubleDictionary. The VertexPair key of the element to remove. Gets or sets the double associated with the given VertexPair The VertexPair whose value to get or set. Returns Gets a collection containing the keys in this VertexPairDoubleDictionary. Gets a collection containing the values in this VertexPairDoubleDictionary. A dictionary with keys of type IVertex and values of type PointF Initializes a new empty instance of the VertexPointFDictionary class Adds an element with the specified key and value to this VertexPointFDictionary. The IVertex key of the element to add. The PointF value of the element to add. Determines whether this VertexPointFDictionary contains a specific key. The IVertex key to locate in this VertexPointFDictionary. true if this VertexPointFDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexPointFDictionary contains a specific key. The IVertex key to locate in this VertexPointFDictionary. true if this VertexPointFDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexPointFDictionary contains a specific value. The PointF value to locate in this VertexPointFDictionary. true if this VertexPointFDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexPointFDictionary. The IVertex key of the element to remove. Gets or sets the PointF associated with the given IVertex The IVertex whose value to get or set. A dictionary with keys of type IVertex and values of type Size Initializes a new empty instance of the VertexSizeDictionary class Adds an element with the specified key and value to this VertexSizeDictionary. The IVertex key of the element to add. The Size value of the element to add. Determines whether this VertexSizeDictionary contains a specific key. The IVertex key to locate in this VertexSizeDictionary. true if this VertexSizeDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexSizeDictionary contains a specific key. The IVertex key to locate in this VertexSizeDictionary. true if this VertexSizeDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexSizeDictionary contains a specific value. The Size value to locate in this VertexSizeDictionary. true if this VertexSizeDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexSizeDictionary. The IVertex key of the element to remove. Gets or sets the Size associated with the given IVertex The IVertex whose value to get or set. Gets a collection containing the keys in this VertexSizeDictionary. Gets a collection containing the values in this VertexSizeDictionary. A dictionary with keys of type Vertex and values of type String Initializes a new empty instance of the VertexStringDictionary class Adds an element with the specified key and value to this VertexStringDictionary. The Vertex key of the element to add. The String value of the element to add. Determines whether this VertexStringDictionary contains a specific key. The Vertex key to locate in this VertexStringDictionary. true if this VertexStringDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexStringDictionary contains a specific key. The Vertex key to locate in this VertexStringDictionary. true if this VertexStringDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexStringDictionary contains a specific value. The String value to locate in this VertexStringDictionary. true if this VertexStringDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexStringDictionary. The Vertex key of the element to remove. Gets or sets the String associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexStringDictionary. Gets a collection containing the values in this VertexStringDictionary. A dictionary with keys of type IVertex and values of type Vector2D Initializes a new empty instance of the VertexVector2DDictionary class Adds an element with the specified key and value to this VertexVector2DDictionary. The IVertex key of the element to add. The Vector2D value of the element to add. Determines whether this VertexVector2DDictionary contains a specific key. The IVertex key to locate in this VertexVector2DDictionary. true if this VertexVector2DDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexVector2DDictionary contains a specific key. The IVertex key to locate in this VertexVector2DDictionary. true if this VertexVector2DDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexVector2DDictionary contains a specific value. The Vector2D value to locate in this VertexVector2DDictionary. true if this VertexVector2DDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexVector2DDictionary. The IVertex key of the element to remove. Gets or sets the Vector2D associated with the given IVertex The IVertex whose value to get or set. Gets a collection containing the keys in this VertexVector2DDictionary. Gets a collection containing the values in this VertexVector2DDictionary. A dictionary with keys of type Vertex and values of type Vertex Initializes a new empty instance of the VertexVertexDictionary class Adds an element with the specified key and value to this VertexVertexDictionary. The Vertex key of the element to add. The Vertex value of the element to add. Determines whether this VertexVertexDictionary contains a specific key. The Vertex key to locate in this VertexVertexDictionary. true if this VertexVertexDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexVertexDictionary contains a specific key. The Vertex key to locate in this VertexVertexDictionary. true if this VertexVertexDictionary contains an element with the specified key; otherwise, false. Determines whether this VertexVertexDictionary contains a specific value. The Vertex value to locate in this VertexVertexDictionary. true if this VertexVertexDictionary contains an element with the specified value; otherwise, false. Removes the element with the specified key from this VertexVertexDictionary. The Vertex key of the element to remove. Gets or sets the Vertex associated with the given Vertex The Vertex whose value to get or set. Gets a collection containing the keys in this VertexVertexDictionary. Gets a collection containing the values in this VertexVertexDictionary. IAlgorithm interface. Visited graph object Defines an algorithm that supports vertex distance recording. Add event handlers to the corresponding events. Distance recorder visitor Edge colorzing algorithm Edge color map Defines an algorithm that support edge predecessor recording. Register the predecessor handlers visitor Defines an algorithm that support predecessor recording. Register the predecessor handlers visitor Defines an algorithm that supports time stamping. An algorithm that implement TreeEdge event. Description résumée de IVertexColorizerAlgorithm. Vertex color map The QuickGraph.Concepts.Algorithms namespace contains the interfaces that define algorithm concept and behaviors. A collection of instance enumerable collection Gets an instance A instance. An enumerator Current The QuickGraph.Concepts.Collections defines strongly typed interface for iterating vertices and edges. Event argument that contains a . Builds a new event argument object vertex to store Vertex passed to the event Delegate that handles an event that sends a vertex. Event argument that contains an . Create a new event argument edge to store Edge passed to the event Delegate that handles an edge that sends a vertex. Event argument that contains two . Create a new event argument edge to store Edge passed to the event Delegate that handles an edge that sends a vertex. Edge port enumeration Unknown port Lower left port Lower right port Upper left port Upper right port Middle left port Middle right port Middle top port Middle bottom port Colors used to mark the vertex and edges in the algorithms White color, usually describes describes vertex. Black color, usually describes finished vertex. Gray color Utility class for graph color conversion No constructor Converts GraphColor to System.Drawing.Color graph color to convert alpha component corresponding Color Converts GraphColor to System.Drawing.Color graph color to convert corresponding Color A port represents an anchor between an edge and a vertex Port identification number The name of the port Gets or sets the parent vertex The parent instance An edge with ports attachement Source vertex Target vertex Source port Target port A with . Vertex interface Vertex unique identification number Gets a collection of associated to the vertex A of instance attached to the vertex Defines a graph that can be modified by adding or removing vertices. Clears the graph. Adds a new vertex to the graph. Creates a new instance and adds it to the graph. new instance Remove u from the vertex set of the graph. Note that undefined behavior may result if there are edges remaining in the graph who's target is u. Typically the ClearVertex function should be called first. vertex to clear u is a null reference Returns the vertex provider Remove all edges to and from vertex u from the graph. Inserts the edge (u,v) into the graph, and returns the new edge. This method attemps to insert the edge (u,v) into the graph, returning the inserted edge or a parrallel edge. If the insertion was not successful, the returned edge is null. Remove the edge (u,v) from the graph. If the graph allows parallel edges this remove all occurrences of (u,v). source vertex target vertex Removes the edge e edge to remove Edge not found Returns the vertex provider Description résumée de IMutableBidirectionalGraph. Remove all the out-edges of vertex u for which the predicate pred returns true. vertex edge predicate Remove all the in-edges of vertex u for which the predicate pred returns true. vertex edge predicate Remove all the edges from graph g for which the predicate pred returns true. edge predicate A mutable tree-like graph Adds a child vertex to the tree parent vertex created vertex parent is a null reference if AllowCycles is false and the edge creates a cycle Removes vertex and sub-tree vertex to remove v is a null reference Removing the vertex breaks the graph connectivity Gets a value indicating if the tree allows cycles true if it allows cycle, false otherwise Fusion of and . The QuickGraph.Concepts.Modifications namespace contains the interfaces that implement the graph modification concepts. Description résumée de RandomGraph. Empty constructor Picks a vertex randomly in the vertex list vertex list random generator randomaly chosen vertex Picks an edge randomly in the edge list edge list random generator randomaly chosen edge Generates a random graph Graph to fill number of vertices number of edges random generator self edges allowed A fusion of , Union of , The QuickGraph.Concepts namespace contains all the interfaces that define the different graph concepts. A directed edge of a net which may connect a to a or a to a . Usually represented by an arrow. Gets or sets a value indicating if the instance is a input arc. An arc that leads from an input to a is called an Input Arc of the transition. Gets or sets the instance attached to the . The attached to the . set property, value is a null reference (Nothing in Visual Basic). Gets or sets the instance attached to the . The attached to the . set property, value is a null reference (Nothing in Visual Basic). A High Level Petri Graph. This object is called a Petri Net in honour of Petri's work. In fact, it should be named High Level Petri Graph. Gets a collection of instances. A collection of instances. Gets a collection of instances. A collection of instances. Gets a collection of instances. A collection of instances. A vertex (node) of a Petri Graph. Gets or sets the name of the node A representing the name of the node. A Place in the HLPN framework A is characterized by a set of tokens, called the of the place. The place is typed by the instance. This means only object of assignable to can reside in the place. Usually represented by an ellipses (often circles). A node of a net, taken from the transition kind. Usually represented by a rectangle. A boolean expression associated with the transition A predicate applied to an edge Tests the predicate and returns the result edge to test true if successful e is null A predicate applied to a vertex Tests the predicate and returns the result Vertex to test true if successful v is null A edge generator Returns an edge e=(u,v) Updates edge that has not been created with the provider vertex to update The edge full type. A vertex generator object Generates a new vertex Updates a vertex that has not been created with the provider vertex to update The vertex full type. The QuickGraph.Concepts.Providers namespace contains the interfaces that define the vertex and edge provider classes. A serializable graph structure (graph, vertex or edge) Adds data to serialization info data holder info is null info is not serializing Defines an instance that can be deserialized from a instance. Reads data from serialization info data holder info is a null reference info is serializing A class for adding and retreiving atomic data. Adds a new key-value pair value identifier value key is a null reference Gets a value indicating if the key is in the entry collection key to test true if key is in the dictionary, false otherwise key is a null reference Get a value indicating if the object is serializing true if serializing, false if deserializing Gets or sets a value from a key value identifier value associated with the key. If the key is not present in the data, null value is returned get,set property, key is a null reference Summary description for ISerializableEdgeListGraph. Adds an edge to the graph edge to add Union of the , and interfaces. Add a vertex to the graph vertex to add Summary description for IBidirectionalVertexAndEdgeListGraph. A fusion of and . A graph with clusters. Adds a new cluster to the graph. Added cluster Removes a cluster from the graph cluster to remove g is null Gets an enumerable collection of . Gets the number of clusters Number of clusters. Gets a value indicating wheter the cluster is collapsed true if the cluster is colapsed; otherwize, false. A bidirectional graph that supports filtered traversals An incidence graph that supports filtered traversals Returns the first out-edge that matches the predicate Edge predicate null if not found, otherwize the first Edge that matches the predicate. v or ep is null Returns the collection of out-edges that matches the predicate Edge predicate enumerable colleciton of vertices that matches the criteron v or ep is null Returns the first in-edge that matches the predicate Edge predicate null if not found, otherwize the first Edge that matches the predicate. v or ep is null Returns the collection of in-edges that matches the predicate Edge predicate enumerable colleciton of vertices that matches the criteron v or ep is null A edge list graph that supports filtered traversals Returns the first Edge that matches the predicate Edge predicate null if not found, otherwize the first Edge that matches the predicate. vp is null Returns the collection of edges that matches the predicate Edge predicate enumerable colleciton of vertices that matches the criteron vp is null Union of , and . A vertex list graph that supports filtered traversals Returns the first vertex that matches the predicate vertex predicate null if not found, otherwize the first vertex that matches the predicate. vp is null Returns the collection of vertices that matches the predicate vertex predicate enumerable colleciton of vertices that matches the criteron vp is null A tree-like interface definition This interface defines a DOM like tree node structure. Graphs used with this interface must be directed, not allowing parrallel edges. However, they can be cylic but the in-degree of each vertex must be equal to 1. Gets the parent. current vertex parent vertex if any, null reference otherwize is a null reference has multiple in-edges Gets the first adjacent vertex current vertex first out-vertex is a null reference is a null reference Gets a value indicating if the has out-edges to test true if has out-edges. is a null reference Gets an enumerable collection of child current An enumerable collection of adjacent vertices is a null reference The QuickGraph.Concepts.Traversals namespace contains the interfaces that implement the graph traversal concepts. A small helper class for traversals Returns the first vertex of the enumerable that matches the predicate. enumerable collection of vertex predicate first vertex if any, otherwise a null reference Returns the first vertex of the enumerable enumerable collection of first vertex if any, otherwise a null reference Returns the first vertex of the graph graph first vertex if any, otherwise a null reference Returns the first vertex of the enumerable enumerable collection of first vertex if any, otherwise a null reference Returns the last vertex of the graph graph last vertex if any, otherwise a null reference Returns the first edge of the graph graph first edge if any, otherwise a null reference Returns the first edge of the graph graph first edge if any, otherwise a null reference Returns the last edge of the edge collection edge collection last edge if any, otherwise a null reference Returns the last edge of the graph graph last edge if any, otherwise a null reference Returns the first vertex of the enumerable enumerable collection of first target vertex if any, otherwise a null reference Returns the first source vertex of the enumerable enumerable collection of first source vertex if any, otherwise a null reference Returns the last vertex of the enumerable enumerable collection of last target vertex if any, otherwise a null reference Returns the last source vertex of the enumerable enumerable collection of last source vertex if any, otherwise a null reference A distance recorder visitor Summary description for IEdgeColorizerVisitor. Visitor that records the edge predecessor from a vertex. Not used Records edge predecessor Records end path edges Visitor that records the edge predecessor from a vertex. Predecessor record Finished a vertex exploration Description résumée de ITimeStamperVisitior. Tree edge visitor A vertex colorizer visitor The QuickGraph.Concepts.Visitors namespace contains interfaces that define "classic" visitors. An edge that can hold a value A graph edge This class represents a directed edge. It links a source to a target . The source and target vertices can be accessed as properties. This sample shows a basic usage of an edge: Vertex v; // vertex foreach(Edge e in v.InEdges) { Console.WriteLine("{0} -> {1}", e.Source.GetHashCode(), e.Target.GetHashCode() ); } Empty Method. Used for serialization. Builds an edge from source to target unique identification number Source vertex Target vertex Source or Target is null Compares two edges Edge to compare obj is not of type Edge. Converts to string. Converts to string by returning the formatted ID Hash code, using ID Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Edge unique identification number Source vertex Source vertex id, for serialization Target Vertex Source vertex id, for serialization Default constructor This constructors defaults the value to null unique edge identification number source vertex target vertex associated property value A vertex that can hold a value A Graph Vertex. Default constructor. Used for serialization. Builds a new vertex Compares two vertices vertex to compare obj is not of type Vertex Converts to string by returning the ID. Converts to string by returning the formatted ID Hash code. ID used as identification number. Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Unique identification number Custom constructor. Used for serialization. Default constructor unique vertex identification number This constructors defaults the value to null Vertex associated property value Exception throwed when not finding a vertex. Build a new exception vertex name Exception throwed when not finding a vertex. Construct an instance. Constructs an empty exception Creates an exception with a message and an inner exception. Error message Inner exception Not a acyclic graph execption Default consturctor Constructor with message message Multiple In Edge exception vertex name The QuickGraph.Exceptions namespace contains graph related exceptions. Negative cycle execption Default consturctor Constructor with message message Not a acyclic graph execption Default consturctor Constructor with message message ParrallelEdgeNotAllowedException. Default construcotr Constructor with message Additional message Exception throwed when not finding a vertex. Build a new exception vertex name Exception throwed when not finding a vertex. Build a new exception vertex name Constructs an empty exception Creates an exception with a vertex name and an inner exception. Vertex name Inner exception A vertex with a name Empty constructor. Used internally Constructs a new named edge Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Vertex name A vertex with a name Empty constructor Constructor Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Vertex name Summary description for NameEqualVertexPredicate. The QuickGraph namespace contains default vertex and edge implementations. QuickGraph Library License
            Copyright (c) 2004 Jonathan de Halleux
            
            This software is provided 'as-is', without any express or implied warranty. 
            
            In no event will the authors be held liable for any damages arising from 
            the use of this software.
            Permission is granted to anyone to use this software for any purpose, 
            including commercial applications, and to alter it and redistribute it 
            freely, subject to the following restrictions:
            
            1. The origin of this software must not be misrepresented; 
            you must not claim that you wrote the original software. 
            If you use this software in a product, an acknowledgment in the product 
            documentation would be appreciated but is not required.
            
            2. Altered source versions must be plainly marked as such, and must 
            not be misrepresented as being the original software.
            
            3. This notice may not be removed or altered from any source 
            distribution.
            	
            QuickGraph Library HomePage: http://www.mbunit.com
            Author: Jonathan de Halleux
            
A predicate that filter edge connecting two vertices Constructs a new predicate source vertex target vertex underlying graph Test if edge connects source and target vertex edge to test true if e connects source and target Edge predicate Applies predicates to an edge, to it's source and to it's target. Given ep, the edge predicate, and vp, the vertex predicate, the predicate result is computed, for a given edge e, as: ep(e) && vp(e.Source) && vp(e.Target) Constructs a new edge predicate the edge predicate object the vertex predicate object ep or vp are null Applies the edge predicate to e and to it's vertices? edge to test EdgePredicate(e) && VertexPredicate(e.Source) && VertexPredicate(e.Target) e is null Predicate for checking that a vertex is in a collection Creates a predicate that checks if vertices are in list of vertices list is a null reference Gets a value indicating if is in the collection. vertex to test true if is in the collection, false otherwize Predicate for checking that a vertex is in a collection Creates a predicate that checks if vertices are in dictionary of vertices dictionary is a null reference Gets a value indicating if is in the collection. vertex to test true if is in the collection, false otherwize In edge predicate Applies predicates to an edge and to it's source. Given ep, the edge predicate, and vp, the vertex predicate, the predicate result is computed, for a given edge e, as: ep(e) && vp(e.Source) Construct a new predicate. the edge predicate the source vertex predicate ep or vp is null Applies the edge predicate to e and to it's source edge to test EdgePredicate(e) and VertexPredicate(e.Source) e is null Predicate that checks if a edge is an edge Predicate that checks if a edge is an inedge Predicate that always returns true This predicate returns true for any edge. Always returns true. Predicate that always returns true This predicate returns true for any vertex. Always returns true. The QuickGraph.Predicates namespace contains predicate implementations for filtered graphs. Predicates can be used to filter the edge set or the vertex set of graphs. A static helper class, , is provided to help the instanciation of predicates. An predicate that checks that the edge is not in both circuit and temporary circuit. Construct an edge that filters out edge in circuit and temporary circuit Test method Edge circuit Temporary circuit Not operator to predicate Constructs a new . predicate to invert Out-edge predicate Applies predicates to an edge and to it's target vertex. Given ep, the edge predicate, and vp, the vertex predicate, for a given edge e, the predicate result is computed as: ep(e) && vp(e.Target) Construct a new predicate. the edge predicate the source vertex predicate ep or vp is null Applies the edge predicate to e and to it's target vertex edge to test EdgePredicate(e) and VertexPredicate(e.Target) e is null Static helper class for creating predicates This lets you quickly use the built-in predicates of QuickGraph. Returns a edge predicate that always returns true. Returns a vertex predicate that always returns true. Checks ep(e) && vp(e.Source) && vp(e.Target) predicate to apply to edge predicate to apply to edge source and target Creates a predicate that check the edge and the edge source edge predicate to apply to the edge vertex predicate to apply to the edge source in-edge predicate Creates a predicate that check the edge and the edge target edge predicate to apply to the edge vertex predicate to apply to the edge target out-edge predicate Creates a predicate that checks wheter an edge is adjacent to a given vertex. vertex to test is adjacent predicate Creates a predicate that checks if an edge is an in-edge of a vertex. vertex to check in-edge predicate Creates a predicate that checks if an edge is an out-edge of a vertex. vertex to check out-edge predicate Check if a vertex is equal to v vertex to test predicate Check if vertex is in list Negates a predicate Source vertex prodicate Predicate that test if an edge is residual Given a capacity map, the predicate returns true if the edge capacity is positive: 0 < Capacities[e] Constructor. Residual Edge capacities map residualCapacities is null Test if edge e has a positive residual capacity edge to test 0 < ResidualCapacities[e] e is null Residual capacities map Predicate that test if an edge's reverse is residual Given a capacity map and reversed edge map, the predicate returns true if the reversed edge's capacity is positive: 0 < Capacities[ReversedEdges[e]] Constructor. Residual Edge capacities map Reversed Edge map residualCapacities is null Test if edge e has a positive residual capacity edge to test 0 < ResidualCapacities[e] e is null Residual capacities map Reversed edges map A predicate to test if a is a root vertex (no in-edges). This predicate can be used to iterate over the root vertices of a graph. Create the predicate over . graph to visit Tests if the vertex is a root vertex to test true is the vertex has no in-edges, false otherwise A predicate to test if a is a root vertex (no in-edges). This predicate can be used to iterate over the root vertices of a graph. Create the predicate over . graph to visit Tests if the vertex is a root vertex to test true is the vertex has no in-edges, false otherwise Predicate that checks to two vertex are equal Constructor reference vertex u is null Test if v == u vertex to test v == u Reference vertex Custom edge provider Creates a new edge Updates an edge that has not been created with the provider vertex to update Updates vertex Returns typeof(CustomEdge) Default custom vertex provider Creates a new vertex Updates a vertex that has not been created with the provider vertex to update Updates vertex Returns typeof(CustomVertex) Default edge provider Creates a new edge Updates an edge that has not been created with the provider edge to update Updates vertex Edge type. Named edge provider Creates a new edge Updates an edge that has not been created with the provider edge to update Updates vertex Returns typeof(NamedEdge) Default custom vertex provider Creates a new vertex Updates a vertex that has not been created with the provider vertex to update Updates vertex Returns typeof(NamedVertex) The QuickGraph.Providers contains providers for the default vertex and edge implementations. Default custom edge provider Creates a new edge Updates a edge that has not been created with the provider edge to update Returns typeof(CustomEdge) Default custom vertex provider Creates a new vertex Updates a vertex that has not been created with the provider vertex to update Returns typeof(CustomVertex) Vertex provider Creates a new vertex Updates a vertex that has not been created with the provider vertex to update Updates vertex Vertex type. The QuickGraph.Serialization.GraphML contains the classes that map the GraphML schema. Graph serializer to the GraphML format. This object serializes outputs to the GraphML (http://graphml.graphdrawing.org/) format. The following example takes a graph and serializes it to GraphML format to the Console window. All instance are serializable ( implements this type). using System.Xml; using QuickGraph.Serialization; ... // create human readable xml writer XmlTextWriter writer = new XmlTextWriter(Console.Out); writer.Formatting = Formatting.Indented; // the graph to serialize ISerializableVertexAndEdgeListGraph g = ...; // create serializer GraphMLGraphSerializer ser = new GraphMLGraphSerializer(); // serialize graph ser.Serialize(writer,g); Default constructor Serializes g to xml xml writer graph to serialize writer or g are null g vertex or edge does not implement . Serializes the filtered graph g to xml xml writer "base" graph of g graph to serialize writer or g are null g vertex or edge does not implement . Formats the vertex ID number vertex v.ID formatted Formats the edge ID number edge e.ID formatted Returns qualifed type name of o Created vertices table Created vertices table A data holder class Creates a new data holder class. true if it is used for serialization, false otherwize Adds a new key-value pair value identifier value key Gets a value indicating if the key is in the data entries. key to test true if key is in the data collection, false otherwise True if serializing Number of key-value pair in the data bag. Gets or sets a data entry in the graph info collection set property,set a value while the graph info is deserializing get property, the requested key is not found Base class for Graph serializers. This example takes an AdjacencyGraph and serializes it to GraphML format: // getting xml writer XmlTextWriter writer = new XmlTextWriter(Console.Out); writer.Formatting = Formatting.Indented; // gettin graph AdjacencyGraph g = ...; GraphSerializer ser = new GraphMlSerializer(); // serialize to GraphML ser.Serialize(writer,g); Default constructor Serializes g to xml xml writer graph to serialize writer or g are null g vertex or edge does not implement . Serializes the filtered graph g to xml xml writer "base" graph of g graph to serialize writer or g are null g vertex or edge does not implement . Deserializes data from Xml stream. xml stream deserialized data Create the graph element and stores graph level data. xml writer "base" graph of g graph to serialize Closes the graph element. xml writer Writes a vertex element and it's custom data stored in info. xml writer vertex to store vertex custom data Writes a vertex element and it's custom data stored in info. xml writer edge to store edge custom data Reads graph data and creates new graph instance xml reader opened on graph data created graph instance Reads vertex or edge data Formats the edge ID number edge e.ID formatted Parses vertex id of the form 'vdd' where dd is the id number id identifier id number Parses edge id of the form 'edd' where dd is the id number id identifier id number Formats the vertex ID number vertex v.ID formatted Returns qualifed type name of o Moves reader to element with name = name Moves reader to element with name = name Created vertices table Created vertices table Graph serializer to the GXL format. This object serializes outputs to the GXL (http://www.gupro.de/GXL/) format. Create the graph element and stores graph level data. xml writer "base" graph of g graph to serialize Closes the graph element. xml writer Writes a vertex element and it's custom data stored in info. xml writer vertex to store vertex custom data Writes a vertex element and it's custom data stored in info. xml writer edge to store edge custom data Reads graph data and creates new graph instance xml reader opened on graph data created graph instance Reads vertex or edge data Writes custom info to GraphMl xml writer custom data Reads custom info from GraphMl xml reader custom data Summary description for SerializableEdge. Default constructor Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Gets the dictionary of key-and-value pairs Data entries Summary description for SerializableVertex. Default constructor Adds nothing to serialization info data holder info is null info is not serializing Reads no data from serialization info data holder info is null info is serializing Gets the dictionary of key-and-value pairs Data entries A wrapper for serializings graphs This class lets you serialize to xml your graphs, even if you are using custom vertex and edges. In this example, a AdjacencyGraph is created with custom providers. It is serialized and deserialized to xml: AdjacencyGraph g = new AdjacencyGraph( new NamedVertexProvider(), new NamedEdgeProvider(), true ); NamedEdge u = (NamedVertex)Graph.AddVertex(); u.Name = "u"; NamedEdge v = (NamedVertex)Graph.AddVertex(); v.Name = "v"; NamedEdge w = (NamedVertex)Graph.AddVertex(); w.Name = "w"; NamedEdge uv = (NamedEdge)Graph.AddEdge(u,v); uv.Name = "uv"; NamedEdge uw = (NamedEdge)Graph.AddEdge(u,w); uw.Name = "uw"; StringWriter sw = new StringWriter(); XmlTextWriter writer = new XmlTextWriter(sw); writer.Formatting = Formatting.Indented; GraphSerializer ser = new GraphSerializer(Graph); ser.WriteXml(writer); Console.WriteLine(sw.ToString()); StringReader sr = new StringReader(sw.ToString()); XmlTextReader reader = new XmlTextReader(sr); ser.ReadXml(reader); sw = new StringWriter(); writer = new XmlTextWriter(sw); writer.Formatting = Formatting.Indented; ser.WriteXml(writer); Console.WriteLine(sw.ToString()); Empty constructor Constructs a serializer around g graph to serialize g is null Serializes graph to xml. Serializes the graph to xml opened xml writer The edge and vertex class must be serializable. Reads graph data from Xml and create the graph object. Deserializes a graph from Xml. opened xml reader deserialized graph Serialized graph