2
<!-- This file was automatically generated from C sources - DO NOT EDIT!
3
To affect the contents of this file, edit the original C definitions,
4
and/or use gtk-doc annotations. -->
5
<repository version="1.2"
6
xmlns="http://www.gtk.org/introspection/core/1.0"
7
xmlns:c="http://www.gtk.org/introspection/c/1.0"
8
xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9
<include name="GLib" version="2.0"/>
10
<include name="GModule" version="2.0"/>
11
<include name="GObject" version="2.0"/>
12
<include name="Gst" version="0.10"/>
13
<include name="libxml2" version="2.0"/>
14
<package name="gstreamer-netbuffer-0.10"/>
15
<c:include name="gst/netbuffer/gstnetbuffer.h"/>
16
<namespace name="GstNetbuffer"
18
shared-library="libgstnetbuffer-0.10.so.0"
19
c:identifier-prefixes="Gst"
20
c:symbol-prefixes="gst">
21
<constant name="NETADDRESS_MAX_LEN"
23
c:type="GST_NETADDRESS_MAX_LEN">
24
<type name="gint" c:type="gint"/>
26
<record name="NetAddress" c:type="GstNetAddress">
27
<doc xml:whitespace="preserve">An opaque network address as used in #GstNetBuffer.</doc>
28
<field name="type" readable="0" private="1">
29
<type name="NetType" c:type="GstNetType"/>
31
<union name="address" c:type="address">
32
<field name="ip6" writable="1">
33
<array zero-terminated="0" c:type="guint8" fixed-size="16">
34
<type name="guint8" c:type="guint8"/>
37
<field name="ip4" writable="1">
38
<type name="guint32" c:type="guint32"/>
41
<field name="port" writable="1">
42
<type name="guint16" c:type="guint16"/>
44
<field name="_gst_reserved" readable="0" private="1">
45
<array zero-terminated="0" c:type="gpointer" fixed-size="4">
46
<type name="gpointer" c:type="gpointer"/>
50
<class name="NetBuffer"
51
c:symbol-prefix="netbuffer"
54
glib:type-name="GstNetBuffer"
55
glib:get-type="gst_netbuffer_get_type"
56
glib:type-struct="NetBufferClass"
58
<doc xml:whitespace="preserve">#GstNetBuffer is a subclass of a normal #GstBuffer that contains two
59
additional metadata fields of type #GstNetAddress named 'to' and 'from'. The
60
buffer can be used to store additional information about the origin of the
61
buffer data and is used in various network elements to track the to and from
64
Last reviewed on 2006-08-21 (0.10.10)</doc>
65
<constructor name="new" c:identifier="gst_netbuffer_new">
66
<doc xml:whitespace="preserve">Create a new network buffer.</doc>
67
<return-value transfer-ownership="full">
68
<doc xml:whitespace="preserve">a new #GstNetBuffer.</doc>
69
<type name="NetBuffer" c:type="GstNetBuffer*"/>
73
<type name="Gst.Buffer" c:type="GstBuffer"/>
76
<type name="NetAddress" c:type="GstNetAddress"/>
79
<type name="NetAddress" c:type="GstNetAddress"/>
81
<field name="_gst_reserved" readable="0" private="1">
82
<array zero-terminated="0" c:type="gpointer" fixed-size="4">
83
<type name="gpointer" c:type="gpointer"/>
87
<record name="NetBufferClass"
88
c:type="GstNetBufferClass"
89
glib:is-gtype-struct-for="NetBuffer">
90
<field name="buffer_class">
91
<type name="Gst.BufferClass" c:type="GstBufferClass"/>
93
<field name="_gst_reserved" readable="0" private="1">
94
<array zero-terminated="0" c:type="gpointer" fixed-size="4">
95
<type name="gpointer" c:type="gpointer"/>
99
<enumeration name="NetType" c:type="GstNetType">
100
<doc xml:whitespace="preserve">The Address type used in #GstNetAddress.</doc>
101
<member name="unknown" value="0" c:identifier="GST_NET_TYPE_UNKNOWN"/>
102
<member name="ip4" value="1" c:identifier="GST_NET_TYPE_IP4"/>
103
<member name="ip6" value="2" c:identifier="GST_NET_TYPE_IP6"/>
105
<function name="netaddress_equal"
106
c:identifier="gst_netaddress_equal"
108
<doc xml:whitespace="preserve">Compare two #GstNetAddress structures</doc>
109
<return-value transfer-ownership="none">
110
<doc xml:whitespace="preserve">TRUE if they are identical, FALSE otherwise</doc>
111
<type name="gboolean" c:type="gboolean"/>
114
<parameter name="naddr1" transfer-ownership="none">
115
<doc xml:whitespace="preserve">The first #GstNetAddress</doc>
116
<type name="NetAddress" c:type="GstNetAddress*"/>
118
<parameter name="naddr2" transfer-ownership="none">
119
<doc xml:whitespace="preserve">The second #GstNetAddress</doc>
120
<type name="NetAddress" c:type="GstNetAddress*"/>
124
<function name="netaddress_get_address_bytes"
125
c:identifier="gst_netaddress_get_address_bytes"
127
<doc xml:whitespace="preserve">Get just the address bytes stored in @naddr into @address.
129
Note that @port is expressed in network byte order, use g_ntohs() to convert
130
it to host order. IP4 addresses are also stored in network byte order.</doc>
131
<return-value transfer-ownership="none">
132
<doc xml:whitespace="preserve">number of bytes actually copied</doc>
133
<type name="gint" c:type="gint"/>
136
<parameter name="naddr" transfer-ownership="none">
137
<doc xml:whitespace="preserve">a network address</doc>
138
<type name="NetAddress" c:type="GstNetAddress*"/>
140
<parameter name="address" transfer-ownership="none">
141
<doc xml:whitespace="preserve">a location to store the result.</doc>
142
<type name="guint8" c:type="guint8"/>
144
<parameter name="port" transfer-ownership="none">
145
<doc xml:whitespace="preserve">a location to store the port.</doc>
146
<type name="guint16" c:type="guint16*"/>
150
<function name="netaddress_get_ip4_address"
151
c:identifier="gst_netaddress_get_ip4_address">
152
<doc xml:whitespace="preserve">Get the IPv4 address stored in @naddr into @address. This function requires
153
that the address type of @naddr is of type #GST_NET_TYPE_IP4.
155
Note that @port and @address are expressed in network byte order, use
156
g_ntohs() and g_ntohl() to convert them to host order.</doc>
157
<return-value transfer-ownership="none">
158
<doc xml:whitespace="preserve">TRUE if the address could be retrieved.</doc>
159
<type name="gboolean" c:type="gboolean"/>
162
<parameter name="naddr" transfer-ownership="none">
163
<doc xml:whitespace="preserve">a network address</doc>
164
<type name="NetAddress" c:type="GstNetAddress*"/>
166
<parameter name="address" transfer-ownership="none">
167
<doc xml:whitespace="preserve">a location to store the address.</doc>
168
<type name="guint32" c:type="guint32*"/>
170
<parameter name="port" transfer-ownership="none">
171
<doc xml:whitespace="preserve">a location to store the port.</doc>
172
<type name="guint16" c:type="guint16*"/>
176
<function name="netaddress_get_ip6_address"
177
c:identifier="gst_netaddress_get_ip6_address">
178
<doc xml:whitespace="preserve">Get the IPv6 address stored in @naddr into @address.
180
If @naddr is of type GST_NET_TYPE_IP4, the transitional IP6 address is
183
Note that @port is expressed in network byte order, use g_ntohs() to convert
184
it to host order.</doc>
185
<return-value transfer-ownership="none">
186
<doc xml:whitespace="preserve">TRUE if the address could be retrieved.</doc>
187
<type name="gboolean" c:type="gboolean"/>
190
<parameter name="naddr" transfer-ownership="none">
191
<doc xml:whitespace="preserve">a network address</doc>
192
<type name="NetAddress" c:type="GstNetAddress*"/>
194
<parameter name="address" transfer-ownership="none">
195
<doc xml:whitespace="preserve">a location to store the result.</doc>
196
<type name="guint8" c:type="guint8"/>
198
<parameter name="port" transfer-ownership="none">
199
<doc xml:whitespace="preserve">a location to store the port.</doc>
200
<type name="guint16" c:type="guint16*"/>
204
<function name="netaddress_get_net_type"
205
c:identifier="gst_netaddress_get_net_type">
206
<doc xml:whitespace="preserve">Get the type of address stored in @naddr.</doc>
207
<return-value transfer-ownership="none">
208
<doc xml:whitespace="preserve">the network type stored in @naddr.</doc>
209
<type name="NetType" c:type="GstNetType"/>
212
<parameter name="naddr" transfer-ownership="none">
213
<doc xml:whitespace="preserve">a network address</doc>
214
<type name="NetAddress" c:type="GstNetAddress*"/>
218
<function name="netaddress_set_address_bytes"
219
c:identifier="gst_netaddress_set_address_bytes"
221
<doc xml:whitespace="preserve">Set just the address bytes stored in @naddr into @address.
223
Note that @port must be expressed in network byte order, use g_htons() to
224
convert it to network byte order. IP4 address bytes must also be
225
stored in network byte order.</doc>
226
<return-value transfer-ownership="none">
227
<doc xml:whitespace="preserve">number of bytes actually copied</doc>
228
<type name="gint" c:type="gint"/>
231
<parameter name="naddr" transfer-ownership="none">
232
<doc xml:whitespace="preserve">a network address</doc>
233
<type name="NetAddress" c:type="GstNetAddress*"/>
235
<parameter name="type" transfer-ownership="none">
236
<doc xml:whitespace="preserve">the address type (IPv4 or IPV6)</doc>
237
<type name="NetType" c:type="GstNetType"/>
239
<parameter name="address" transfer-ownership="none">
240
<doc xml:whitespace="preserve">a location to store the result.</doc>
241
<type name="guint8" c:type="guint8"/>
243
<parameter name="port" transfer-ownership="none">
244
<doc xml:whitespace="preserve">a location to store the port.</doc>
245
<type name="guint16" c:type="guint16"/>
249
<function name="netaddress_set_ip4_address"
250
c:identifier="gst_netaddress_set_ip4_address">
251
<doc xml:whitespace="preserve">Set @naddr with the IPv4 @address and @port pair.
253
Note that @port and @address must be expressed in network byte order,
254
use g_htons() and g_htonl() to convert them to network byte order.</doc>
255
<return-value transfer-ownership="none">
256
<type name="none" c:type="void"/>
259
<parameter name="naddr" transfer-ownership="none">
260
<doc xml:whitespace="preserve">a network address</doc>
261
<type name="NetAddress" c:type="GstNetAddress*"/>
263
<parameter name="address" transfer-ownership="none">
264
<doc xml:whitespace="preserve">an IPv4 network address.</doc>
265
<type name="guint32" c:type="guint32"/>
267
<parameter name="port" transfer-ownership="none">
268
<doc xml:whitespace="preserve">a port number to set.</doc>
269
<type name="guint16" c:type="guint16"/>
273
<function name="netaddress_set_ip6_address"
274
c:identifier="gst_netaddress_set_ip6_address">
275
<doc xml:whitespace="preserve">Set @naddr with the IPv6 @address and @port pair.
277
Note that @port must be expressed in network byte order, use g_htons() to convert
278
it to network byte order.</doc>
279
<return-value transfer-ownership="none">
280
<type name="none" c:type="void"/>
283
<parameter name="naddr" transfer-ownership="none">
284
<doc xml:whitespace="preserve">a network address</doc>
285
<type name="NetAddress" c:type="GstNetAddress*"/>
287
<parameter name="address" transfer-ownership="none">
288
<doc xml:whitespace="preserve">an IPv6 network address.</doc>
289
<type name="guint8" c:type="guint8"/>
291
<parameter name="port" transfer-ownership="none">
292
<doc xml:whitespace="preserve">a port number to set.</doc>
293
<type name="guint16" c:type="guint16"/>
297
<function name="netaddress_to_string"
298
c:identifier="gst_netaddress_to_string"
300
<doc xml:whitespace="preserve">Copies a string representation of @naddr into @dest. Up to @len bytes are
302
<return-value transfer-ownership="none">
303
<doc xml:whitespace="preserve">the number of bytes which would be produced if the buffer was large enough</doc>
304
<type name="gint" c:type="gint"/>
307
<parameter name="naddr" transfer-ownership="none">
308
<doc xml:whitespace="preserve">a #GstNetAddress</doc>
309
<type name="NetAddress" c:type="GstNetAddress*"/>
311
<parameter name="dest" transfer-ownership="none">
312
<doc xml:whitespace="preserve">destination</doc>
313
<type name="utf8" c:type="gchar*"/>
315
<parameter name="len" transfer-ownership="none">
316
<doc xml:whitespace="preserve">len of @dest</doc>
317
<type name="gulong" c:type="gulong"/>