Click or drag to resize

IdGraph Class

A Graph implementation which wraps another Graph implementation, enabling custom element IDs even for those graphs which don't otherwise support them. The base Graph must be an instance of KeyIndexableGraph. It *may* be an instance of IIndexableGraph, in which case its indices will be wrapped appropriately. It *may* be an instance of TransactionalGraph, in which case transaction operations will be passed through. For those graphs which support vertex indices but not edge indices (or vice versa), you may configure idInnerTinkerGrapĥ to use custom IDs only for vertices or only for edges.
Inheritance Hierarchy
SystemObject
  Frontenac.Blueprints.Util.Wrappers.IdIdGraph

Namespace:  Frontenac.Blueprints.Util.Wrappers.Id
Assembly:  VelocityGraph (in VelocityGraph.dll) Version: 10.1.0.0 (10.1)
Syntax
public class IdGraph : IKeyIndexableGraph, IGraph, 
	IWrapperGraph, IIndexableGraph, ITransactionalGraph

The IdGraph type exposes the following members.

Constructors
  NameDescription
Public methodIdGraph(IKeyIndexableGraph)
Adds custom ID functionality to the given graph, supporting both custom vertex IDs and custom edge IDs.
Public methodIdGraph(IKeyIndexableGraph, Boolean, Boolean)
Adds custom ID functionality to the given graph, supporting either custom vertex IDs, custom edge IDs, or both.
Top
Properties
  NameDescription
Public propertyEdgeIdFactory
When edges are created using null IDs, the actual IDs are chosen based on this factory.
Public propertyFeatures
Public propertyVertexIdFactory
When edges are created using null IDs, the actual IDs are chosen based on this factory.
Top
Methods
Fields
  NameDescription
Public fieldStatic memberId
Top
Extension Methods
  NameDescription
Public Extension MethodAddEdge
Add an edge to the graph with specified id and provided properties.
(Defined by GraphHelpers.)
Public Extension MethodAddUniqueVertex
Add a vertex to a graph only if no other vertex in the provided Index is indexed by the property key/value pair. If a vertex already exists with that key/value pair, return the pre-existing vertex.
(Defined by IndexableGraphHelpers.)
Public Extension MethodAddVertex
Add a vertex to the graph with specified id and provided properties.
(Defined by GraphHelpers.)
Public Extension MethodCopyGraph
Copy the vertex/edges of one graph over to another graph. The id of the elements in the from graph are attempted to be used in the to graph. This method only works for graphs where the user can control the element ids.
(Defined by GraphHelpers.)
Public Extension MethodCreateTinkerGraph (Defined by GraphHelpers.)
Public Extension MethodGraphString (Defined by StringFactory.)
Public Extension MethodLoadGml (Defined by GraphHelpers.)
Public Extension MethodLoadGraphml (Defined by GraphHelpers.)
Public Extension MethodLoadGraphson (Defined by GraphHelpers.)
Public Extension MethodReIndexElementsT
For those graphs that do no support automatic reindexing of elements when a key is provided for indexing, this method can be used to simulate that behavior. The elements in the graph are iterated and their properties (for the provided keys) are removed and then added. Be sure that the key indices have been created prior to calling this method so that they can pick up the property mutations calls. Finally, if the graph is a TransactionalGraph, then a 1000 mutation buffer is used for each commit.
(Defined by KeyIndexableGraphHelpers.)
Public Extension MethodSaveDotNet (Defined by GraphHelpers.)
Public Extension MethodSaveGml (Defined by GraphHelpers.)
Public Extension MethodSaveGraphml (Defined by GraphHelpers.)
Public Extension MethodSaveGraphson (Defined by GraphHelpers.)
Top
See Also