29 inline MPI::Errhandler
30 MPI::Win:: Get_errhandler()
const
33 MPI_Win_get_errhandler(mpi_win, &errhandler);
39 MPI::Win::Set_errhandler(
const MPI::Errhandler& errhandler)
const
41 (void)MPI_Win_set_errhandler(mpi_win, errhandler);
51 MPI::Win::Accumulate(
const void* origin_addr,
int origin_count,
52 const MPI::Datatype& origin_datatype,
int target_rank,
53 MPI::Aint target_disp,
int target_count,
54 const MPI::Datatype& target_datatype,
55 const MPI::Op& op)
const
57 (void) MPI_Accumulate(const_cast<void *>(origin_addr), origin_count, origin_datatype,
58 target_rank, target_disp, target_count,
59 target_datatype, op, mpi_win);
65 MPI::Win::Complete()
const
67 (void) MPI_Win_complete(mpi_win);
72 MPI::Win::Create(
const void* base, MPI::Aint size,
73 int disp_unit,
const MPI::Info& info,
74 const MPI::Intracomm& comm)
77 (void) MPI_Win_create(const_cast<void *>(base), size, disp_unit, info, comm, &newwin);
83 MPI::Win::Fence(
int assert)
const
85 (void) MPI_Win_fence(assert, mpi_win);
90 MPI::Win::Get(
const void *origin_addr,
int origin_count,
91 const MPI::Datatype& origin_datatype,
92 int target_rank, MPI::Aint target_disp,
94 const MPI::Datatype& target_datatype)
const
96 (void) MPI_Get(const_cast<void *>(origin_addr), origin_count, origin_datatype,
97 target_rank, target_disp,
98 target_count, target_datatype, mpi_win);
104 MPI::Win::Get_group()
const
107 (void) MPI_Win_get_group(mpi_win, &mpi_group);
113 MPI::Win::Lock(
int lock_type,
int rank,
int assert)
const
115 (void) MPI_Win_lock(lock_type, rank, assert, mpi_win);
120 MPI::Win::Post(
const MPI::Group& group,
int assert)
const
122 (void) MPI_Win_post(group, assert, mpi_win);
127 MPI::Win::Put(
const void* origin_addr,
int origin_count,
128 const MPI::Datatype& origin_datatype,
129 int target_rank, MPI::Aint target_disp,
131 const MPI::Datatype& target_datatype)
const
133 (void) MPI_Put(const_cast<void *>(origin_addr), origin_count, origin_datatype,
134 target_rank, target_disp, target_count,
135 target_datatype, mpi_win);
141 MPI::Win::Start(
const MPI::Group& group,
int assert)
const
143 (void) MPI_Win_start(group, assert, mpi_win);
148 MPI::Win::Test()
const
151 MPI_Win_test(mpi_win, &flag);
152 return OPAL_INT_TO_BOOL(flag);
158 MPI::Win::Unlock(
int rank)
const
160 (void) MPI_Win_unlock(rank, mpi_win);
165 MPI::Win::Wait()
const
167 (void) MPI_Win_wait(mpi_win);
176 MPI::Win::Call_errhandler(
int errorcode)
const
178 (void) MPI_Win_call_errhandler(mpi_win, errorcode);
184 MPI::Win::Create_keyval(MPI::Win::Copy_attr_function* win_copy_attr_fn,
185 MPI::Win::Delete_attr_function* win_delete_attr_fn,
190 ret = do_create_keyval(NULL, NULL,
191 win_copy_attr_fn, win_delete_attr_fn,
192 extra_state, keyval);
193 return (MPI_SUCCESS == ret) ? keyval : ret;
199 MPI::Win::Create_keyval(MPI_Win_copy_attr_function* win_copy_attr_fn,
200 MPI_Win_delete_attr_function* win_delete_attr_fn,
205 ret = do_create_keyval(win_copy_attr_fn, win_delete_attr_fn,
207 extra_state, keyval);
208 return (MPI_SUCCESS == ret) ? keyval : ret;
214 MPI::Win::Create_keyval(MPI::Win::Copy_attr_function* win_copy_attr_fn,
215 MPI_Win_delete_attr_function* win_delete_attr_fn,
220 ret = do_create_keyval(NULL, win_delete_attr_fn,
221 win_copy_attr_fn, NULL,
222 extra_state, keyval);
223 return (MPI_SUCCESS == ret) ? keyval : ret;
229 MPI::Win::Create_keyval(MPI_Win_copy_attr_function* win_copy_attr_fn,
230 MPI::Win::Delete_attr_function* win_delete_attr_fn,
235 ret = do_create_keyval(win_copy_attr_fn, NULL,
236 NULL, win_delete_attr_fn,
237 extra_state, keyval);
238 return (MPI_SUCCESS == ret) ? keyval : ret;
242 MPI::Win::Delete_attr(
int win_keyval)
244 (void) MPI_Win_delete_attr(mpi_win, win_keyval);
249 MPI::Win::Free_keyval(
int& win_keyval)
251 (void) MPI_Win_free_keyval(&win_keyval);
257 MPI::Win::Get_attr(
const Win& win,
int win_keyval,
258 void* attribute_val)
const
261 (void) MPI_Win_get_attr(win, win_keyval, attribute_val, &ret);
262 return OPAL_INT_TO_BOOL(ret);
268 MPI::Win::Get_attr(
int win_keyval,
void* attribute_val)
const
271 (void) MPI_Win_get_attr(mpi_win, win_keyval, attribute_val, &ret);
272 return OPAL_INT_TO_BOOL(ret);
277 MPI::Win::Get_name(
char* win_name,
int& resultlen)
const
279 (void) MPI_Win_get_name(mpi_win, win_name, &resultlen);
284 MPI::Win::Set_attr(
int win_keyval,
const void* attribute_val)
286 (void) MPI_Win_set_attr(mpi_win, win_keyval, const_cast<void *>(attribute_val));
291 MPI::Win::Set_name(
const char* win_name)
293 (void) MPI_Win_set_name(mpi_win, const_cast<char *>(win_name));
Back-end type for MPI_Errorhandler.
Definition: errhandler.h:108
Group structure Currently we have four formats for storing the process pointers that are members of t...
Definition: group.h:79