diff -r 7ec1cfe19a24 -r a4137aedcb3a include/dolfinx_access/function.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/include/dolfinx_access/function.h Thu Feb 26 09:32:12 2026 -0500 @@ -0,0 +1,49 @@ +#pragma once +#include "dolfinx/geometry/BoundingBoxTree.h" +#include + +#pragma once +#include "nanobind_helpers.h" + +#pragma once +#include "rust/cxx.h" + +namespace dolfinx_access { + struct FunctionInfo; + + typedef geometry::BoundingBoxTree BBTree_f64; + extern void drop_Function_f64(Function_f64* f); + + extern int32_t cell_Mesh_f64(std::shared_ptr> mesh, + const std::array& x); + + extern int32_t cell_FunctionSpace_f64(FunctionSpace const* v, + const std::array& x); + + extern int32_t cell_Function_f64(Function_f64 const* f, const std::array& x); + + extern double eval_Function_f64_cell(Function_f64 const* f, const std::array& x, + int32_t cell); + + extern double eval_Function_f64(Function_f64 const* f, const std::array& x); + + extern std::array eval_Function_f64_cell_6(Function_f64 const* f, + const std::array& x, + int32_t cell_index); + + FunctionInfo info_Function_f64(Function_f64 const* f); + + std::array cell_coords_Function_f64_triangle(Function_f64 const* f, + int32_t cell); + + rust::Slice data_Function_f64(Function_f64 const* f); + + rust::Slice data_mut_Function_f64(Function_f64* f); + + void check_compat_Function_f64(Function_f64 const* f, Function_f64 const* g); + + Function_f64* similar_Function_f64(Function_f64 const* f); + + Function_f64* clone_Function_f64(Function_f64 const* f); + +} // namespace dolfinx_access