3
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4
4
<refentry id="libprelude-prelude-msgbuf">
6
<refentrytitle role="top_of_page">prelude-msgbuf</refentrytitle>
6
<refentrytitle role="top_of_page" id="libprelude-prelude-msgbuf.top_of_page">prelude-msgbuf</refentrytitle>
7
7
<manvolnum>3</manvolnum>
8
8
<refmiscinfo>LIBPRELUDE Library</refmiscinfo>
14
14
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
17
<refsynopsisdiv role="synopsis">
17
<refsynopsisdiv id="libprelude-prelude-msgbuf.synopsis" role="synopsis">
18
18
<title role="synopsis.title">Synopsis</title>
24
21
typedef <link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link>;
25
22
enum <link linkend="prelude-msgbuf-flags-t">prelude_msgbuf_flags_t</link>;
26
23
<link linkend="int">int</link> <link linkend="prelude-msgbuf-new">prelude_msgbuf_new</link> (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> **msgbuf);
32
29
const <link linkend="void">void</link> *data);
33
30
<link linkend="prelude-msg-t">prelude_msg_t</link>* <link linkend="prelude-msgbuf-get-msg">prelude_msgbuf_get_msg</link> (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);
34
31
<link linkend="void">void</link> <link linkend="prelude-msgbuf-set-callback">prelude_msgbuf_set_callback</link> (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
35
<link linkend="int">int</link> (*send_msg) (prelude_msgbuf_t *msgbuf, prelude_msg_t *msg));
32
<link linkend="int">int</link> (send_msgprelude_msgbuf_t *msgbuf, prelude_msg_t *msg) ());
36
33
<link linkend="void">void</link> <link linkend="prelude-msgbuf-set-data">prelude_msgbuf_set_data</link> (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
37
34
<link linkend="void">void</link> *data);
38
35
<link linkend="void">void</link>* <link linkend="prelude-msgbuf-get-data">prelude_msgbuf_get_data</link> (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);
53
<refsect1 role="desc">
50
<refsect1 id="libprelude-prelude-msgbuf.description" role="desc">
54
51
<title role="desc.title">Description</title>
60
<refsect1 role="details">
57
<refsect1 id="libprelude-prelude-msgbuf.details" role="details">
61
58
<title role="details.title">Details</title>
63
<title><anchor id="prelude-msgbuf-t" role="typedef"/>prelude_msgbuf_t</title>
64
<indexterm><primary>prelude_msgbuf_t</primary></indexterm><programlisting>typedef struct prelude_msgbuf prelude_msgbuf_t;
59
<refsect2 id="prelude-msgbuf-t" role="typedef">
60
<title>prelude_msgbuf_t</title>
61
<indexterm zone="prelude-msgbuf-t"><primary>prelude_msgbuf_t</primary></indexterm><programlisting>typedef struct prelude_msgbuf prelude_msgbuf_t;
70
<title><anchor id="prelude-msgbuf-flags-t" role="enum"/>enum prelude_msgbuf_flags_t</title>
71
<indexterm><primary>prelude_msgbuf_flags_t</primary></indexterm><programlisting>typedef enum {
66
<refsect2 id="prelude-msgbuf-flags-t" role="enum">
67
<title>enum prelude_msgbuf_flags_t</title>
68
<indexterm zone="prelude-msgbuf-flags-t"><primary>prelude_msgbuf_flags_t</primary></indexterm><programlisting>typedef enum {
72
69
PRELUDE_MSGBUF_FLAGS_ASYNC = 0x01
73
70
} prelude_msgbuf_flags_t;
79
<title><anchor id="prelude-msgbuf-new" role="function"/>prelude_msgbuf_new ()</title>
80
<indexterm><primary>prelude_msgbuf_new</primary></indexterm><programlisting><link linkend="int">int</link> prelude_msgbuf_new (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> **msgbuf);</programlisting>
75
<refsect2 id="prelude-msgbuf-new" role="function">
76
<title>prelude_msgbuf_new ()</title>
77
<indexterm zone="prelude-msgbuf-new"><primary>prelude_msgbuf_new</primary></indexterm><programlisting><link linkend="int">int</link> prelude_msgbuf_new (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> **msgbuf);</programlisting>
82
79
Create a new <link linkend="prelude-msgbuf-t"><type>prelude_msgbuf_t</type></link> object and store it into <parameter>msgbuf</parameter>.
83
80
You can then write data to <parameter>msgbuf</parameter> using the <link linkend="prelude-msgbuf-set"><function>prelude_msgbuf_set()</function></link> function.
94
91
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> 0 on success, or a negative value if an error occured.
95
92
</simpara></listitem></varlistentry>
96
93
</variablelist></refsect2>
98
<title><anchor id="prelude-msgbuf-destroy" role="function"/>prelude_msgbuf_destroy ()</title>
99
<indexterm><primary>prelude_msgbuf_destroy</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_destroy (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
94
<refsect2 id="prelude-msgbuf-destroy" role="function">
95
<title>prelude_msgbuf_destroy ()</title>
96
<indexterm zone="prelude-msgbuf-destroy"><primary>prelude_msgbuf_destroy</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_destroy (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
101
98
Destroy <parameter>msgbuf</parameter>, all data remaining will be flushed.</para>
106
103
<listitem><simpara> Pointer on a <link linkend="prelude-msgbuf-t"><type>prelude_msgbuf_t</type></link> object.
107
104
</simpara></listitem></varlistentry>
108
105
</variablelist></refsect2>
110
<title><anchor id="prelude-msgbuf-mark-end" role="function"/>prelude_msgbuf_mark_end ()</title>
111
<indexterm><primary>prelude_msgbuf_mark_end</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_mark_end (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
106
<refsect2 id="prelude-msgbuf-mark-end" role="function">
107
<title>prelude_msgbuf_mark_end ()</title>
108
<indexterm zone="prelude-msgbuf-mark-end"><primary>prelude_msgbuf_mark_end</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_mark_end (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
113
110
This function should be called to tell the msgbuf subsystem
114
111
that you finished writing your message.</para>
119
116
<listitem><simpara> Pointer on <link linkend="prelude-msgbuf-t"><type>prelude_msgbuf_t</type></link> object.
120
117
</simpara></listitem></varlistentry>
121
118
</variablelist></refsect2>
123
<title><anchor id="prelude-msgbuf-set" role="function"/>prelude_msgbuf_set ()</title>
124
<indexterm><primary>prelude_msgbuf_set</primary></indexterm><programlisting><link linkend="int">int</link> prelude_msgbuf_set (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
119
<refsect2 id="prelude-msgbuf-set" role="function">
120
<title>prelude_msgbuf_set ()</title>
121
<indexterm zone="prelude-msgbuf-set"><primary>prelude_msgbuf_set</primary></indexterm><programlisting><link linkend="int">int</link> prelude_msgbuf_set (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
125
122
<link linkend="uint8-t">uint8_t</link> tag,
126
123
<link linkend="uint32-t">uint32_t</link> len,
127
124
const <link linkend="void">void</link> *data);</programlisting>
146
143
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> 0 on success, a negative value if an error occured.
147
144
</simpara></listitem></varlistentry>
148
145
</variablelist></refsect2>
150
<title><anchor id="prelude-msgbuf-get-msg" role="function"/>prelude_msgbuf_get_msg ()</title>
151
<indexterm><primary>prelude_msgbuf_get_msg</primary></indexterm><programlisting><link linkend="prelude-msg-t">prelude_msg_t</link>* prelude_msgbuf_get_msg (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
146
<refsect2 id="prelude-msgbuf-get-msg" role="function">
147
<title>prelude_msgbuf_get_msg ()</title>
148
<indexterm zone="prelude-msgbuf-get-msg"><primary>prelude_msgbuf_get_msg</primary></indexterm><programlisting><link linkend="prelude-msg-t">prelude_msg_t</link>* prelude_msgbuf_get_msg (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
161
158
the message buffer.
162
159
</simpara></listitem></varlistentry>
163
160
</variablelist></refsect2>
165
<title><anchor id="prelude-msgbuf-set-callback" role="function"/>prelude_msgbuf_set_callback ()</title>
166
<indexterm><primary>prelude_msgbuf_set_callback</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_callback (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
167
<link linkend="int">int</link> (*send_msg) (prelude_msgbuf_t *msgbuf, prelude_msg_t *msg));</programlisting>
161
<refsect2 id="prelude-msgbuf-set-callback" role="function">
162
<title>prelude_msgbuf_set_callback ()</title>
163
<indexterm zone="prelude-msgbuf-set-callback"><primary>prelude_msgbuf_set_callback</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_callback (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
164
<link linkend="int">int</link> (send_msgprelude_msgbuf_t *msgbuf, prelude_msg_t *msg) ());</programlisting>
169
166
Associate an application specific callback to this <parameter>msgbuf</parameter>.</para>
177
174
<listitem><simpara> Pointer to a function for sending a message.
178
175
</simpara></listitem></varlistentry>
179
176
</variablelist></refsect2>
181
<title><anchor id="prelude-msgbuf-set-data" role="function"/>prelude_msgbuf_set_data ()</title>
182
<indexterm><primary>prelude_msgbuf_set_data</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_data (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
177
<refsect2 id="prelude-msgbuf-set-data" role="function">
178
<title>prelude_msgbuf_set_data ()</title>
179
<indexterm zone="prelude-msgbuf-set-data"><primary>prelude_msgbuf_set_data</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_data (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
183
180
<link linkend="void">void</link> *data);</programlisting>
194
191
</simpara></listitem></varlistentry>
195
192
</variablelist></refsect2>
197
<title><anchor id="prelude-msgbuf-get-data" role="function"/>prelude_msgbuf_get_data ()</title>
198
<indexterm><primary>prelude_msgbuf_get_data</primary></indexterm><programlisting><link linkend="void">void</link>* prelude_msgbuf_get_data (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
193
<refsect2 id="prelude-msgbuf-get-data" role="function">
194
<title>prelude_msgbuf_get_data ()</title>
195
<indexterm zone="prelude-msgbuf-get-data"><primary>prelude_msgbuf_get_data</primary></indexterm><programlisting><link linkend="void">void</link>* prelude_msgbuf_get_data (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
201
198
</para><variablelist role="params">
208
205
</simpara></listitem></varlistentry>
209
206
</variablelist></refsect2>
211
<title><anchor id="prelude-msgbuf-set-flags" role="function"/>prelude_msgbuf_set_flags ()</title>
212
<indexterm><primary>prelude_msgbuf_set_flags</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_flags (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
207
<refsect2 id="prelude-msgbuf-set-flags" role="function">
208
<title>prelude_msgbuf_set_flags ()</title>
209
<indexterm zone="prelude-msgbuf-set-flags"><primary>prelude_msgbuf_set_flags</primary></indexterm><programlisting><link linkend="void">void</link> prelude_msgbuf_set_flags (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf,
213
210
<link linkend="prelude-msgbuf-flags-t">prelude_msgbuf_flags_t</link> flags);</programlisting>
224
221
</simpara></listitem></varlistentry>
225
222
</variablelist></refsect2>
227
<title><anchor id="prelude-msgbuf-get-flags" role="function"/>prelude_msgbuf_get_flags ()</title>
228
<indexterm><primary>prelude_msgbuf_get_flags</primary></indexterm><programlisting><link linkend="prelude-msgbuf-flags-t">prelude_msgbuf_flags_t</link> prelude_msgbuf_get_flags (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
223
<refsect2 id="prelude-msgbuf-get-flags" role="function">
224
<title>prelude_msgbuf_get_flags ()</title>
225
<indexterm zone="prelude-msgbuf-get-flags"><primary>prelude_msgbuf_get_flags</primary></indexterm><programlisting><link linkend="prelude-msgbuf-flags-t">prelude_msgbuf_flags_t</link> prelude_msgbuf_get_flags (<link linkend="prelude-msgbuf-t">prelude_msgbuf_t</link> *msgbuf);</programlisting>
231
228
</para><variablelist role="params">