Imported Upstream version 2.28.6
[platform/upstream/pygobject2.git] / docs / reference / pygio-memoryoutputstream.xml
1 <?xml version="1.0" standalone="no"?>
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3     "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4
5 <refentry id="class-giomemoryoutputstream">
6     <refnamediv>
7         <refname>gio.MemoryOutputStream</refname>
8         <refpurpose>Streaming output operations on memory chunks</refpurpose>
9     </refnamediv>
10
11     <refsect1>
12         <title>Synopsis</title>
13
14     <classsynopsis language="python">
15         <ooclass><classname>gio.MemoryOutputStream</classname></ooclass>
16         <ooclass><classname><link linkend="class-giooutputstream">gio.OutputStream</link></classname></ooclass>
17     
18     <constructorsynopsis language="python">
19         <methodname><link linkend="constructor-giomemoryoutputstream">gio.MemoryOutputStream</link></methodname>
20         <methodparam></methodparam>
21     </constructorsynopsis>
22     
23
24     <methodsynopsis language="python">
25         <methodname><link linkend="method-giomemoryoutputstream--get-contents">get_contents</link></methodname>
26         <methodparam></methodparam>
27     </methodsynopsis>
28     <methodsynopsis language="python">
29         <methodname><link linkend="method-giomemoryoutputstream--get-data-size">get_data_size</link></methodname>
30         <methodparam></methodparam>
31     </methodsynopsis>
32     <methodsynopsis language="python">
33         <methodname><link linkend="method-giomemoryoutputstream--get-size">get_size</link></methodname>
34         <methodparam></methodparam>
35     </methodsynopsis>
36
37     </classsynopsis>
38
39     </refsect1>
40
41     <refsect1>
42         <title>Ancestry</title>
43
44 <synopsis>+-- <link linkend="class-gobject">gobject.GObject</link>
45   +-- <link linkend="class-giooutputstream">gio.OutputStream</link>
46     +-- <link linkend="class-giomemoryoutputstream">gio.MemoryOutputStream</link>
47 </synopsis>
48
49     </refsect1>
50     
51     <refsect1>
52         <title>Implemented Interfaces</title>
53         <para>
54             <link linkend="class-giomemoryoutputstream"><classname>gio.MemoryOutputStream</classname></link>
55             implements
56             <link linkend="class-gioseekable"><classname>gio.Seekable</classname></link>
57         </para>
58     </refsect1>
59
60     <refsect1>
61         <title>Description</title>
62
63         <para>
64             <link linkend="class-giomemoryoutputstream"><classname>gio.MemoryOutputStream</classname></link>
65             is a class for using arbitrary memory chunks as output for GIO streaming output operations.
66         </para>
67     </refsect1>
68
69     <refsect1 id="constructor-giomemoryoutputstream">
70         <title>Constructor</title>
71   
72         <programlisting><constructorsynopsis language="python">
73             <methodname>gio.MemoryOutputStream</methodname>
74             <methodparam></methodparam>
75         </constructorsynopsis></programlisting>
76         <variablelist>
77             <varlistentry>
78                 <term><emphasis>Returns</emphasis>&nbsp;:</term>
79                 <listitem><simpara>a new
80                 <link linkend="class-giomemoryoutputstream"><classname>gio.MemoryOutputStream</classname></link>.
81                 </simpara></listitem>
82             </varlistentry>
83         </variablelist>
84     
85         <para>
86             Creates a new
87             <link linkend="class-giomemoryoutputstream"><classname>gio.MemoryOutputStream</classname></link>.
88         </para>
89   
90     </refsect1>
91
92     <refsect1>
93         <title>Methods</title>
94
95         <refsect2 id="method-giomemoryoutputstream--get-contents">
96             <title>gio.MemoryOutputStream.get_contents</title>
97
98             <programlisting><methodsynopsis language="python">
99                 <methodname>get_contents</methodname>
100                 <methodparam></methodparam>
101             </methodsynopsis></programlisting>
102             
103             <variablelist>
104                 <varlistentry>
105                     <term><emphasis>Returns</emphasis>&nbsp;:</term>
106                     <listitem><simpara>the stream's data
107                     </simpara></listitem>
108                 </varlistentry>
109             </variablelist>
110     
111             <para>
112                 The <methodname>get_contents</methodname>() method gets any loaded data
113                 from the ostream.
114             </para>
115             <para>
116                 Note that the returned data may become invalid on the next write or truncate
117                 operation on the stream.
118             </para>
119         </refsect2>
120
121         <refsect2 id="method-giomemoryoutputstream--get-data-size">
122             <title>gio.MemoryOutputStream.get_data_size</title>
123
124             <programlisting><methodsynopsis language="python">
125                 <methodname>get_data_size</methodname>
126                 <methodparam></methodparam>
127             </methodsynopsis></programlisting>
128             
129             <variablelist>
130                 <varlistentry>
131                     <term><emphasis>Returns</emphasis>&nbsp;:</term>
132                     <listitem><simpara>the number of bytes written to the stream
133                     </simpara></listitem>
134                 </varlistentry>
135             </variablelist>
136     
137             <para>
138                 The <methodname>get_data_size</methodname>() method returns the number
139                 of bytes from the start up to including the last byte written in the
140                 stream that has not been truncated away.
141             </para>
142         </refsect2>
143
144         <refsect2 id="method-giomemoryoutputstream--get-size">
145             <title>gio.MemoryOutputStream.get_size</title>
146
147             <programlisting><methodsynopsis language="python">
148                 <methodname>get_size</methodname>
149                 <methodparam></methodparam>
150             </methodsynopsis></programlisting>
151             
152             <variablelist>
153                 <varlistentry>
154                     <term><emphasis>Returns</emphasis>&nbsp;:</term>
155                     <listitem><simpara>the number of bytes allocated for the data buffer
156                     </simpara></listitem>
157                 </varlistentry>
158             </variablelist>
159     
160             <para>
161                 The <methodname>get_size</methodname>() method gets the size of the
162                 currently allocated data area (availible from
163                 <methodname><link linkend="method-giomemoryoutputstream--get-contents">gio.MemoryOutputStream.get_contents</link></methodname>()
164                 ).
165             </para>
166             <para>
167                 Note that for growable streams the returned size may become invalid on the next write or truncate operation on the stream.
168             </para>
169             <para>
170                 If you want the number of bytes currently written to the stream, use
171                 <methodname><link linkend="method-giomemoryoutputstream--get-data-size">gio.MemoryOutputStream.get_data_size</link></methodname>().
172             </para>
173         </refsect2>
174     </refsect1>
175 </refentry>