Main Content

engOpen (C)

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

C 構文

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

説明

engOpen は、MATLAB® を計算エンジンとして使用するための MATLAB プロセスを開始します。

Windows プラットフォーム

engOpen はデスクトップなしで MATLAB を起動します。

この関数は MATLAB への COM チャネルを開きます。インストール中に登録した MATLAB ソフトウェアが起動します。インストール中に登録しなかった場合は、COM サーバーとしての MATLAB の登録を参照してください。

UNIX プラットフォーム

UNIX® システムでは、engOpen は以下を行います。

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

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

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

入力引数

すべて展開する

MATLAB の起動コマンド。const char * として指定します。

Windows® システムでは、startcmd 文字列は NULL でなければなりません。

UNIX システムでは、次のようになります。

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

    "rsh hostname \"/bin/csh -c 'setenv DISPLAY\ 
    	hostname:0; matlab'\""
    
  • startcmd が他の文字列 (空白、または英数字以外の文字を含む) である場合、MATLAB は文字列を文字どおりに実行します。

出力引数

すべて展開する

MATLAB エンジンへのハンドル。Engine * として指定します。開けなかった場合は NULL が返されます。

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

  • engdemo.c: UNIX オペレーティング システムでの C の例

  • engwindemo.c: Microsoft® Windows オペレーティング システムでの C の例

バージョン履歴

R2006a より前に導入