20 src_field_locations[i] =
28 if (*method == NULL)
return weights;
34 size_t final_count = 0;
35 while (*method != NULL) {
37 (*method)->vtable->do_search(
38 *method, interp_grid, tgt_points + final_count, temp_count - final_count,
50 while (*method != NULL) {
enum yac_location yac_interp_grid_get_tgt_field_location(struct yac_interp_grid *interp_grid)
size_t yac_interp_grid_get_num_src_fields(struct yac_interp_grid *interp_grid)
void yac_interp_grid_get_tgt_points(struct yac_interp_grid *interp_grid, size_t **tgt_indices, size_t *count)
MPI_Comm yac_interp_grid_get_MPI_Comm(struct yac_interp_grid *interp_grid)
enum yac_location yac_interp_grid_get_src_field_location(struct yac_interp_grid *interp_grid, size_t src_field_idx)
void yac_interp_method_cleanup()
void yac_interp_method_delete(struct interp_method **method)
struct yac_interp_weights * yac_interp_method_do_search(struct interp_method **method, struct yac_interp_grid *interp_grid)
void yac_interp_method_callback_buf_free()
void yac_interp_method_check_buf_free()
struct yac_interp_weights * yac_interp_weights_new(MPI_Comm comm, enum yac_location tgt_location, enum yac_location *src_locations, size_t num_src_fields)
void(* delete)(struct interp_method *method)
struct interp_method_vtable * vtable