RingBufferGet()¶
FUNKTION¶
protected mixed RingBufferGet(struct std_ringbuffer buf);
DEFINIERT IN¶
/std/util/ringbuffer.c
/sys/util/ringbuffer.h
ARGUMENTE¶
buf - Ringpuffer, welcher ausgeben werden soll
BESCHREIBUNG¶
Diese Funktion liefert die Daten des Ringpuffers in Form eines Arrays
zurueck, welches dann weiterverarbeitet werden kann.
Die Reihenfolge der Daten ist entsprechend des beim Anlegen des
Ringpuffers angebenen Modes:
MODE_FIFO: aelteste Daten zuerst
MODE_LIFO: neueste Daten zuerst
BEMERKUNGEN¶
Aenderungen am Array beeinflussen die Daten des Ringpuffers nicht. Aber:
Hierbei werden die Daten nicht tief kopiert. D.h. enthaelt der Ringpuffer
Referenzen auf weitere Daten, zeigen der Ringpuffer und das hier
gelieferte Array auf die gleichen Daten.
BEISPIELE¶
// Ringpuffer anlegen:
struct std_ringbuffer buffer = CreateRingBuffer(10, MODE_FIFO);
// 15 Werte reinschreiben:
foreach(int i: 15) RingBufferPut(buffer, i);
// Werte abrufen:
mixed array=RingBufferGet(buffer);
// array enthaelt nun:
// ({5,6,7,8,9,10,11,12,13,14})