Main Content

MATLAB Runtime のユーザー データ インターフェイスの使用

MATLAB® Runtime のユーザー データ インターフェイスを使用すると、MATLAB Runtime データに簡単にアクセスできます。この機能では、MATLAB Runtime インスタンス、MATLAB Runtime インスタンス上で実行されている MATLAB コード、および MATLAB Runtime インスタンスを作成したラッパー コードの間でキーと値を共有することができます。MATLAB Runtime のユーザー データ インターフェイス API の呼び出しを通じて、インスタンスごとに string キーから mxArray 値へのマッピングで構成される mxArray の連想配列を 1 つ作成することにより、MATLAB Runtime データにアクセスします。その理由の一部として次のようなものがあります。

  • Parallel Computing Toolbox™ で作成したアプリケーションを実行するクライアントに、MATLAB Runtime のプロファイル情報を供給する必要があります。1 度実行するごとにプロファイル情報を供給し、変更します。たとえば、同じアプリケーションの 2 つのインスタンスが異なるプロファイルを同時に実行できます。詳細については、デプロイ アプリケーションでの Parallel Computing Toolbox の使用を参照してください。

  • MATLAB Runtime を、すべての MATLAB アプリケーションからアクセスできる定数値で初期化できます。

  • グローバル ワークスペース、つまり MATLAB とクライアントがアクセス可能な 1 つ以上のグローバル変数を設定できます。

  • 任意の変数または変数グループの状態を格納することもできます。

MATLAB 関数

API は、デプロイされた MATLAB コード内から呼び出し可能な 2 つの MATLAB 関数で構成されます。デプロイされた MATLAB アプリケーションから MATLAB 関数の getmcruserdata および setmcruserdata を使用します。これらは、MATLAB Compiler™ または MATLAB Compiler SDK™ で作成したアプリケーションにのみ、既定で読み込まれます。

ヒント

MATLAB で呼び出されたときに MCLMCR モジュールが見つからない場合、getmcruserdata および setmcruserdataUnknown function エラーを生成します。getmcruserdata および setmcruserdata を呼び出す前に isdeployed を呼び出すことで、この状況を回避できます。詳細については、isdeployed を参照してください。

共有ライブラリ用の MATLAB Runtime データの設定と取得

MATLAB Runtime データを操作するシナリオは数多く考えられます。最も一般的なシナリオでは、以下に示すように、MATLAB Runtime に将来取得する特定のデータを設定します。

  1. コード内に、MATLAB Compiler SDK で生成した MATLAB Runtime のヘッダー ファイルとライブラリ ヘッダーを含めます。

  2. mclInitializeApplication を使用して、アプリケーションを適切に初期化します。

  3. 入力データの作成後、setmcruserdata を使ってそのデータを MATLAB Runtime に書き込み (つまり "設定") します。

  4. 関数を呼び出すか他の処理を行った後、getmcruserdata でその新しい MATLAB Runtime データを取得します。

  5. mxDestroyArray で不要な配列を廃棄することにより、ワークエリアの格納メモリを解放します。

  6. mclTerminateApplication でアプリケーションを適切に終了します。

参考

|

関連するトピック