TaskJniUtils

klasa publiczna TaskJniUtils

Narzędzia JNI dla interfejsu API zadań.

Klasy zagnieżdżone

interfejs TaskJniUtils.EmptyHandleProvider Składnia cukier, aby uzyskać natywny uchwyt z pustej listy parametrów.
interfejs TaskJniUtils.FdAndOptionsHandleProvider <T> Składnia cukier, aby uzyskać natywny uchwyt z deskryptora pliku i opcji.
interfejs TaskJniUtils.MultipleBuffersHandleProvider Składnia cukier, aby uzyskać nativeHandle z tablicy ByteBuffer s.

Stałe

długi INVALID_POINTER

Metody publiczne

statyczny <T> długi
createHandleFromFdAndOptions (kontekst kontekstowy, dostawca FdAndOptionsHandleProvider <T>, String libName, String filePath, opcje T)
Inicjuje JNI i zwraca uchwyt C++ z deskryptorem pliku i opcjami interfejsu API zadań.
statyczne długie
createHandleFromLibrary ( Dostawca TaskJniUtils.EmptyHandleProvider , String libName)
Inicjuje JNI i zwraca uchwyt C++, najpierw ładując bibliotekę C++, a następnie wywołuje TaskJniUtils.EmptyHandleProvider.createHandle() .
statyczne długie
createHandleWithMultipleAssetFilesFromLibrary (kontekst kontekstowy, dostawca TaskJniUtils.MultipleBuffersHandleProvider , String libName, String... filePaths)
Inicjuje JNI i zwraca dojście C++, najpierw ładując bibliotekę C++, a następnie wywołuje TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .
statyczne długie
statyczne długie
statyczny MappedByteBuffer
loadingMappedFile (kontekst kontekstowy, ciąg znaków filePath)
Ładuje plik z folderu zasobów poprzez mapowanie pamięci.
statyczna pustka
tryLoadLibrary ( ciąg libName)
Spróbuj załadować bibliotekę natywną, jeśli jest już załadowana, wróć bezpośrednio.

Metody dziedziczone

Stałe

publiczny statyczny końcowy długi INVALID_POINTER

Wartość stała: 0

Metody publiczne

public static long createHandleFromFdAndOptions (kontekst kontekstowy, dostawca FdAndOptionsHandleProvider <T>, String libName, String filePath, opcje T)

Inicjuje JNI i zwraca uchwyt C++ z deskryptorem pliku i opcjami interfejsu API zadań.

Parametry
kontekst kontekst aplikacji na Androida
dostawca dostawca, aby uzyskać uchwyt C++, zwykle zwracany z wywołania natywnego
nazwa biblioteki nazwa biblioteki C++ do załadowania
ścieżka pliku ścieżka pliku, który ma zostać załadowany
opcje opcje konfiguracji interfejsu API zadań używanego przez dostawcę
Zwroty
  • Uchwyt C++ tak długo
Rzuca
Wyjątek IO Jeśli plik modelu nie zostanie załadowany.

public static long createHandleFromLibrary ( dostawca TaskJniUtils.EmptyHandleProvider , String libName)

Inicjuje JNI i zwraca uchwyt C++, najpierw ładując bibliotekę C++, a następnie wywołuje TaskJniUtils.EmptyHandleProvider.createHandle() .

Parametry
dostawca dostawca, aby uzyskać uchwyt C++, zwykle zwracany z wywołania natywnego
nazwa biblioteki
Zwroty
  • Uchwyt C++ tak długo

public static long createHandleWithMultipleAssetFilesFromLibrary (kontekst kontekstowy, dostawca TaskJniUtils.MultipleBuffersHandleProvider , String libName, String... filePaths)

Inicjuje JNI i zwraca dojście C++, najpierw ładując bibliotekę C++, a następnie wywołuje TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .

Parametry
kontekst kontekst aplikacji
dostawca dostawca, aby uzyskać wskaźnik C++, zwykle zwracany z wywołania natywnego
nazwa biblioteki nazwa biblioteki C++ do załadowania
Ścieżki plików ścieżki plików do załadowania
Zwroty
  • Wskaźnik C++ tak długo
Rzuca
Wyjątek IO Jeśli plik modelu nie zostanie załadowany.

public static long createProtoBaseOptionsHandle ( BaseOptions baseOptions)

Parametry
Opcje bazowe

public static long createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions baseOptions, int LegacyNumThreads)

Parametry
Opcje bazowe
dziedzictwoNumThreads

public static MappedByteBuffer loadingMappedFile (kontekst kontekstowy, ciąg znaków filePath)

Ładuje plik z folderu zasobów poprzez mapowanie pamięci.

Parametry
kontekst Kontekst aplikacji umożliwiający dostęp do zasobów.
ścieżka pliku Ścieżka zasobu pliku.
Zwroty
  • załadowany plik mapowany w pamięci.
Rzuca
Wyjątek IO Jeśli plik modelu nie zostanie załadowany.

public static void tryLoadLibrary ( String libName)

Spróbuj załadować bibliotekę natywną, jeśli jest już załadowana, wróć bezpośrednio.

Parametry
nazwa biblioteki nazwa biblioteki