パブリック クラスTaskJniUtils
タスク API 用の JNI ユーティリティ。
ネストされたクラス
インターフェース | TaskJniUtils.EmptyHandleProvider | 空のパラメータリストからnativeHandleを取得するためのシュガー構文。 | |
インターフェース | TaskJniUtils.FdAndOptionsHandleProvider <T> | ファイル記述子とオプションからnativeHandleを取得するための構文シュガー。 | |
インターフェース | TaskJniUtils.MultipleBuffersHandleProvider | ByteBuffer の配列からネイティブハンドルを取得するための構文シュガー。 |
定数
長さ | INVALID_POINTER |
パブリックメソッド
静的 <T> ロング | createHandleFromFdAndOptions (コンテキスト コンテキスト、 FdAndOptionsHandleProvider <T> プロバイダー、文字列libName、文字列filePath、T オプション) JNI を初期化し、ファイル記述子とタスク API のオプションを含む C++ ハンドルを返します。 |
静的ロング | createHandleFromLibrary ( TaskJniUtils.EmptyHandleProviderプロバイダー、 String libName) JNI を初期化し、最初に C++ ライブラリをロードして C++ ハンドルを返し、次に TaskJniUtils.EmptyHandleProvider.createHandle() を呼び出します。 |
静的ロング | createHandleWithMultipleAssetFilesFromLibrary (コンテキスト コンテキスト、 TaskJniUtils.MultipleBuffersHandleProviderプロバイダー、 String libName、 String... filePaths) JNI を初期化し、最初に C++ ライブラリをロードして C++ ハンドルを返し、次に TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) を呼び出します。 |
静的ロング | |
静的ロング | createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions BaseOptions, int LegacyNumThreads) |
静的MappedByteBuffer | |
静的ボイド |
継承されたメソッド
定数
パブリック静的最終ロングINVALID_POINTER
定数値: 0
パブリックメソッド
public static long createHandleFromFdAndOptions (コンテキスト コンテキスト、 FdAndOptionsHandleProvider <T> プロバイダー、 String libName、 String filePath、T オプション)
JNI を初期化し、ファイル記述子とタスク API のオプションを含む C++ ハンドルを返します。
パラメーター
コンテクスト | Android アプリのコンテキスト |
---|---|
プロバイダー | 通常はネイティブ呼び出しから返される C++ ハンドルを取得するプロバイダー |
ライブラリ名 | ロードする C++ ライブラリの名前 |
ファイルパス | ロードするファイルのパス |
オプション | プロバイダーが使用するタスク API を設定するためのオプション |
戻り値
- C++ ハンドルの長さ
投げる
IO例外 | モデルファイルのロードに失敗した場合。 |
---|
public static long createHandleFromLibrary ( TaskJniUtils.EmptyHandleProviderプロバイダー、 String libName)
JNI を初期化し、最初に C++ ライブラリをロードして C++ ハンドルを返し、次にTaskJniUtils.EmptyHandleProvider.createHandle()
を呼び出します。
パラメーター
プロバイダー | 通常はネイティブ呼び出しから返される C++ ハンドルを取得するプロバイダー |
---|---|
ライブラリ名 |
戻り値
- C++ ハンドルの長さ
public static long createHandleWithMultipleAssetFilesFromLibrary (コンテキスト コンテキスト、 TaskJniUtils.MultipleBuffersHandleProviderプロバイダー、 String libName、 String... filePaths)
JNI を初期化し、最初に C++ ライブラリをロードして C++ ハンドルを返し、次にTaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer)
を呼び出します。
パラメーター
コンテクスト | アプリのコンテキスト |
---|---|
プロバイダー | 通常はネイティブ呼び出しから返される C++ ポインターを取得するプロバイダー |
ライブラリ名 | ロードする C++ ライブラリの名前 |
ファイルパス | ロードするファイルパス |
戻り値
- C++ ポインターの長さ
投げる
IO例外 | モデルファイルのロードに失敗した場合。 |
---|
public static long createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptionsbaseOptions , int LegacyNumThreads)
パラメーター
基本オプション | |
---|---|
従来のスレッド数 |
public static MappedByteBufferloadMappedFile (コンテキスト context, String filePath)
メモリ マッピングを通じてアセット フォルダーからファイルを読み込みます。
パラメーター
コンテクスト | アセットにアクセスするためのアプリケーション コンテキスト。 |
---|---|
ファイルパス | ファイルのアセットパス。 |
戻り値
- ロードされたメモリ マップト ファイル。
投げる
IO例外 | モデルファイルのロードに失敗した場合。 |
---|
public static void tryLoadLibrary ( String libName)
ネイティブ ライブラリをロードしてみてください。すでにロードされている場合は、直接戻ります。
パラメーター
ライブラリ名 | ライブラリの名前 |
---|