.. _program_listing_file_src_pcms_capi_interpolator.h: Program Listing for File interpolator.h ======================================= |exhale_lsh| :ref:`Return to documentation for file ` (``src/pcms/capi/interpolator.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef PCMS_INTERPOLATOR_CAPI_H #define PCMS_INTERPOLATOR_CAPI_H #include #include "mesh.h" #ifdef __cplusplus extern "C" { #endif struct PcmsInterpolatorHandle { void* pointer; }; typedef struct PcmsInterpolatorHandle PcmsInterpolatorHandle; PcmsInterpolatorHandle pcms_create_interpolator(PcmsOmegaHMeshHandle oh_mesh, double radius); PcmsInterpolatorHandle pcms_create_point_based_interpolator( void* source_points, int source_points_size, void* target_points, int target_points_size, double radius, int degree, int min_req_supports, double lambda, double decay_factor); PcmsInterpolatorHandle pcms_create_degas2xgcnode_interpolator( void* target_points, int target_points_size, const char* dg2_mesh_filename, double radius, void* dg2_elem_count, int degree, int min_req_supports, double lambda, double decay_factor); PcmsInterpolatorHandle pcms_create_xgcnodedegas2_interpolator( const char* dg2_mesh_filename, void* source_points, int source_points_size, double radius, void* dg2_elem_count, int degree, int min_req_supports, double lambda, double decay_factor); void pcms_destroy_interpolator(PcmsInterpolatorHandle interpolator); void pcms_interpolate(PcmsInterpolatorHandle interpolator, void* input, int input_size, void* output, int output_size); #ifdef __cplusplus } #endif #endif // PCMS_INTERPOLATOR_CAPI_H