Error retrieving MATLAB variable via engGetVariable
Show older comments
I'm trying to retrieve a variable from a MATLAB session embedded in my C++ application, using the Engine API.
A call to engGetVariable(eng, "v") returns NULL, even though a previous call to engEvalString(eng, "who") will show "v" in the output buffer.
Is there anything that may cause this behavior ?
As I'm debugging this I noticed the following:
If I type "v = 'foo'" in an interactive MATLAB session, the generated output starts with "v = ". However, when I call engEvalString(eng, "v = 'foo'") and look at the output, I see it as "ans = ". Could that be related ?
Thanks for any hints !
3 Comments
Stefan
on 21 Nov 2012
Kaustubha Govind
on 26 Nov 2012
Stefan: Could you try contacting MathWorks Tech Support about this? The fact that the issue only occurs with custom classes makes me think this is indeed an API limitation that may not have been documented.
James Tursa
on 27 Nov 2012
Q1: Can you load the class object from a mat file? (i.e., get it loaded and get the class registered)
Q2: If Q1 works, can you subsequently get the class object from the Engine? (i.e., after the class is registered via the mat load)
Answers (0)
Categories
Find more on Call MATLAB from C++ in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!