Call methods on MATLAB objects instantiated in a CMEX function

3 ビュー (過去 30 日間)
Rob
Rob 2014 年 6 月 3 日
回答済み: Rob 2014 年 6 月 3 日
Hi,
I've got a CMEX function in which I call a MATLAB function to get a MATLAB object like this:
mxArray *plhs[1];
mexCallMATLAB(1, plhs, 0, NULL, "getAnObject");
Now, I want to call a method on this object. In MATLAB, I would have done it like this:
obj = getAnObject;
obj.aMethod();
How can I solve this in a CMEX function?
P.S.: getAnObject itself is a compiled mex file.

採用された回答

Rob
Rob 2014 年 6 月 3 日
I found the solution here:
An alternative way of calling a method on a MATLAB object is this:
returnedValue = methodName(object,args,...)
So, transferred to my CMEX file:
mxArray *plhs[1];
mexCallMATLAB(1, plhs, 0, NULL, "getAnObject");
mxArray *params[2];
params[0] = plhs[0];
params[1] = mxCreateDoubleScalar(12);
mexCallMATLAB(0, NULL, 2, params, "aFunction");
Have a nice day!

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeWrite C Functions Callable from MATLAB (MEX Files) についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by