Effacer les filtres
Effacer les filtres

Mex with Function Pointers?

1 vue (au cours des 30 derniers jours)
Sam Butler
Sam Butler le 21 Sep 2013
I want to build most of my code in MatLab, but there is one routine that needs to be sped up in C++ (and made to use the GPU; highly parallel problem). The thing is, that problem requires a function pointer.
If I use mex "naively", passing in a function handle to the C interface, can I access this function from C or are there known issues with doing this?
(If it makes a difference, the function was defined using the f = @(x,y) sin(x).*cos(y); syntax for defining functions.)

Réponses (1)

Sam Butler
Sam Butler le 20 Nov 2013
I got this code to work properly using a mix of C++ objects and MatLab objects, by tracking the function pointer's 64-bit integer value in MatLab and having the MatLab class extend handle (so it gets deleted automatically, to call the C++ code to delete).

Catégories

En savoir plus sur Call C++ from MATLAB dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by