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

 採用された回答

James Tursa
James Tursa 2017 年 3 月 14 日

0 投票

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 件のコメント

XAXRXTX
XAXRXTX 2017 年 3 月 14 日
thanks for the reply James, do you have some example about pointer encapsulation in MATLAB ?
James Tursa
James Tursa 2017 年 3 月 15 日
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 2017 年 3 月 15 日
編集済み: XAXRXTX 2017 年 3 月 15 日
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

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeWrite C Functions Callable from MATLAB (MEX Files) についてさらに検索

質問済み:

2017 年 3 月 14 日

編集済み:

2017 年 3 月 15 日

Community Treasure Hunt

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

Start Hunting!

Translated by