![]() |
fpmas 1.6
|
#include <graph_builder.h>
Public Member Functions | |
DistributedNodeBuilder (std::size_t node_count, fpmas::api::communication::MpiCommunicator &comm) | |
std::size_t | nodeCount () override |
std::size_t | localNodeCount () override |
![]() | |
virtual std::size_t | localNodeCount ()=0 |
virtual DistributedNode< T > * | buildDistantNode (DistributedId id, int location, DistributedGraph< T > &graph)=0 |
![]() | |
virtual std::size_t | nodeCount ()=0 |
virtual DistributedNode< T > * | buildNode (DistributedGraph< T > &graph)=0 |
Protected Attributes | |
std::size_t | local_node_count |
Base implementation of the DistributedNodeBuilder.
This is not a final implementation: this class must be extended to implement buildNode() and buildDistantNode().
T | graph data type |
|
inline |
DistributedNodeBuilder constructor.
The count of nodes to be built on each process (localNodeCount()) is initialized so that each process must (approximately) build the same amount of nodes.
node_count | total node count that must be generated on all processes |
comm | MPI communicator |
|
inlineoverridevirtual |
Alias for localNodeCount()
Implements fpmas::api::graph::NodeBuilder< T >.
|
inlineoverridevirtual |
Returns the count of nodes that the DistributedNodeBuilder can generate on the current process.
The value returned by this function is expected to be updated while buildNode() calls are performed.
Implements fpmas::api::graph::DistributedNodeBuilder< T >.
|
protected |
Current count of nodes that can be generated on the local process.