#include "engine.h" Engine *engOpen(startcmd)
char *startcmd;
integer*4 function engOpen(startcmd)
integer*4 ep
character*(
*) startcmd
ep
startcmd
using MATLAB as a compute engine.
engOpen(startcmd)
starts a MATLAB process using the command specified in the string startcmd
, establishes a connection, and returns a unique engine identifier, or NULL
if the open fails.
On the UNIX system, if startcmd
is NULL
or the empty string, engOpen
starts MATLAB on the current host using the command matlab
. If startcmd
is a hostname, engOpen
starts MATLAB on the designated host by embedding the specified hostname string into the larger string:
"rsh hostname \"/bin/csh -c 'setenv DISPLAY\ hostname:0; matlab'\""If
startcmd
is any other string (has white space in it, or nonalphanumeric characters), the string is executed literally to start MATLAB.
engOpen
performs the following steps:
rsh
for remote execution).startcmd
is NULL
or the empty string, engOpen
starts MATLAB using the command MATLAB
.
If startcmd
is any other string (has white space in it, or nonalphanumeric characters), the string is executed literally to start MATLAB.
engOpen
performs the following steps:
engOpen
opens a DDE channel to MATLAB.
The Fortran version of this example is in/
*engtest2.c
*/
#include <stdio.h> #include "engine.h" main() { Engine ep; if (!(ep = engOpen("\0"))) { fprintf(stderr,"\nCan't start MATLAB engine"); exit(-1); } }
engtest2.f
.
Call engOpen
to start a process on the UNIX machine called labrea
:
engOpen("labrea");Call
engOpen
to run MATLAB on Fred's account on the UNIX machine called labrea
, and set the X display to the machine called wilkinson
:
engOpen("rsh -l fred labrea \"/bin/csh -c \ 'setenv DISPLAY wilkinson:0; matlab'\"");Start a MATLAB engine in MS-Windows on a PC:
/*ENGTEST2*/ #include <stdlib.h> #include <stdio.h> #include "engine.h" int WINAPI WinMain (HANDLE hInstance, HANDLE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow) { Engine *ep; engWinInit (hInstance); if (!(ep = engOpen(lpszCmdLine))) { MessageBox ((HWND)NULL, (LPSTR)"Can't start MATLAB engine", (LPSTR) "Engtest2.c", MB_OK); } engClose(ep); return TRUE; }
(c) Copyright 1994 by The MathWorks, Inc.