|
EGraphException
|
Base exception class for graph exceptions
|
|
TGCustomGraph
|
Encapsulates a graph or network (not the TeeChart type of graphs). Graphs are made up of nodes ( GGraph.TGGraphNode class) and edges ( GGraph.TGGraphEdge class) connecting the nodes. Graphs may be directed or undirected.
The class manages the edges and nodes and provides routines for determining topological ordering, critical paths, and other graph operations. The TGCustomGraph class is the base abstract class for graphs, the GGraph.TGLabelGraph and GGraph.TGGraph classes are descendants of this class and actually implement all the functionality.
|
|
TGGraph
|
Encapsulates a graph or network (not the TeeChart type of graphs).
Graphs are made up of nodes ( GGraph.TGGraphNode class) and edges ( GGraph.TGGraphEdge class) connecting the nodes. Graphs may be directed or undirected. The TGGraph class manages the nodes as a list and allows quick access to all the nodes based on indices. If you need a fast graph where you can have duplicately named nodes, use this class. The GGraph.TGLabelGraph class manages the nodes as a hash table and allows quick access to nodes by their caption.
The TGLabelGraph class inherits all the functionality of its GGraph.TGCustomGraph class ancestor, which allows you to add and remove nodes, get topological sorts and shortest paths, and other graph operations.
|
|
TGGraphEdge
|
The TGGraphEdge class connects nodes ( GGraph.TGGraphNode objects and descendants) in a graph. The TGGraphEdge class is an undirected edge by its nature. The GGraph.TGCustomGraph class defines whether the edge is directed or undirected. In undirected graphs, the same edge appears in both the FromNode and ToNode edge lists. The FromNode is responsible for managing the edge's memory (freeing it).
|
|
TGGraphEdges
|
Defines a list of graph edges.
|
|
TGGraphEdgesEnumerator
|
Enumeration class for graph edges
|
|
TGGraphNode
|
Defines the base nodes in a graph ( GGraph.TGCustomGraph class). A GGraph.TGGraphEdge object or descendant connects the nodes.
The TGGraphNode class provides methods and properties for managing the list of edges out from the node, the InDegree (how many edges coming to the node), and the OutDegree (how many edges going out of the node). The node manages the memory of the edges from the node as well. The node may be labelled using its Caption property, depending on the graph the caption may have to be unique.
|
|
TGGraphNodes
|
Defines a list of graph nodes.
|
|
TGGraphNodesEnumerator
|
Enumeration class for graph nodes
|
|
TGLabelGraph
|
Encapsulates a graph or network (not the TeeChart type of graphs). Graphs are made up of nodes ( GGraph.TGGraphNode class) and edges ( GGraph.TGGraphEdge class) connecting the nodes. Graphs may be directed or undirected.
The TGLabelGraph class manages the nodes as a hash table and allows quick access to nodes based on their unique name. If you need a graph where you often access the nodes based on their name, use this class. The GGraph.TGGraph class manages the nodes as a list and allows duplicately named nodes.
The TGLabelGraph class inherits all the functionality of its GGraph.TGCustomGraph class ancestor, which allows you to add and remove nodes, get topological sorts and shortest paths, and other graph operations.
Note
|
Nodes must have a unique name ( Caption property) with this graph class.
|
|
|
TGLinkedGraphNode
|
Defines a graph node that tracks which nodes are pointing to this node. Unlike the base node which only tracks which nodes it is pointing to.
|
|
TGraphWeight
|
Represents type TGraphWeight.
|
|
TWeightedEdge
|
The TWeightedEdge class is a descendant of the GGraph.TGGraphEdge class, it represents an edge in a weighted graph.
The TWeightedEdge class connects nodes ( GGraph.TGGraphNode objects and descendants) in a graph and contains a weight (or cost such as for a travelling salesman problem). The TWeightedEdge class is an undirected edge by its nature. The GGraph.TGCustomGraph class defines whether the edge is directed or undirected. In undirected graphs, the same edge appears in both the FromNode and ToNode edge lists. The FromNode is responsible for managing the edge's memory (freeing it).
|
|
TWeightedNode
|
The TWeightedNode class descends from the GGraph.TGGraphNode class and defines a node in a graph ( GGraph.TGCustomGraph class) which may have a weight (or cost, etc). A GGraph.TGGraphEdge object or descendant ( GGraph.TWeightedEdge class) connects the nodes. It also contains structures and methods for helping the graph with path-type algorithms.
|