Azzera filtri
Azzera filtri

return the pointer or the structure of C structure in C mex file

5 visualizzazioni (ultimi 30 giorni)
Hi
I have a C function inside a mex file that return a large structure ( 110 fields ), and I want to return this structure to matlab , so , my question is how to copy or to return the pointer of the C structure to Matlab ?
thanks in advance

Risposte (1)

Guillaume
Guillaume il 2 Mar 2015
You can't, matlab does not understand C structures. You'll have to convert your structure to a matlab structure (which is a very different beast). See mxcreatestructarray and mxsetfield to create matlab structs.
  3 Commenti
James Tursa
James Tursa il 2 Mar 2015
Yes, you need to write code to copy each field one at a time.
Guillaume
Guillaume il 2 Mar 2015
Unless all the fields are the same type, I don't see any other way but to copy each field one by one I'm afraid.

Accedi per commentare.

Categorie

Scopri di più su Write C Functions Callable from MATLAB (MEX Files) in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by