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
および setmcruserdata
は Unknown function
エラーを生成します。getmcruserdata
および setmcruserdata
を呼び出す前に isdeployed
を呼び出すことで、この状況を回避できます。詳細については、isdeployed
を参照してください。
共有ライブラリ用の MATLAB Runtime データの設定と取得
MATLAB Runtime データを操作するシナリオは数多く考えられます。最も一般的なシナリオでは、以下に示すように、MATLAB Runtime に将来取得する特定のデータを設定します。
コード内に、MATLAB Compiler SDK で生成した MATLAB Runtime のヘッダー ファイルとライブラリ ヘッダーを含めます。
mclInitializeApplication
を使用して、アプリケーションを適切に初期化します。入力データの作成後、
setmcruserdata
を使ってそのデータを MATLAB Runtime に書き込み (つまり "設定") します。関数を呼び出すか他の処理を行った後、
getmcruserdata
でその新しい MATLAB Runtime データを取得します。mxDestroyArray
で不要な配列を廃棄することにより、ワークエリアの格納メモリを解放します。mclTerminateApplication
でアプリケーションを適切に終了します。
参考
setmcruserdata
| getmcruserdata