Table of Contents

Class Buffer

命名空間
easyar
組件
EasyAR.Sense.dll

Buffer 儲存了原始位元組陣列,可以用來存取影像資料。 在Java API中可以從 `Image`_ 中取得buffer然後複製資料到Java位元組陣列。 在EasyAR Sense的所有版本中,你都可以存取影像資料。參考 `Image`_ 。

public class Buffer : RefBase, IDisposable
繼承
Buffer
實作
繼承成員

方法

Clone()

public Buffer Clone()

CloneObject()

protected override object CloneObject()

copyFromByteArray(byte[])

public void copyFromByteArray(byte[] src)

參數

src

copyFromByteArray(byte[], int, int, int)

public void copyFromByteArray(byte[] src, int srcIndex, int index, int length)

參數

src
srcIndex
index
length

copyToByteArray(byte[])

public void copyToByteArray(byte[] dest)

參數

dest

copyToByteArray(int, byte[], int, int)

public void copyToByteArray(int index, byte[] dest, int destIndex, int length)

參數

index
dest
destIndex
length

create(int)

建立一個指定位元組長度的Buffer。

public static Buffer create(int size)

參數

size

data()

返回原始記憶體位址。

public virtual IntPtr data()

memoryCopy(IntPtr, IntPtr, int)

複製原始記憶體。主要用於記憶體操作不完善的語言或環境。

public static void memoryCopy(IntPtr src, IntPtr dest, int length)

參數

src
dest
length

partition(int, int)

建立一個子Buffer,並引用原Buffer。一個Buffer在所有子Buffer釋放後才會釋放。

public virtual Buffer partition(int index, int length)

參數

index
length

size()

Buffer的位元組長度。

public virtual int size()

tryCopyFrom(IntPtr, int, int, int)

嘗試從原始記憶體位址複製資料到Buffer中。如果複製成功,則返回true,否則返回false。失敗的原因有:來源資料範圍或目標資料範圍超出可用範圍。

public virtual bool tryCopyFrom(IntPtr src, int srcIndex, int index, int length)

參數

src
srcIndex
index
length

tryCopyTo(int, IntPtr, int, int)

嘗試從Buffer複製資料到原始記憶體位址中。如果複製成功,則返回true,否則返回false。失敗的原因有:來源資料範圍或目標資料範圍超出可用範圍。

public virtual bool tryCopyTo(int index, IntPtr dest, int destIndex, int length)

參數

index
dest
destIndex
length

wrap(IntPtr, int, Action)

包裝一個指定長度的原始記憶體塊。在Buffer被完全釋放的時候,會呼叫deleter回呼,執行使用者自訂記憶體銷毀行為。deleter必須是執行緒安全的。

public static Buffer wrap(IntPtr ptr, int size, Action deleter)

參數

ptr
size
deleter

wrapByteArray(byte[])

public static Buffer wrapByteArray(byte[] bytes)

參數

bytes

wrapByteArray(byte[], int, int)

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

參數

bytes
index
length

wrapByteArray(byte[], int, int, Action)

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

參數

bytes
index
length
deleter