Lines Matching refs:keyval

159 …opy_function *copy_fn, PETSC_UNUSED MPI_Delete_function *delete_fn, int *keyval, void *extra_state)  in MPI_Comm_create_keyval()  argument
178 *keyval = keyid; in MPI_Comm_create_keyval()
201 static int MPI_Attr_dereference_keyval(int keyval) in MPI_Attr_dereference_keyval() argument
203 if (--attr_keyval[keyval].active <= 0) { in MPI_Attr_dereference_keyval()
204 attr_keyval[keyval].extra_state = 0; in MPI_Attr_dereference_keyval()
205 attr_keyval[keyval].del = 0; in MPI_Attr_dereference_keyval()
210 static int MPI_Attr_reference_keyval(int keyval) in MPI_Attr_reference_keyval() argument
212 ++attr_keyval[keyval].active; in MPI_Attr_reference_keyval()
216 int MPI_Comm_free_keyval(int *keyval) in MPI_Comm_free_keyval() argument
220 if (*keyval < 0 || *keyval >= num_attr) return MPI_FAILURE; in MPI_Comm_free_keyval()
221 if ((ret = MPI_Attr_dereference_keyval(*keyval))) return ret; in MPI_Comm_free_keyval()
222 *keyval = 0; in MPI_Comm_free_keyval()
226 int MPI_Comm_set_attr(MPI_Comm comm, int keyval, void *attribute_val) in MPI_Comm_set_attr() argument
230 if (keyval < 0 || keyval >= num_attr) return MPI_FAILURE; in MPI_Comm_set_attr()
232 if ((ret = MPI_Comm_delete_attr(comm, keyval))) return ret; in MPI_Comm_set_attr()
233 if ((ret = MPI_Attr_reference_keyval(keyval))) return ret; in MPI_Comm_set_attr()
234 attr[idx][keyval].active = 1; in MPI_Comm_set_attr()
235 attr[idx][keyval].attribute_val = attribute_val; in MPI_Comm_set_attr()
239 int MPI_Comm_delete_attr(MPI_Comm comm, int keyval) in MPI_Comm_delete_attr() argument
243 if (keyval < 0 || keyval >= num_attr) return MPI_FAILURE; in MPI_Comm_delete_attr()
244 if (attr[idx][keyval].active) { in MPI_Comm_delete_attr()
246 void *save_attribute_val = attr[idx][keyval].attribute_val; in MPI_Comm_delete_attr()
248 attr[idx][keyval].active = 0; in MPI_Comm_delete_attr()
249 attr[idx][keyval].attribute_val = 0; in MPI_Comm_delete_attr()
250 if (attr_keyval[keyval].del) { in MPI_Comm_delete_attr()
251 …if ((ret = (*attr_keyval[keyval].del)(comm, keyval, save_attribute_val, attr_keyval[keyval].extra_… in MPI_Comm_delete_attr()
253 if ((ret = MPI_Attr_dereference_keyval(keyval))) return ret; in MPI_Comm_delete_attr()
258 int MPI_Comm_get_attr(MPI_Comm comm, int keyval, void *attribute_val, int *flag) in MPI_Comm_get_attr() argument
262 if (!keyval) Keyval_setup(); in MPI_Comm_get_attr()
263 *flag = attr[idx][keyval].active; in MPI_Comm_get_attr()
264 *(void **)attribute_val = attr[idx][keyval].attribute_val; in MPI_Comm_get_attr()