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)
參數
srcsrcIndexindexlength
copyToByteArray(byte[])
public void copyToByteArray(byte[] dest)
參數
dest
copyToByteArray(int, byte[], int, int)
public void copyToByteArray(int index, byte[] dest, int destIndex, int length)
參數
indexdestdestIndexlength
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)
參數
srcdestlength
partition(int, int)
建立一個子Buffer,並引用原Buffer。一個Buffer在所有子Buffer釋放後才會釋放。
public virtual Buffer partition(int index, int length)
參數
indexlength
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)
參數
srcsrcIndexindexlength
tryCopyTo(int, IntPtr, int, int)
嘗試從Buffer複製資料到原始記憶體位址中。如果複製成功,則返回true,否則返回false。失敗的原因有:來源資料範圍或目標資料範圍超出可用範圍。
public virtual bool tryCopyTo(int index, IntPtr dest, int destIndex, int length)
參數
indexdestdestIndexlength
wrap(IntPtr, int, Action)
包裝一個指定長度的原始記憶體塊。在Buffer被完全釋放的時候,會呼叫deleter回呼,執行使用者自訂記憶體銷毀行為。deleter必須是執行緒安全的。
public static Buffer wrap(IntPtr ptr, int size, Action deleter)
參數
ptrsizedeleter
wrapByteArray(byte[])
public static Buffer wrapByteArray(byte[] bytes)
參數
bytes
wrapByteArray(byte[], int, int)
public static Buffer wrapByteArray(byte[] bytes, int index, int length)
參數
bytesindexlength
wrapByteArray(byte[], int, int, Action)
public static Buffer wrapByteArray(byte[] bytes, int index, int length, Action deleter)
參數
bytesindexlengthdeleter