Accessing handle graphics from within Fortran mexfunction
2 次查看(过去 30 天)
显示 更早的评论
Can you access Matlab's handle graphics from within a Fortran mexFunction? I see that there are mexSet and mexGet functions; however, they appear to apply only for C mexFunctions.
Thanks a million, Bill
0 个评论
采纳的回答
Titus Edelhofer
2011-8-15
Hi Otis,
I guess (!) the answer is yes. Handles itself are just usual doubles. Therefore you should be able to call the set and get by something like
mxArray* pprhs[3];
pprhs[0] = prhs[0]; // assuming prhs[0] is the handle
pprhs[1] = mxCreateString("tag");
pprhs[2] = mxCreateString("Bill");
mexCallMATLAB(0, plhs, 3, pprhs, "set");
Titus
5 个评论
Jan
2011-8-15
@Titus: Please fix the prhs->pprhs confusion in your code. The line "prhs[0] = mxDuplicateArray(prhs[0])" will blow-up the memory manager...
更多回答(1 个)
James Tursa
2011-8-15
You can get Fortran versions of mexGet and mexSet in my Fortran 95 interface package, which can be found here:
They work the same as their C counterparts. You can also find a lot of other useful functions & utilities in this package, many of which are not available in the C API.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!