Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property Struct Reference

#include <adjacency_list.hpp>

Collaboration diagram for boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property:

Public Member Functions

 lazy_add_vertex_with_property (adjacency_list &self, const vertex_property_type &property)
 Construct a lazy request to add a vertex. More...
 
 lazy_add_vertex_with_property (const lazy_add_vertex_with_property &other)
 Copying a lazy_add_vertex_with_property transfers the responsibility for adding the vertex to the newly-constructed object. More...
 
 ~lazy_add_vertex_with_property ()
 If the vertex has not yet been added, add the vertex but don't wait for a reply. More...
 
 operator vertex_descriptor () const
 Returns commit(). More...
 
vertex_descriptor commit () const
 

Protected Attributes

adjacency_listself
 
vertex_property_type property
 
bool committed
 

Constructor & Destructor Documentation

template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::lazy_add_vertex_with_property ( adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS > &  self,
const vertex_property_type property 
)
inline

Construct a lazy request to add a vertex.

template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::lazy_add_vertex_with_property ( const lazy_add_vertex_with_property &  other)
inline

Copying a lazy_add_vertex_with_property transfers the responsibility for adding the vertex to the newly-constructed object.

template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::~lazy_add_vertex_with_property ( )

If the vertex has not yet been added, add the vertex but don't wait for a reply.

If this vertex has already been created or will be created by someone else, or if someone threw an exception, we will not create the vertex now.

Add the vertex locally.

Ask the owner of this new vertex to add the vertex. We don't need a reply.

References boost::add_vertex(), boost::detail::parallel::owner(), and boost::graph::distributed::send().

Member Function Documentation

template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::vertex_descriptor boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::commit ( ) const
template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::operator vertex_descriptor ( ) const
inline

Returns commit().

Member Data Documentation

template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
bool boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::committed
mutableprotected
template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
vertex_property_type boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::property
protected
template<typename OutEdgeListS , typename ProcessGroup , typename InVertexListS , typename InDistribution , typename DirectedS , typename VertexProperty , typename EdgeProperty , typename GraphProperty , typename EdgeListS >
adjacency_list& boost::adjacency_list< OutEdgeListS, distributedS< ProcessGroup, InVertexListS, InDistribution >, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS >::lazy_add_vertex_with_property::self
protected

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