Accessing handle graphics from within Fortran mexfunction
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Réponse acceptée
Titus Edelhofer
le 15 Août 2011
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 commentaires
Jan
le 15 Août 2011
@Titus: Please fix the prhs->pprhs confusion in your code. The line "prhs[0] = mxDuplicateArray(prhs[0])" will blow-up the memory manager...
Plus de réponses (1)
James Tursa
le 15 Août 2011
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.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!