The e4Graph C++ binding contains two groups of classes: elements and
iterators. Elements, such as e4_Node, represent
persistent elements in a storage. Iterators, such as e4_VertexVisitor,
allow the user program to iterate over a selection of vertices in a storage.
e4_RefCount | Common base class for e4_Storage, e4_Node, and e4_Vertex. This class provides reference counting facilities that automate the storage management associated with using the e4Graph C++ binding. This class also provides a mechanism for safe type-casting to derived classes such as e4_Node. |
e4_Storage | Derived from e4_RefCount. Stores persistent representations of e4_Node and e4_Vertex. A single storage can contain any number of nodes and fields. |
e4_Node | Derived from e4_RefCount. An instance of this class represents a node in persistent storage. |
e4_Vertex | Derived from e4_RefCount. An instance of this class represents an edge (or vertex in e4Graph terminology) originating in a node. Vertices are ordered by rank within a node. Vertices have a name, a type and a value. |
e4_StorageVisitor | Iterates over all currently open storages in an implementation dependent order. |
e4_NodeVisitor | Iterates over all nodes within a storage in an implementation dependent order. |
e4_VertexVisitor | Iterates over a collection of vertices within a storage according to flexible selection criteria. For example, this class allows the user to visit all vertices within a node or filter out vertices that do not have a specific name or value type. |