ドキュメンテーション センター

  • 評価版
  • 製品アップデート

目次

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

engOpen (C および Fortran)

MATLAB エンジン セッションの開始

C 構文

#include "engine.h"
Engine *engOpen(const char *startcmd);

Fortran 構文

mwPointer engOpen(startcmd)
character*(*) startcmd

引数

startcmd

MATLAB® プロセスを開始する文字列。Windows® システムでは、startcmd 文字列は NULL でなければなりません。

戻り値

エンジン ハンドルへのポインター。または、開けなかった場合は NULL

説明

このルーチンは、MATLAB を計算エンジンとして使用するための MATLAB プロセスを開始できるようにします。

関数 engOpen は、文字列 startcmd に指定されているコマンドを使用して MATLAB プロセスを開始し、接続を確立し、エンジン ポインターを返します。

UNIX® システムでは、startcmdNULL または空の文字列の場合、関数 engOpen はコマンド matlab を使用して現在のホストで MATLAB プロセスを開始します。startcmdhostname である場合、関数 engOpen は指定されている hostname 文字列をより大きな文字列に組み込むことで、指定されたホストで MATLAB プロセスを開始します。

"rsh hostname \"/bin/csh -c 'setenv DISPLAY\ 
	hostname:0; matlab'\""

startcmd が他の文字列 (空白またはアルファベット以外の文字が含まれている) である場合、MATLAB は文字列を文字どおりに実行します。

UNIX システムでは、関数 engOpen は以下の手順を実行します。

  1. 2 つのパイプを作成します。

  2. 新しいプロセスを分岐します。MATLAB (親) ソフトウェアからエンジン プログラム (子) 内の 2 つのファイル記述子に stdinstdout を渡すようにパイプを設定します。

  3. MATLAB ソフトウェアを実行するコマンド (リモート実行の場合は rsh) を実行します。

Windows システムでは、関数 engOpen は MATLAB への COM チャンネルを開きます。インストール中に登録した MATLAB ソフトウェアが起動します。インストール中に登録しなかった場合は、コマンド ラインで次のコマンドを入力できます。

!matlab /regserver

詳細は、「MATLAB COM の統合」を参照してください。

matlabroot/extern/examples/eng_mat の次の例を参照してください。

この情報は役に立ちましたか?