STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::lazy_graph_view_container< PG > Class Template Reference

Container for deferring pGraph operations which can be flushed later. Used by the lazy_graph_view to defer commits, as well as apply them to the appropriate pGraph at a suitable time. More...

Public Member Functions

 lazy_graph_view_container (lazy_graph_view_container *other)
 
 lazy_graph_view_container (lazy_graph_view_container const &other)
 
 lazy_graph_view_container (container_type *cont)
 
void flush (void)
 Flushes out all pending requests to the pGraph. More...
 
void add_vertex (void)
 Adds a vertex to the pGraph with the given property. More...
 
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...
 
size_t size (void) const
 Returns the size of the container. More...
 
domain_type domain (void) const
 

Public Types

typedef PG container_type
 
typedef PG::value_type value_type
 
typedef infinite domain_type
 
typedef domain_type::index_type index_type
 
typedef index_type gid_type
 
typedef value_type reference
 
typedef const value_type const_reference
 
typedef PG::vertex_property vertex_property
 
typedef PG::vertex_descriptor vertex_descriptor
 

Detailed Description

template<typename PG>
class stapl::lazy_graph_view_container< PG >

Container for deferring pGraph operations which can be flushed later. Used by the lazy_graph_view to defer commits, as well as apply them to the appropriate pGraph at a suitable time.

Template Parameters
PGThe type of pGraph to which the deferred commits will be applied.

Member Function Documentation

◆ flush()

template<typename PG >
void stapl::lazy_graph_view_container< PG >::flush ( void  )

Flushes out all pending requests to the pGraph.

◆ add_vertex() [1/3]

template<typename PG >
void stapl::lazy_graph_view_container< PG >::add_vertex ( void  )

Adds a vertex to the pGraph with the given property.

Parameters
vpProperty of the vertex.
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/3]

template<typename PG >
void stapl::lazy_graph_view_container< PG >::add_vertex ( vertex_property const &  vp)

Adds a vertex to the pGraph with the given property.

Parameters
vpProperty of the vertex.
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() [3/3]

template<typename PG >
void stapl::lazy_graph_view_container< PG >::add_vertex ( vertex_descriptor const &  vd,
vertex_property const &  vp 
)

Adds a vertex to the pGraph with the given property and descriptor.

Parameters
giddescriptor of the vertex.
vpProperty 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()

template<typename PG >
void stapl::lazy_graph_view_container< PG >::delete_vertex ( vertex_descriptor const &  vd)

Deletes a vertex from the pGraph with the given descriptor. This method is asynchronous.

Parameters
giddescriptor of the vertex. Stores the request for future commit.

◆ migrate()

template<typename PG >
void stapl::lazy_graph_view_container< PG >::migrate ( vertex_descriptor const &  vd,
size_t  location 
)

Stores a request for migration of given vertex for future commit.

Parameters
vdThe descriptor of the vertex to be migrated.
locationThe location where the vertex needs to be migrated.

◆ size()

template<typename PG >
size_t stapl::lazy_graph_view_container< PG >::size ( void  ) const

Returns the size of the container.

The size of this container is infinity.


The documentation for this class was generated from the following file: