Table of Contents

Class JniUtility

名前空間
easyar

JNI ユーティリティクラス。 Unity で Java の配列と ByteBuffer をラップするために使用されます。 iOS プラットフォームはサポートされません。

JniUtility

メソッド

wrapByteArray

Java の byte 配列 byte[] をラップします。

void easyar_JniUtility_wrapByteArray(void * bytes, bool readOnly, easyar_FunctorOfVoid deleter, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> wrapByteArray(void * bytes, bool readOnly, std::function<void()> deleter)
public static @Nonnull Buffer wrapByteArray(long bytes, boolean readOnly, @Nonnull FunctorOfVoid deleter)
companion object fun wrapByteArray(bytes: Long, readOnly: Boolean, deleter: FunctorOfVoid): Buffer
+ (easyar_Buffer *)wrapByteArray:(void *)bytes readOnly:(bool)readOnly deleter:(void (^)())deleter
public static func wrapByteArray(_ bytes: OpaquePointer?, _ readOnly: Bool, _ deleter: @escaping () -> Void) -> Buffer
public static Buffer wrapByteArray(IntPtr bytes, bool readOnly, Action deleter)

パラメーター

名前 説明
bytes IntPtr
readOnly Boolean
deleter Action

戻り値

説明
Buffer

wrapBuffer

Java java.nio.ByteBuffer 内の direct buffer をラップします。

void easyar_JniUtility_wrapBuffer(void * directBuffer, easyar_FunctorOfVoid deleter, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> wrapBuffer(void * directBuffer, std::function<void()> deleter)
public static @Nonnull Buffer wrapBuffer(long directBuffer, @Nonnull FunctorOfVoid deleter)
companion object fun wrapBuffer(directBuffer: Long, deleter: FunctorOfVoid): Buffer
+ (easyar_Buffer *)wrapBuffer:(void *)directBuffer deleter:(void (^)())deleter
public static func wrapBuffer(_ directBuffer: OpaquePointer?, _ deleter: @escaping () -> Void) -> Buffer
public static Buffer wrapBuffer(IntPtr directBuffer, Action deleter)

パラメーター

名前 説明
directBuffer IntPtr
deleter Action

戻り値

説明
Buffer

getDirectBufferAddress

JNIEnv->GetDirectBufferAddress を呼び出して java.nio.ByteBuffer 内の direct buffer の生アドレスを取得します。

void * easyar_JniUtility_getDirectBufferAddress(void * directBuffer)
static void * getDirectBufferAddress(void * directBuffer)
public static long getDirectBufferAddress(long directBuffer)
companion object fun getDirectBufferAddress(directBuffer: Long): Long
+ (void *)getDirectBufferAddress:(void *)directBuffer
public static func getDirectBufferAddress(_ directBuffer: OpaquePointer?) -> OpaquePointer?
public static IntPtr getDirectBufferAddress(IntPtr directBuffer)

パラメーター

名前 説明
directBuffer IntPtr

戻り値

説明
IntPtr

newJniGlobalPointer

JNI 内の Java オブジェクトのグローバル参照ポインターを取得します。

public static long Buffer newJniGlobalPointer(java.lang.@Nonnull Object obj)
companion object fun newJniGlobalPointer(obj: java.lang.Object): Long

パラメーター

名前 説明
obj

戻り値

説明

deleteJniGlobalPointer

JNI 内の Java オブジェクトのグローバル参照ポインターを解放します。

public static long Buffer newJniGlobalPointer(java.lang.@Nonnull Object obj)
companion object fun newJniGlobalPointer(obj: java.lang.Object): Long

パラメーター

名前 説明
obj

戻り値

説明