Container for an ordered log of commits, which can be flushed later. Used by the lazy_graph_view_container to store log of deferred commits, as well as apply them to the appropriate pGraph at a suitable time.
More...
|
| graph_commit_log (graph_commit_log const &other) |
|
| graph_commit_log (PG *cont) |
|
| ~graph_commit_log (void) |
| Destructor also flushes the pending commits to the pGraph.
|
|
void | add_vertex (vertex_property const &vp) |
| Adds a vertex to the pGraph with the given property. More...
|
|
void | add_vertex (vertex_descriptor const &vd, vertex_property const &vp) |
| Adds a vertex to the pGraph with the given property and descriptor. More...
|
|
void | delete_vertex (vertex_descriptor const &vd) |
| Deletes a vertex from the pGraph with the given descriptor. This method is asynchronous. More...
|
|
void | migrate (vertex_descriptor const &vd, size_t location) |
| Stores a request for migration of given vertex for future commit. More...
|
|
void | flush (void) |
| Flushes out all pending requests to the pGraph.
|
|
|
typedef PG::vertex_property | vertex_property |
|
typedef PG::vertex_descriptor | vertex_descriptor |
|
template<typename PG>
class stapl::graph_commit_log< PG >
Container for an ordered log of commits, which can be flushed later. Used by the lazy_graph_view_container to store log of deferred commits, as well as apply them to the appropriate pGraph at a suitable time.
- Template Parameters
-
PG | The type of pGraph to which the deferred commits will be applied. |
Stores pending add/delete/migrate requests to the pGraph in separate buffers, as well as a buffer that stores ordering information for each pending request. On each location, the pending requests are flushed in the order in which they were added.
◆ add_vertex() [1/2]
Adds a vertex to the pGraph with the given property.
- Parameters
-
- Returns
- vertex_descriptor of the added vertex.
Vertex-descriptor is assigned automatically by the pGraph. This method is asynchronous. The vertex is added at the calling location, which is also the home location for the vertex. Stores the request for future commit.
◆ add_vertex() [2/2]
Adds a vertex to the pGraph with the given property and descriptor.
- Parameters
-
gid | descriptor of the vertex. |
vp | Property of the vertex. |
- Returns
- vertex_descriptor of the added vertex.
This method is asynchronous. The vertex is added at the calling location. An async is sent to the home-location of the vertex. Stores the request for future commit.
◆ delete_vertex()
Deletes a vertex from the pGraph with the given descriptor. This method is asynchronous.
- Parameters
-
gid | descriptor of the vertex. Stores the request for future commit. |
◆ migrate()
Stores a request for migration of given vertex for future commit.
- Parameters
-
vd | The descriptor of the vertex to be migrated. |
location | The location where the vertex needs to be migrated. |
The documentation for this class was generated from the following file: