RingBufferPut()
***************


FUNKTION
========

   protected void RingBufferPut(struct std_ringbuffer buf, mixed val);


DEFINIERT IN
============

   /std/util/ringbuffer.c
   /sys/util/ringbuffer.h


ARGUMENTE
=========

   buf - Ringpuffer, in den <val> geschrieben werden soll
   val - neues Datum


BESCHREIBUNG
============

   Diese Funktion schreibt <val> in den Ringpuffer <buf>. Hierbei wird ggf.
   das aelteste im Puffer existierende Datum ueberschrieben. <buf> muss eine
   von CreateRingBuffer() oder ResizeRingBuffer() zurueckgelieferter
   Ringpuffer sein.


BEISPIELE
=========

   // Ringpuffer anlegen:
   struct std_ringbuffer buffer = CreateRingBuffer(10, MODE_FIFO);
   // 15 Werte reinschreiben:
   foreach(int i: 15) RingBufferPut(buffer, i);


SIEHE AUCH
==========

   RingBufferGet(), CreateRingBuffer(), ResizeRingBuffer()

23.05.2008, Zesstra
