C MEX ファイルの mxArray を埋める
オプション
C 行列 API を使用して、データを C MEX ファイルから mxArray
に移すことができます。使用する関数はアプリケーションのデータ型によって変わります。double
データ型に対しては、関数 mxSetDoubles
と関数 mxGetDoubles
を使用します。double
以外の数値データの場合、いずれかの型付きデータ アクセス関数を使用します。数値以外のデータに対しては、関数 mxCreateString
の例を参照してください。
以下の例では変数 data
を使用して計算ルーチンからのデータを表します。それぞれの例で関数 mxCreateNumericMatrix
を使用して mxArray
を作成し、data
を入力して出力引数 plhs[0]
として返します。
複素数データがある場合や、型が double
でない場合、C MEX ファイルでの型付きデータ アクセス関数を使用します。型付きデータ アクセス関数は、インターリーブされた複素数 C 行列 API の一部です。mex
-R2018a
オプションを使用して MEX 関数をビルドしてください。
データの mxArray への直接コピー
arrayFillGetPr.c
の例では、関数 mxGetDoubles
を使用して data
からの値を plhs[0]
にコピーします。
データの指定
arrayFillSetPr.c
の例では、関数 mxSetDoubles
を使用して plhs[0]
が data
を指すようにします。arrayFillSetComplexPr.c
の例では、関数 mxSetComplexDoubles
を使用して複素数 data
を指すようにします。
arrayFillSetData.c
の例では、double
以外の数値型について、mxArray
を埋める方法を説明しています。
参考
mxGetDoubles
| mxSetDoubles
| mxCreateString
| mxSetComplexDoubles