blob: e10b671151f7b77460df5d123f4f8b59cdcce503 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001
MG Mud User88f12472016-06-24 23:31:02 +02002CreateRingBuffer()
Zesstra953f9972017-02-18 15:37:36 +01003******************
MG Mud User88f12472016-06-24 23:31:02 +02004
MG Mud User88f12472016-06-24 23:31:02 +02005
Zesstra953f9972017-02-18 15:37:36 +01006FUNKTION
7========
MG Mud User88f12472016-06-24 23:31:02 +02008
Zesstra953f9972017-02-18 15:37:36 +01009 protected struct std_ringbuffer CreateRingBuffer(int size, int newmode);
MG Mud User88f12472016-06-24 23:31:02 +020010
MG Mud User88f12472016-06-24 23:31:02 +020011
Zesstra953f9972017-02-18 15:37:36 +010012DEFINIERT IN
13============
MG Mud User88f12472016-06-24 23:31:02 +020014
Zesstra953f9972017-02-18 15:37:36 +010015 /std/util/ringbuffer.c
16 /sys/util/ringbuffer.h
MG Mud User88f12472016-06-24 23:31:02 +020017
MG Mud User88f12472016-06-24 23:31:02 +020018
Zesstra953f9972017-02-18 15:37:36 +010019ARGUMENTE
20=========
21
22 size - Groesse des neuen Ringpuffers (int)
23 newmode - Ausgabemodus beim Abrufen des Puffers (int):
24 MODE_FIFO: First-in-First-Out
25 MODE_LIFO: Last-in-First-Out
26
27
28BESCHREIBUNG
29============
30
31 Diese Funktion erstellt einen neuen, leeren Ringpuffer der Groesse <size>
32 und liefert ihn zurueck. Die Daten des Puffers werden spaeter gemaess
33 <newmode> so gespeichert, dass bei der Ausgabe des Puffers mittels
34 RingBufferGet() die entweder die neuesten Daten zuerst (MODE_LIFO) oder
35 die aeltesten Daten zuerst (MODE_FIFO) geliefert werden.
36
37
38RUeCKGABEWERT
39=============
40
41 Der neue Ringpuffer. Dieser wird in einer Struct std_ringbuffer
42 gespeichert. Er ist in einer Variable 'mixed' oder in einer mittels
43 'struct std_ringbuffer' angelegten Variable speicherbar.
44
45
46BEMERKUNGEN
47===========
48
49 Der gelieferte Ringpuffer sollte nicht per Hand verarbeitet oder
50 genaendert werden, sondern nur ueber die Verwaltungsfunktionen aus
51 /std/util/ringbuffer.c.
52
53
54BEISPIELE
55=========
56
57 // Variable anlegen:
58 struct std_ringbuffer buffer;
59 // _oder_: mixed buffer;
60 // neuen Puffer mit max. 50 Elementen anlegen, der bei der Abfrage die
61 // aeltesten Daten zuerst zurueckliefert:
62 buffer = CreateRingBuffer(50, MODE_FIFO);
63
64
65SIEHE AUCH
66==========
67
68 RingBufferPut(), RingBufferGet(), ResizeRingBuffer()
MG Mud User88f12472016-06-24 23:31:02 +020069
7023.05.2008, Zesstra