Reference documentation for deal.II version 9.3.3
|
Public Types | |
using | T1 = unsigned int |
using | T2 = unsigned int |
Public Member Functions | |
ConsensusAlgorithmsProcessTargets (const std::vector< unsigned int > &target) | |
virtual void | answer_request (const unsigned int other_rank, const std::vector< T1 > &, std::vector< T2 > &) override |
virtual std::vector< unsigned int > | compute_targets () override |
std::vector< unsigned int > | get_result () |
virtual void | create_request (const unsigned int other_rank, std::vector< unsigned int > &send_buffer) |
virtual void | prepare_buffer_for_answer (const unsigned int other_rank, std::vector< unsigned int > &recv_buffer) |
virtual void | read_answer (const unsigned int other_rank, const std::vector< unsigned int > &recv_buffer) |
Private Attributes | |
const std::vector< unsigned int > & | target |
std::vector< unsigned int > | sources |
A re-implementation of compute_point_to_point_communication_pattern using a ConsensusAlgorithm.
using Utilities::MPI::ConsensusAlgorithmsProcessTargets::T1 = unsigned int |
using Utilities::MPI::ConsensusAlgorithmsProcessTargets::T2 = unsigned int |
|
inline |
|
inlineoverridevirtual |
Prepare the buffer where the payload of the answer of the request to the process with the specified rank is saved in.
[in] | other_rank | rank of the process |
[in] | buffer_recv | received payload (optional) |
[out] | request_buffer | payload to be sent as part of the request (optional) |
Reimplemented from Utilities::MPI::ConsensusAlgorithms::Process< unsigned int, unsigned int >.
|
inlineoverridevirtual |
Simply return the user-provided list.
Implements Utilities::MPI::ConsensusAlgorithms::Process< unsigned int, unsigned int >.
|
inline |
|
virtualinherited |
Add to the request to the process with the specified rank a payload.
[in] | other_rank | rank of the process |
[out] | send_buffer | data to be sent part of the request (optional) |
|
virtualinherited |
Prepare the buffer where the payload of the answer of the request to the process with the specified rank is saved in. The most obvious task is to resize the buffer, since it is empty when the function is called.
[in] | other_rank | rank of the process |
[out] | recv_buffer | data to be sent part of the request (optional) |
|
virtualinherited |
Process the payload of the answer of the request to the process with the specified rank.
[in] | other_rank | rank of the process |
[in] | recv_buffer | data to be sent part of the request (optional) |
|
private |
|
private |