リファレンス
Wolfram LibraryLink を使うと,ダイナミックライブラリをWolfram言語カーネルに直接ロードして,ライブラリの関数を即座にWolfram言語内部から呼び出せるようにすることができる.整数,実数,パックアレー,文字列等のCのようなデータ型だけでなく,任意のWolfram言語式も交換することができる.また,エラーを送ったり,Wolfram言語にコールバックしたりするような便利な関数もある.
Wolfram言語関数
このセクションでは,Wolfram言語からWolfram Librariesとインタラクトするための関数をまとめる.
LibraryFunctionLoad | ライブラリの関数をロードする |
LibraryFunction | ライブラリからロードされた関数へのハンドルの表現 |
LibraryFunctionUnload | 以前ライブラリからロードされた関数をアンロードする |
LibraryUnload | 以前ライブラリからロードされた関数をすべてアンロードする |
Wolfram Librariesの関数をロード,アンロードするためのWolfram言語関数
Wolfram Libraryからロードされた関数についての情報を得るためのWolfram言語関数
$LibraryPath | ライブラリの検索に使用されるパス |
FindLibrary | ライブラリパス上のライブラリを検索する |
Wolfram Librariesを探すためのWolfram言語関数
LibraryLoad | ライブラリをロードするが関数は呼び出さない |
依存関係を解決するためのライブラリをロードするためのWolfram言語関数
CreateManagedLibraryExpression | ライブラリデータと関連付けることのできる式を作成する |
ManagedLibraryExpressionQ | 式が管理されたライブラリ式であるかどうかをテストする |
ManagedLibraryExpressionID | 管理されたライブラリ式に関連付けられた正の整数のIDを与える |
$LibraryError | ロードするライブラリからのシステム依存エラー |
LibraryVersionInformation | ライブラリのバージョンについての情報を含む規則 |
LibraryVersionString | ライブラリのバージョン情報の文字列 |
LibraryLink`パッケージの中のWolfram言語関数
ライブラリコールバック関数
このセクションでは,ライブラリの実装に使われるC言語コールバック関数をまとめる.
MTensor_new | 新しいMTensorを作成する |
MTensor_free | MTensorを解放する |
MTensor_disown | 共有のMTensorを解放可能にする |
MTensor_disownAll | すべての共有MTensorを解放可能にする |
MTensor_clone | MTensorをコピーする |
MTensor_getRank | MTensorの階数を取得する |
MTensor_getDimensions | MTensorの次元を取得する |
MTensor_getFlattenedLength | MTensorの要素数を取得する |
MTensor_getType | MTensorの型を取得する |
MTensorから構造についての情報を取得するためのコールバック関数
MTensor_getInteger | 整数のMTensorから要素を取得する |
MTensor_getReal | 実数のMTensorから要素を取得する |
MTensor_getComplex | 複素数のMTensorから要素を取得する |
MTensor_getMTensor | MTensorから部分MTensorを取得する |
MTensor_getIntegerData | 整数のMTensorからデータを取得する |
MTensor_getRealData | 実数のMTensorからデータを取得する |
MTensor_getComplexData | 複素数のMTensorからデータを取得する |
MTensor_setInteger | 整数のMTensorの要素を設定する |
MTensor_setReal | 実数のMTensorの要素を設定する |
MTensor_setComplex | 複素数のMTensorの要素を設定する |
MTensor_setMTensor | MTensorの部分MTensorを設定する |
UTF8String_disown | 文字列引数が使われなくなったら呼ばれる |
getWSLINK | エラー処理バッファを設定する |
processWSLINK | Wolfram言語内でメッセージを送る |
registerLibraryExpressionManager | ライブラリ式マネージャを登録する |
unregisterLibraryExpressionManager | ライブラリ式マネージャの登録を解除する |
releaseManagedLibraryExpression | 管理されたライブラリ式を解放する |
registerLibraryCallbackManager | ライブラリコールバックマネージャを登録する |
unregisterLibraryCallbackManager | ライブラリコールバックマネージャの登録を解除する |
callLibraryCallbackFunction | 接続されたライブラリコールバック関数を呼ぶ |
releaseLibraryCallbackFunction | ライブラリコールバック関数を解放する |
MSparseArray_fromExplicitPositions | 指定された位置と値から新規のMSparseArrayを作成する |
MSparseArray_fromMTensor | MTensorから新規のMSparseArrayを作成する |
MSparseArray_clone | MSparseArrayをコピーする |
MSparseArray_free | MSparseArrayを解放する |
MSparseArray_disown | 共有mpMSparseArrayを解放可能にする |
MSparseArray_disownAll | すべての共有MSparseArrayを解放可能にする |
MSparseArrayを作成したり解放したりするためのコールバック関数
MSparseArray_getRank | MSparseArrayの階数を取得する |
MSparseArray_getDimensions | MSparseArrayの次元を取得する |
MSparseArray_getExplicitPositions | MSparseArrayから,明示的な値を持った位置を取得する |
MSparseArray_getColumnIndices | MSparseArrayから列の指標を取得する |
MSparseArray_getRowPointers | MSparseArrayから行のポインタ配列を取得する |
MSparseArrayから構造についての情報を取得するためのコールバック関数
MSparseArray_getExplicitValues | MSparseArrayから,明示的に指定された位置に対応する値を取得する |
MSparseArray_getImplicitValue | MSparseArrayから,明示的に指定されていない位置に使われた値を取得する |
MSparseArray_toMTensor | MSparseArrayから通常のMTensorに変換する |
MSparseArray_resetImplicitValue | 暗示的な値をリセットし,どの位置がMSparseArrayに明示的に保存されているかを再計算する |
MNumericArray_new | 新しいMNumericArrayを作成する |
MNumericArray_free | MNumericArrayを解放する |
MNumericArray_disown | 共有のMNumericArrayを解放可能にする |
MNumericArray_disownAll | すべての共有MNumericArrayを解放可能にする |
MNumericArray_clone | MNumericArrayをコピーする |
MNumericArray_shareCount | MNumericArrayへの共有参照数を取得する |
MNumericArrayの作成と解放のためのコールバック関数
MNumericArray_getRank | MNumericArrayの階数を取得する |
MNumericArray_getDimensions | MNumericArrayの次元を取得する |
MNumericArray_getFlattenedLength | MNumericArrayの要素数を取得する |
MNumericArray_getType | MNumericArrayの型を取得する |
MNumericArrayから構造についての情報を取得するためのコールバック関数
MNumericArray_getData | MNumericArrayからデータを取得する |
MNumericArrayから要素を取得するためのコールバック関数
MNumericArray_convertType | MNumericArrayのデータ型を変換する |
MImage_new2D | 新しい2DのMImageを作成する |
MImage_new3D | 新しい3DのMImageを作成する |
MImage_free | MImageを解放する |
MImage_disown | 共有のMImageを解放可能にする |
MImage_disownAll | すべての共有MImageを解放可能にする |
MImage_clone | MImageをコピーする |
MImage_shareCount | MImageへの共有参照数を取得する |
MImage_getDataType | MImageのデータ型を取得する |
MImage_getRowCount | MImageの行数を取得する |
MImage_getColumnCount | MImageの列数を取得する |
MImage_getSliceCount | MImageのスライス数を取得する |
MImage_getRank | MImageの階数を取得する |
MImage_getChannels | MImageのチャンネル数を取得する |
MImage_alphaChannelQ | MImageがアルファチャンネルを持つかどうかを検証する |
MImage_interleavedQ | MImageの画素がインターリーブされて保存されているかどうかを検証する |
MImage_getColorSpace | MImageの色空間を取得する |
MImage_getFlattenedLength | MImageの要素数を取得する |
MImageから構造についての情報を取得するためのコールバック関数
MImage_getBit | 型「Bit」のMImageから要素を取得する |
MImage_getByte | 型「Byte」のMImageから要素を取得する |
MImage_getBit16 | 型「Bit16」のMImageから要素を取得する |
MImage_getReal32 | 型「Real32」のMImageから要素を取得する |
MImage_getReal | 型「Real64」のMImageから要素を取得する |
MImage_getRawData | MImageのデータを取得する |
MImage_getBitData | 「Bit」のMImageのデータを取得する |
MImage_getByteData | 「Byte」のMImageのデータを取得する |
MImage_getBit16Data | 「Bit16」のMImageのデータを取得する |
MImage_getReal32Data | 「Real32」のMImageのデータを取得する |
MImage_getRealData | 「Real64」のMImageのデータを取得する |
MImage_setBit | 型「Bit」のMImageの要素を設定する |
MImage_setByte | 型「Byte」のMImageの要素を設定する |
MImage_setBit16 | 型「Bit16」のMImageの要素を設定する |
MImage_setReal32 | 型「Real32」のMImageの要素を設定する |
MImage_setReal | 型「Real64」のMImageの要素を設定する |
MImage_convertType | MImageのデータ型を変換する |