1 #include <libmesh/parallel.h> 2 #include <libmesh/null_output_iterator.h> 21 CPPUNIT_TEST_SUITE_END();
38 std::vector<processor_id_type> vals;
40 std::vector<std::string> send(1);
42 send[0].assign(
"Hello");
44 send[0].assign(
"Goodbye");
47 ((
void *)(NULL), send.begin(), send.end(),
56 std::vector<processor_id_type> vals;
58 std::vector<std::string> send(1);
60 const unsigned int dest_rank =
62 const unsigned int source_rank =
66 std::ostringstream os;
72 (dest_rank, (
void *)(NULL), send.begin(), send.end(),
73 source_rank, (
void *)(NULL),
83 std::vector<processor_id_type> vals;
85 std::vector<std::string> send(1), recv;
88 const unsigned int dest_rank =
90 const unsigned int source_rank =
94 std::ostringstream os;
100 (dest_rank, (
void *)(NULL), send.begin(), send.end(),
101 source_rank, (
void *)(NULL),
102 std::back_inserter(recv),
105 CPPUNIT_ASSERT_EQUAL(recv.size(), std::size_t(1));
109 std::ostringstream os;
114 CPPUNIT_ASSERT_EQUAL(recv[0], check);
libMesh::Parallel::Communicator * TestCommWorld
processor_id_type rank() const
void allgather_packed_range(Context *context, Iter range_begin, const Iter range_end, OutputIter out, std::size_t approx_buffer_size=1000000) const
The libMesh namespace provides an interface to certain functionality in the library.
void testNullSendReceive()
processor_id_type size() const
void testContainerSendReceive()
void testNullSendReceive()
A do-nothing class for templated methods that expect output iterator arguments.
void testContainerSendReceive()
void send_receive_packed_range(const unsigned int dest_processor_id, const Context1 *context1, RangeIter send_begin, const RangeIter send_end, const unsigned int source_processor_id, Context2 *context2, OutputIter out, const T *output_type, const MessageTag &send_tag=no_tag, const MessageTag &recv_tag=any_tag, std::size_t approx_buffer_size=1000000) const
CPPUNIT_TEST_SUITE_REGISTRATION(PackedRangeTest)