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

4 Ansichten (letzte 30 Tage)
XAXRXTX
XAXRXTX am 2 Mär. 2015
Kommentiert: Guillaume am 2 Mär. 2015
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

Antworten (1)

Guillaume
Guillaume am 2 Mär. 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 Kommentare
James Tursa
James Tursa am 2 Mär. 2015
Yes, you need to write code to copy each field one at a time.
Guillaume
Guillaume am 2 Mär. 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.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Write C Functions Callable from MATLAB (MEX Files) finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by