public final class RemoteMatlabProxy
extends java.lang.Object
RemoteMatlabProxyFactory
.RemoteMatlabProxyController
Modifier and Type | Method and Description |
---|---|
java.lang.String |
eval(java.lang.String command)
Evaluates a command in MATLAB.
|
void |
exit()
Exits MATLAB.
|
void |
feval(java.lang.String functionName,
java.lang.Object[] args)
Calls a MATLAB function with the name
functionName . |
java.lang.Object |
getVariable(java.lang.String variableName)
Gets the value of the variable named variableName from MATLAB.
|
boolean |
isConnected()
Whether this proxy is connected to MATLAB.
|
java.lang.Object |
returningEval(java.lang.String command,
int returnCount)
Evaluates a command in MATLAB.
|
java.lang.Object |
returningFeval(java.lang.String functionName,
java.lang.Object[] args)
Calls a MATLAB function with the name
functionName . |
java.lang.Object |
returningFeval(java.lang.String functionName,
java.lang.Object[] args,
int returnCount)
Calls a MATLAB function with the name
functionName . |
void |
setEchoEval(boolean echo)
Allows for enabling a diagnostic mode that will show in MATLAB each time a Java method that
calls into MATLAB is invoked.
|
void |
setVariable(java.lang.String variableName,
java.lang.Object value)
Sets the variable to the given
value . |
public void setVariable(java.lang.String variableName, java.lang.Object value) throws MatlabInvocationException
value
.variableName
- value
- MatlabInvocationException
public java.lang.Object getVariable(java.lang.String variableName) throws MatlabInvocationException
variableName
- MatlabInvocationException
public void exit() throws MatlabInvocationException
MatlabInvocationException
public java.lang.String eval(java.lang.String command) throws MatlabInvocationException
eval(['command'])
.command
- the command to be evaluated in MATLABMatlabInvocationException
returningEval(String, int)
public java.lang.Object returningEval(java.lang.String command, int returnCount) throws MatlabInvocationException
eval(['command'])
. returnCount
. If the command you are evaluating is a MATLAB
function you can determine the amount of arguments it returns by using the
nargout
function in the MATLAB Command Window. If it returns -1 that means the
function returns a variable number of arguments based on what you pass in. In that case, you
will need to manually determine the number of arguments returned. If the number of arguments
returned differs from returnCount
then either null
or an empty
String
will be returned.command
- the command to be evaluated in MATLABreturnCount
- the number of arguments that will be returned from evaluating the commandMatlabInvocationException
eval(String)
public void feval(java.lang.String functionName, java.lang.Object[] args) throws MatlabInvocationException
functionName
. Arguments to the function
may be provided as args
, if you wish to call the function with no arguments pass
in null
. The result of this command will not be returned. Object
s in the array will be converted into MATLAB equivalents as
appropriate. Importantly, this means that any String
will be converted to a
MATLAB char array, not a variable name.functionName
- name of the MATLAB function to callargs
- the arguments to the function, null
if noneMatlabInvocationException
returningFeval(String, Object[], int)
,
returningFeval(String, Object[])
public java.lang.Object returningFeval(java.lang.String functionName, java.lang.Object[] args) throws MatlabInvocationException
functionName
. Arguments to the function
may be provided as args
, if you wish to call the function with no arguments pass
in null
. Object
s in the array will be converted into MATLAB equivalents as
appropriate. Importantly, this means that any String
will be converted to a
MATLAB char array, not a variable name. returningFeval(String, Object[], int)
and specify the number of arguments that
will be returned.functionName
- name of the MATLAB function to callargs
- the arguments to the function, null
if noneMatlabInvocationException
feval(String, Object[])
,
returningFeval(String, Object[])
public java.lang.Object returningFeval(java.lang.String functionName, java.lang.Object[] args, int returnCount) throws MatlabInvocationException
functionName
. Arguments to the function
may be provided as args
, if you wish to call the function with no arguments pass
in null
. Object
s in the array will be converted into MATLAB equivalents as
appropriate. Importantly, this means that any String
will be converted to a
MATLAB char array, not a variable name. returnCount
. You can use the nargout
function in the MATLAB Command Window to determine the
number of arguments that will be returned. If nargout
returns -1 that means the
function returns a variable number of arguments based on what you pass in. In that case, you
will need to manually determine the number of arguments returned. If the number of arguments
returned differs from returnCount
then either only some of the items will be
returned or null
will be returned.functionName
- name of the MATLAB function to callargs
- the arguments to the function, null
if nonereturnCount
- the number of arguments that will be returned from this functionMatlabInvocationException
feval(String, Object[])
,
returningFeval(String, Object[])
public void setEchoEval(boolean echo) throws MatlabInvocationException
echo
- MatlabInvocationException
public boolean isConnected()