passing a structure pointer from C mex file to matlab

Hi,
I m trying to pass a pointer of a static structure from C mex to matlab, this pointer will be used by another C mex function. any help will be much appreciated thanks in advance

 Akzeptierte Antwort

James Tursa
James Tursa am 14 Mär. 2017

0 Stimmen

The usual hack is to encapsulate the pointer in a MATLAB uint64 variable. I.e., set the data area of a uint64 mxArray to the value of your pointer and pass that variable around. However, you need to be careful that the pointer is indeed valid to use in that other mex routine or it will cause a MATLAB crash.

3 Kommentare

thanks for the reply James, do you have some example about pointer encapsulation in MATLAB ?
See this link:
https://www.mathworks.com/matlabcentral/answers/75524-returning-and-passing-void-pointers-to-mex-functions?s_tid=answers_rc1-2_p2_MLT
XAXRXTX
XAXRXTX am 15 Mär. 2017
Bearbeitet: XAXRXTX am 15 Mär. 2017
to be honest I had a trouble to make it working, but your suggestion in the link about adding an option in the input arguments has fixed the problem, thanks again

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Gefragt:

am 14 Mär. 2017

Bearbeitet:

am 15 Mär. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by