YetAnotherCoupler 3.2.0_a
Loading...
Searching...
No Matches
interp_method_callback.h
Go to the documentation of this file.
1// Copyright (c) 2024 The YAC Authors
2//
3// SPDX-License-Identifier: BSD-3-Clause
4
5#ifndef INTERP_METHOD_CALLBACK_H
6#define INTERP_METHOD_CALLBACK_H
7
8#include "interp_method.h"
9
10// YAC PUBLIC HEADER START
11
12#ifndef TYPEDEF_YAC_FUNC_COMPUTE_WEIGHTS
13#define TYPEDEF_YAC_FUNC_COMPUTE_WEIGHTS
14
15// Remark: make sure that this typedef is consistent with the one in yac.h
17 double const tgt_coords[3], int src_cell_id, size_t src_cell_idx,
18 int const ** global_results_points, double ** result_weights,
19 size_t * result_count, void * user_data);
20#endif
21
22#define YAC_INTERP_CALLBACK_COMPUTE_WEIGHTS_KEY_DEFAULT (NULL)
23
37 yac_func_compute_weights compute_weights_callback, void * user_data);
38
49 yac_func_compute_weights compute_weights_callback,
50 void * user_data, char const * key);
51
62 char const * key, yac_func_compute_weights * compute_weights_callback,
63 void ** user_data);
64
65// YAC PUBLIC HEADER STOP
66
67#endif // INTERP_METHOD_CALLBACK_H
void * user_data
char * key
void yac_interp_method_callback_get_compute_weights_callback(char const *key, yac_func_compute_weights *compute_weights_callback, void **user_data)
void(* yac_func_compute_weights)(double const tgt_coords[3], int src_cell_id, size_t src_cell_idx, int const **global_results_points, double **result_weights, size_t *result_count, void *user_data)
struct interp_method * yac_interp_method_callback_new(yac_func_compute_weights compute_weights_callback, void *user_data)
void yac_interp_method_callback_add_compute_weights_callback(yac_func_compute_weights compute_weights_callback, void *user_data, char const *key)