Table of Contents

Class Buffer

Ruang Nama
easyar

Buffer menyimpan array byte mentah yang dapat digunakan untuk mengakses data gambar. Dalam Java API, Anda bisa mendapatkan buffer dari Image lalu menyalin datanya ke array byte Java. Di semua versi EasyAR Sense, Anda dapat mengakses data gambar. Lihat Image.

Buffer

Metode

wrap

Membungkus satu blok memori mentah dengan panjang tertentu. Ketika Buffer sepenuhnya dilepaskan, callback deleter akan dipanggil untuk menjalankan perilaku penghancuran memori kustom pengguna. Deleter harus aman untuk thread.

void easyar_Buffer_wrap(void * ptr, int size, easyar_FunctorOfVoid deleter, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> wrap(void * ptr, int size, std::function<void()> deleter)
public static @Nonnull Buffer wrap(long ptr, int size, @Nonnull FunctorOfVoid deleter)
companion object fun wrap(ptr: Long, size: Int, deleter: FunctorOfVoid): Buffer
+ (easyar_Buffer *)wrap:(void *)ptr size:(int)size deleter:(void (^)())deleter
public static func wrap(_ ptr: OpaquePointer?, _ size: Int32, _ deleter: @escaping () -> Void) -> Buffer
public static Buffer wrap(IntPtr ptr, int size, Action deleter)

Parameter

Nama Tipe Deskripsi
ptr IntPtr
size Int32
deleter Action

Mengembalikan

Tipe Deskripsi
Buffer

create

Membuat Buffer dengan panjang byte tertentu.

void easyar_Buffer_create(int size, easyar_Buffer * * Return)
static std::shared_ptr<Buffer> create(int size)
public static @Nonnull Buffer create(int size)
companion object fun create(size: Int): Buffer
+ (easyar_Buffer *)create:(int)size
public static func create(_ size: Int32) -> Buffer
public static Buffer create(int size)

Parameter

Nama Tipe Deskripsi
size Int32

Mengembalikan

Tipe Deskripsi
Buffer

data

Mengembalikan alamat memori mentah.

void * easyar_Buffer_data(const easyar_Buffer * This)
void * data()
public long data()
fun data(): Long
- (void *)data
public func data() -> OpaquePointer?
public virtual IntPtr data()

Mengembalikan

Tipe Deskripsi
IntPtr

size

Panjang byte Buffer.

int easyar_Buffer_size(const easyar_Buffer * This)
int size()
public int size()
fun size(): Int
- (int)size
public func size() -> Int32
public virtual int size()

Mengembalikan

Tipe Deskripsi
Int32

memoryCopy

Menyalin memori mentah. Utamanya digunakan untuk bahasa atau lingkungan yang kurang mendukung manipulasi memori.

void easyar_Buffer_memoryCopy(void * src, void * dest, int length)
static void memoryCopy(void * src, void * dest, int length)
public static void memoryCopy(long src, long dest, int length)
companion object fun memoryCopy(src: Long, dest: Long, length: Int): Unit
+ (void)memoryCopy:(void *)src dest:(void *)dest length:(int)length
public static func memoryCopy(_ src: OpaquePointer?, _ dest: OpaquePointer?, _ length: Int32) -> Void
public static void memoryCopy(IntPtr src, IntPtr dest, int length)

Parameter

Nama Tipe Deskripsi
src IntPtr
dest IntPtr
length Int32

Mengembalikan

Tipe Deskripsi
Void

tryCopyFrom

Mencoba menyalin data dari alamat memori mentah ke Buffer. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

bool easyar_Buffer_tryCopyFrom(easyar_Buffer * This, void * src, int srcIndex, int index, int length)
bool tryCopyFrom(void * src, int srcIndex, int index, int length)
public boolean tryCopyFrom(long src, int srcIndex, int index, int length)
fun tryCopyFrom(src: Long, srcIndex: Int, index: Int, length: Int): Boolean
- (bool)tryCopyFrom:(void *)src srcIndex:(int)srcIndex index:(int)index length:(int)length
public func tryCopyFrom(_ src: OpaquePointer?, _ srcIndex: Int32, _ index: Int32, _ length: Int32) -> Bool
public virtual bool tryCopyFrom(IntPtr src, int srcIndex, int index, int length)

Parameter

Nama Tipe Deskripsi
src IntPtr
srcIndex Int32
index Int32
length Int32

Mengembalikan

Tipe Deskripsi
Boolean

tryCopyTo

Mencoba menyalin data dari Buffer ke alamat memori mentah. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

bool easyar_Buffer_tryCopyTo(easyar_Buffer * This, int index, void * dest, int destIndex, int length)
bool tryCopyTo(int index, void * dest, int destIndex, int length)
public boolean tryCopyTo(int index, long dest, int destIndex, int length)
fun tryCopyTo(index: Int, dest: Long, destIndex: Int, length: Int): Boolean
- (bool)tryCopyTo:(int)index dest:(void *)dest destIndex:(int)destIndex length:(int)length
public func tryCopyTo(_ index: Int32, _ dest: OpaquePointer?, _ destIndex: Int32, _ length: Int32) -> Bool
public virtual bool tryCopyTo(int index, IntPtr dest, int destIndex, int length)

Parameter

Nama Tipe Deskripsi
index Int32
dest IntPtr
destIndex Int32
length Int32

Mengembalikan

Tipe Deskripsi
Boolean

partition

Membuat sub-Buffer yang merujuk ke buffer asli. Sebuah Buffer baru akan dilepaskan setelah semua sub-Buffer-nya dilepaskan.

void easyar_Buffer_partition(easyar_Buffer * This, int index, int length, easyar_Buffer * * Return)
std::shared_ptr<Buffer> partition(int index, int length)
public @Nonnull Buffer partition(int index, int length)
fun partition(index: Int, length: Int): Buffer
- (easyar_Buffer *)partition:(int)index length:(int)length
public func partition(_ index: Int32, _ length: Int32) -> Buffer
public virtual Buffer partition(int index, int length)

Parameter

Nama Tipe Deskripsi
index Int32
length Int32

Mengembalikan

Tipe Deskripsi
Buffer

wrapByteArray

Membungkus array byte.

public static @Nonnull Buffer wrapByteArray(byte @Nonnull[] bytes)
companion object fun wrapByteArray(bytes: Array<Byte>): Buffer
public static Buffer wrapByteArray(byte[] bytes)

Parameter

Nama Tipe Deskripsi
bytes

Mengembalikan

Tipe Deskripsi
Buffer

wrapByteArray

Membungkus array byte. Dapat menentukan posisi awal dan panjang, serta apakah Buffer hanya-baca atau dapat ditulis (Buffer hanya-baca mungkin dilepaskan lebih cepat). Dapat menentukan callback deleter; saat Buffer sepenuhnya dilepaskan, deleter dipanggil untuk menghancurkan memori kustom. Deleter harus aman untuk thread.

public static @Nonnull Buffer wrapByteArray(byte @Nonnull[] bytes, int index, int length, boolean readOnly, @Nonnull FunctorOfVoid deleter)
companion object fun wrapByteArray(bytes: Array<Byte>, index: Int, length: Int, readOnly: Boolean, deleter: FunctorOfVoid): Buffer

Parameter

Nama Tipe Deskripsi
bytes
index Int32
length Int32
readOnly Boolean
deleter Action

Mengembalikan

Tipe Deskripsi
Buffer

wrapByteArray

Membungkus array byte. Dapat menentukan posisi awal dan panjang.

public static Buffer wrapByteArray(byte[] bytes, int index, int length)

Parameter

Nama Tipe Deskripsi
bytes
index Int32
length Int32

Mengembalikan

Tipe Deskripsi
Buffer

wrapByteArray

Membungkus array byte. Dapat menentukan posisi awal, panjang, dan callback deleter. Saat Buffer sepenuhnya dilepaskan, deleter dipanggil untuk menghancurkan memori kustom. Deleter harus aman untuk thread.

public static Buffer wrapByteArray(byte[] bytes, int index, int length, Action deleter)

Parameter

Nama Tipe Deskripsi
bytes
index Int32
length Int32
deleter Action

Mengembalikan

Tipe Deskripsi
Buffer

wrapBuffer

Membungkus java.nio.Buffer.

public static @Nonnull Buffer wrapBuffer(java.nio.@Nonnull Buffer directBuffer)
companion object fun wrapBuffer(directBuffer: java.nio.Buffer): Buffer

Parameter

Nama Tipe Deskripsi
directBuffer

Mengembalikan

Tipe Deskripsi
Buffer

wrapBuffer

Membungkus java.nio.Buffer. Dapat menentukan callback deleter. Saat Buffer sepenuhnya dilepaskan, deleter dipanggil untuk menghancurkan memori kustom. Deleter harus aman untuk thread.

public static @Nonnull Buffer wrapBuffer(java.nio.@Nonnull Buffer directBuffer, @Nonnull FunctorOfVoid deleter)
companion object fun wrapBuffer(directBuffer: java.nio.Buffer, deleter: Action): Buffer

Parameter

Nama Tipe Deskripsi
directBuffer
deleter Action

Mengembalikan

Tipe Deskripsi
Buffer

copyFromByteArray

Menyalin data dari array byte ke Buffer. Melempar pengecualian jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public void copyFromByteArray(byte @Nonnull[] src)
fun copyFromByteArray(src: Array<Byte>): Unit
public void copyFromByteArray(byte[] src)

Parameter

Nama Tipe Deskripsi
src

copyFromByteArray

Menyalin data dari array byte ke Buffer. Melempar pengecualian jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public void copyFromByteArray(byte @Nonnull[] src, int srcIndex, int index, int length)
fun copyFromByteArray(src: Array<Byte>, srcIndex: Int, index: Int, length: Int): Unit
public void copyFromByteArray(byte[] src, int srcIndex, int index, int length)

Parameter

Nama Tipe Deskripsi
src
srcIndex Int32
index Int32
length Int32

copyToByteArray

Menyalin data dari Buffer ke array byte. Melempar pengecualian jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public void copyToByteArray(byte @Nonnull[] dest)
fun copyToByteArray(dest: Array<Byte>): Unit
public void copyToByteArray(byte[] dest)

Parameter

Nama Tipe Deskripsi
dest

copyToByteArray

Menyalin data dari Buffer ke array byte. Melempar pengecualian jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public void copyToByteArray(int index, byte @Nonnull[] dest, int destIndex, int length)
fun copyToByteArray(index: Int, dest: Array<Byte>, destIndex: Int, length: Int): Unit
public void copyToByteArray(int index, byte[] dest, int destIndex, int length)

Parameter

Nama Tipe Deskripsi
index Int32
dest
destIndex Int32
length Int32

tryCopyFromByteArray

Menyalin data dari array byte ke Buffer. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public func tryCopyFromByteArray(_ src: [UInt8]) -> Bool

Parameter

Nama Tipe Deskripsi
src

Mengembalikan

Tipe Deskripsi
Boolean

tryCopyFromByteArray

Menyalin data dari array byte ke Buffer. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public func tryCopyFromByteArray(_ src: [UInt8], _ srcIndex: Int32, _ index: Int32, _ length: Int32) -> Bool

Parameter

Nama Tipe Deskripsi
src
srcIndex Int32
index Int32
length Int32

Mengembalikan

Tipe Deskripsi
Boolean

tryCopyToByteArray

Menyalin data dari Buffer ke array byte. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public func tryCopyToByteArray(_ dest: [UInt8]) -> Bool

Parameter

Nama Tipe Deskripsi
dest

Mengembalikan

Tipe Deskripsi
Boolean

tryCopyToByteArray

Menyalin data dari Buffer ke array byte. Mengembalikan true jika berhasil, false jika gagal. Penyebab kegagalan: rentang data sumber atau tujuan melebihi jangkauan yang tersedia.

public func tryCopyToByteArray(_ index: Int32, _ dest: [UInt8], _ destIndex: Int32, _ length: Int32) -> Bool

Parameter

Nama Tipe Deskripsi
index Int32
dest
destIndex Int32
length Int32

Mengembalikan

Tipe Deskripsi
Boolean