3#include "MpiStructBuilder.h"
10 MpiStructBuilder::MpiStructBuilder()
18 void MpiStructBuilder::setBase(
void* objectAddress)
20 base_ = MPI::Get_address(objectAddress);
26 void MpiStructBuilder::addMember(
void* memberAddress, MPI::Datatype type,
int count)
28 addresses_[nMember_] = MPI::Get_address(memberAddress);
29 types_[nMember_] = type;
30 counts_[nMember_] = count;
39 void MpiStructBuilder::commit(MPI::Datatype& mpiType)
41 for (
int i = 0; i < nMember_; ++i) {
42 addresses_[i] = addresses_[i] - base_;
45 MPI::Datatype::Create_struct(nMember_, counts_, addresses_, types_);
File containing preprocessor macros for error handling.
Utility classes for scientific computation.