5#ifndef INTERP_METHOD_CALLBACK_H
6#define INTERP_METHOD_CALLBACK_H
12#ifndef TYPEDEF_YAC_FUNC_COMPUTE_WEIGHTS
13#define TYPEDEF_YAC_FUNC_COMPUTE_WEIGHTS
17 double const tgt_coords[3],
int src_cell_id,
size_t src_cell_idx,
18 int const ** global_results_points,
double ** result_weights,
22#define YAC_INTERP_CALLBACK_COMPUTE_WEIGHTS_KEY_DEFAULT (NULL)
Defines the interface of the interpolation method "base class" in YAC.
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 yac_interp_method_config * yac_interp_method_config_default_callback_new(void)
Creates a callback interpolation method configuration with default parameters.
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)
void yac_interp_method_callback_buf_free()
char * func_compute_weights_key
static void compute_weights_callback(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)