Table of Contents

Class Buffer

Namespace
easyar
Assembly
EasyAR.Sense.dll

Buffer speichert ein Array von Rohbytes und kann verwendet werden, um auf Bilddaten zuzugreifen. In der Java API kann der Buffer von `Image`_ abgerufen und Daten in ein Java-Byte-Array kopiert werden. In allen Versionen von EasyAR Sense können Sie auf Bilddaten zugreifen. Siehe `Image`_.

public class Buffer : RefBase, IDisposable
Vererbung
Buffer
Implementiert
Geerbte Mitglieder

Methoden

Clone()

public Buffer Clone()

CloneObject()

protected override object CloneObject()

copyFromByteArray(byte[])

public void copyFromByteArray(byte[] src)

Parameter

src

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

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

Parameter

src
srcIndex
index
length

copyToByteArray(byte[])

public void copyToByteArray(byte[] dest)

Parameter

dest

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

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

Parameter

index
dest
destIndex
length

create(int)

Erstellt einen Buffer mit angegebener Byte-Länge.

public static Buffer create(int size)

Parameter

size

data()

Gibt die rohe Speicheradresse zurück.

public virtual IntPtr data()

memoryCopy(IntPtr, IntPtr, int)

Kopiert den Rohspeicher. Hauptsächlich für Sprachen oder Umgebungen mit unvollständiger Speicherverwaltung verwendet.

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

Parameter

src
dest
length

partition(int, int)

Erstellt einen Sub-Buffer, der auf den ursprünglichen Buffer verweist. Ein Buffer wird erst freigegeben, wenn alle seine Sub-Buffer freigegeben sind.

public virtual Buffer partition(int index, int length)

Parameter

index
length

size()

Die Byte-Länge des Buffers.

public virtual int size()

tryCopyFrom(IntPtr, int, int, int)

Versucht, Daten von einer rohen Speicheradresse in den Buffer zu kopieren. Gibt true zurück, wenn der Kopiervorgang erfolgreich war, andernfalls false. Mögliche Fehlerursachen: Quell- oder Zielbereich überschreitet den verfügbaren Bereich.

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

Parameter

src
srcIndex
index
length

tryCopyTo(int, IntPtr, int, int)

Versucht, Daten aus dem Buffer an eine rohe Speicheradresse zu kopieren. Gibt true zurück, wenn der Kopiervorgang erfolgreich war, andernfalls false. Mögliche Fehlerursachen: Quell- oder Zielbereich überschreitet den verfügbaren Bereich.

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

Parameter

index
dest
destIndex
length

wrap(IntPtr, int, Action)

Umschließt einen Rohspeicherblock mit angegebener Länge. Wenn der Buffer vollständig freigegeben wird, wird der Deleter-Callback aufgerufen, um benutzerdefinierte Speicherbereinigungsaktionen auszuführen. Der Deleter muss threadsicher sein.

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

Parameter

ptr
size
deleter

wrapByteArray(byte[])

public static Buffer wrapByteArray(byte[] bytes)

Parameter

bytes

wrapByteArray(byte[], int, int)

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

Parameter

bytes
index
length

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

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

Parameter

bytes
index
length
deleter