1
<refentry id="at-spi-cspi-AccessibleStreamableContent-Interface">
3
<refentrytitle role="top_of_page" id="at-spi-cspi-AccessibleStreamableContent-Interface.top_of_page">AccessibleStreamableContent Interface</refentrytitle>
4
<manvolnum>3</manvolnum>
5
<refmiscinfo>AT-SPI-CSPI Library</refmiscinfo>
9
<refname>AccessibleStreamableContent Interface</refname>
10
<refpurpose></refpurpose>
13
<refsynopsisdiv id="at-spi-cspi-AccessibleStreamableContent-Interface.synopsis" role="synopsis">
14
<title role="synopsis.title">Synopsis</title>
17
enum <link linkend="AccessibleStreamableContentSeekType">AccessibleStreamableContentSeekType</link>;
18
<link linkend="void">void</link> <link linkend="AccessibleStreamableContent-freeContentTypesList">AccessibleStreamableContent_freeContentTypesList</link>
19
(<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
20
<link linkend="char">char</link> **content_types);
21
<link linkend="void">void</link> <link linkend="AccessibleStreamableContent-ref">AccessibleStreamableContent_ref</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);
22
<link linkend="void">void</link> <link linkend="AccessibleStreamableContent-unref">AccessibleStreamableContent_unref</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);
23
<link linkend="char">char</link> ** <link linkend="AccessibleStreamableContent-getContentTypes">AccessibleStreamableContent_getContentTypes</link>
24
(<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);
25
<link linkend="SPIBoolean">SPIBoolean</link> <link linkend="AccessibleStreamableContent-open">AccessibleStreamableContent_open</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
26
const <link linkend="char">char</link> *content_type);
27
<link linkend="long">long</link> <link linkend="AccessibleStreamableContent-seek">AccessibleStreamableContent_seek</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
28
long <link linkend="int">int</link> offset,
29
<link linkend="AccessibleStreamableContentSeekType">AccessibleStreamableContentSeekType</link> seek_type);
30
<link linkend="SPIBoolean">SPIBoolean</link> <link linkend="AccessibleStreamableContent-read">AccessibleStreamableContent_read</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
31
<link linkend="void">void</link> *buff,
32
long <link linkend="int">int</link> nbytes,
33
unsigned <link linkend="int">int</link> read_type);
34
<link linkend="SPIBoolean">SPIBoolean</link> <link linkend="AccessibleStreamableContent-close">AccessibleStreamableContent_close</link> (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);
46
<refsect1 id="at-spi-cspi-AccessibleStreamableContent-Interface.description" role="desc">
47
<title role="desc.title">Description</title>
52
<refsect1 id="at-spi-cspi-AccessibleStreamableContent-Interface.details" role="details">
53
<title role="details.title">Details</title>
54
<refsect2 id="AccessibleStreamableContentSeekType" role="enum">
55
<title>enum AccessibleStreamableContentSeekType</title>
56
<indexterm zone="AccessibleStreamableContentSeekType"><primary sortas="AccessibleStreamableContentSeekType">AccessibleStreamableContentSeekType</primary></indexterm><programlisting>typedef enum
61
} AccessibleStreamableContentSeekType;
64
The seek type for a specified offset in AccessibleStreamableContent_seek.</para>
66
</para><variablelist role="enum">
67
<varlistentry id="SPI-STREAM-SEEK-SET--CAPS" role="constant">
68
<term><literal>SPI_STREAM_SEEK_SET</literal></term>
69
<listitem><simpara> seek from the 'top' of the streamable
72
<varlistentry id="SPI-STREAM-SEEK-CUR--CAPS" role="constant">
73
<term><literal>SPI_STREAM_SEEK_CUR</literal></term>
74
<listitem><simpara> seek from the current position in the stream
77
<varlistentry id="SPI-STREAM-SEEK-END--CAPS" role="constant">
78
<term><literal>SPI_STREAM_SEEK_END</literal></term>
79
<listitem><simpara> seek from the end of the stream (if known)
82
</variablelist></refsect2>
83
<refsect2 id="AccessibleStreamableContent-freeContentTypesList" role="function" condition="since:AT-SPI 1.4">
84
<title>AccessibleStreamableContent_freeContentTypesList ()</title>
85
<indexterm zone="AccessibleStreamableContent-freeContentTypesList" role="AT-SPI 1.4"><primary sortas="AccessibleStreamableContent_freeContentTypesList">AccessibleStreamableContent_freeContentTypesList</primary></indexterm><programlisting><link linkend="void">void</link> AccessibleStreamableContent_freeContentTypesList
86
(<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
87
<link linkend="char">char</link> **content_types);</programlisting>
89
Free the memory associated with a call to <link linkend="AccessibleStreamableContent-getContentTypes"><type>AccessibleStreamableContent_getContentTypes</type></link>, once
90
the result has been used.</para>
92
</para><variablelist role="params">
93
<varlistentry><term><parameter>obj</parameter> :</term>
94
<listitem><simpara> the AccessibleStreamableContent implementor on which to operate.
95
</simpara></listitem></varlistentry>
96
<varlistentry><term><parameter>content_types</parameter> :</term>
97
<listitem><simpara> a list of content types previously returned by
98
<link linkend="AccessibleStreamableContent-getContentTypes"><type>AccessibleStreamableContent_getContentTypes</type></link>.
99
</simpara></listitem></varlistentry>
100
</variablelist><para role="since">Since AT-SPI 1.4</para></refsect2>
101
<refsect2 id="AccessibleStreamableContent-ref" role="function">
102
<title>AccessibleStreamableContent_ref ()</title>
103
<indexterm zone="AccessibleStreamableContent-ref"><primary sortas="AccessibleStreamableContent_ref">AccessibleStreamableContent_ref</primary></indexterm><programlisting><link linkend="void">void</link> AccessibleStreamableContent_ref (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);</programlisting>
105
Increment the reference count for an <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> object.
108
<parameter>Since</parameter>: AT-SPI 1.4</para>
110
</para><variablelist role="params">
111
<varlistentry><term><parameter>obj</parameter> :</term>
112
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to
114
</simpara></listitem></varlistentry>
115
</variablelist></refsect2>
116
<refsect2 id="AccessibleStreamableContent-unref" role="function">
117
<title>AccessibleStreamableContent_unref ()</title>
118
<indexterm zone="AccessibleStreamableContent-unref"><primary sortas="AccessibleStreamableContent_unref">AccessibleStreamableContent_unref</primary></indexterm><programlisting><link linkend="void">void</link> AccessibleStreamableContent_unref (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);</programlisting>
120
Decrement the reference count for an <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> object.
123
<parameter>Since</parameter>: AT-SPI 1.4</para>
125
</para><variablelist role="params">
126
<varlistentry><term><parameter>obj</parameter> :</term>
127
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor
129
</simpara></listitem></varlistentry>
130
</variablelist></refsect2>
131
<refsect2 id="AccessibleStreamableContent-getContentTypes" role="function">
132
<title>AccessibleStreamableContent_getContentTypes ()</title>
133
<indexterm zone="AccessibleStreamableContent-getContentTypes"><primary sortas="AccessibleStreamableContent_getContentTypes">AccessibleStreamableContent_getContentTypes</primary></indexterm><programlisting><link linkend="char">char</link> ** AccessibleStreamableContent_getContentTypes
134
(<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);</programlisting>
136
Get a list of strings containing the content mimetypes available from an
137
<link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor.
140
<parameter>Since</parameter>: AT-SPI 1.4</para>
142
</para><variablelist role="params">
143
<varlistentry><term><parameter>obj</parameter> :</term>
144
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to operate.
145
</simpara></listitem></varlistentry>
146
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> an array of strings, terminated by a NULL string, specifying the
147
mimetypes for which the streamed content is available.
149
</simpara></listitem></varlistentry>
150
</variablelist></refsect2>
151
<refsect2 id="AccessibleStreamableContent-open" role="function">
152
<title>AccessibleStreamableContent_open ()</title>
153
<indexterm zone="AccessibleStreamableContent-open"><primary sortas="AccessibleStreamableContent_open">AccessibleStreamableContent_open</primary></indexterm><programlisting><link linkend="SPIBoolean">SPIBoolean</link> AccessibleStreamableContent_open (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
154
const <link linkend="char">char</link> *content_type);</programlisting>
156
Open a streaming connection to an AccessibleStreamableContent implementor,
157
of a particular content type. Note that a client may only have one
158
open stream per streamable interface instance in the current
162
<parameter>Since</parameter>: AT-SPI 1.4</para>
164
</para><variablelist role="params">
165
<varlistentry><term><parameter>obj</parameter> :</term>
166
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to operate.
167
</simpara></listitem></varlistentry>
168
<varlistentry><term><parameter>content_type</parameter> :</term>
169
<listitem><simpara> a string specifying the content type to retrieve (should match one
170
of the return strings from #<link linkend="AccessibleStreamableContent-getContentTypes"><function>AccessibleStreamableContent_getContentTypes()</function></link>).
171
</simpara></listitem></varlistentry>
172
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><type>TRUE</type></link> if successful, <link linkend="FALSE--CAPS"><type>FALSE</type></link> if unsuccessful.
174
</simpara></listitem></varlistentry>
175
</variablelist></refsect2>
176
<refsect2 id="AccessibleStreamableContent-seek" role="function">
177
<title>AccessibleStreamableContent_seek ()</title>
178
<indexterm zone="AccessibleStreamableContent-seek"><primary sortas="AccessibleStreamableContent_seek">AccessibleStreamableContent_seek</primary></indexterm><programlisting><link linkend="long">long</link> AccessibleStreamableContent_seek (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
179
long <link linkend="int">int</link> offset,
180
<link linkend="AccessibleStreamableContentSeekType">AccessibleStreamableContentSeekType</link> seek_type);</programlisting>
182
Cause the current streamable content connection (obtained via
183
#<link linkend="AccessibleStreamableContent-open"><function>AccessibleStreamableContent_open()</function></link>) to seek to a particular offset in the
187
<parameter>Since</parameter>: AT-SPI 1.4</para>
189
</para><variablelist role="params">
190
<varlistentry><term><parameter>obj</parameter> :</term>
191
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to operate.
192
</simpara></listitem></varlistentry>
193
<varlistentry><term><parameter>offset</parameter> :</term>
194
<listitem><simpara> a long int specifying the offset into the stream.
195
</simpara></listitem></varlistentry>
196
<varlistentry><term><parameter>seek_type</parameter> :</term>
197
<listitem><simpara> an enum indicating the seek offset type, may be SEEK_SET,
198
SEEK_CUR, SEEK_END (as in the <link linkend="lseek"><function>lseek()</function></link> libc command).
199
</simpara></listitem></varlistentry>
200
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><type>TRUE</type></link> if successful, <link linkend="FALSE--CAPS"><type>FALSE</type></link> if unsuccessful.
202
</simpara></listitem></varlistentry>
203
</variablelist></refsect2>
204
<refsect2 id="AccessibleStreamableContent-read" role="function">
205
<title>AccessibleStreamableContent_read ()</title>
206
<indexterm zone="AccessibleStreamableContent-read"><primary sortas="AccessibleStreamableContent_read">AccessibleStreamableContent_read</primary></indexterm><programlisting><link linkend="SPIBoolean">SPIBoolean</link> AccessibleStreamableContent_read (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj,
207
<link linkend="void">void</link> *buff,
208
long <link linkend="int">int</link> nbytes,
209
unsigned <link linkend="int">int</link> read_type);</programlisting>
211
Copy (read) bytes from the currently open streamable content connection
212
to a buffer. This is a blocking API, in the sense that it does not
213
return until the bytes have been read, or an error condition is
217
<parameter>Since</parameter>: AT-SPI 1.4</para>
219
</para><variablelist role="params">
220
<varlistentry><term><parameter>obj</parameter> :</term>
221
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to operate.
222
</simpara></listitem></varlistentry>
223
<varlistentry><term><parameter>buff</parameter> :</term>
224
<listitem><simpara> a pointer to a buffer into which the resulting bytes read from the stream
226
</simpara></listitem></varlistentry>
227
<varlistentry><term><parameter>nbytes</parameter> :</term>
228
<listitem><simpara> a long integer indicating the number of bytes to read/write.
229
</simpara></listitem></varlistentry>
230
<varlistentry><term><parameter>read_type</parameter> :</term>
231
<listitem><simpara> currently unused, specifies behavior of reads for streamed content
232
if blocking is not allowed, etc.
233
</simpara></listitem></varlistentry>
234
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> an integer indicating the number of bytes read, or -1 on error.
236
</simpara></listitem></varlistentry>
237
</variablelist></refsect2>
238
<refsect2 id="AccessibleStreamableContent-close" role="function">
239
<title>AccessibleStreamableContent_close ()</title>
240
<indexterm zone="AccessibleStreamableContent-close"><primary sortas="AccessibleStreamableContent_close">AccessibleStreamableContent_close</primary></indexterm><programlisting><link linkend="SPIBoolean">SPIBoolean</link> AccessibleStreamableContent_close (<link linkend="AccessibleStreamableContent">AccessibleStreamableContent</link> *obj);</programlisting>
242
Close the current streaming connection to an AccessibleStreamableContent implementor.
243
This must be called before any subsequent AccessibleStreamableContent_open
244
calls on the same object.
247
<parameter>Since</parameter>: AT-SPI 1.4</para>
249
</para><variablelist role="params">
250
<varlistentry><term><parameter>obj</parameter> :</term>
251
<listitem><simpara> a pointer to the <link linkend="AccessibleStreamableContent"><type>AccessibleStreamableContent</type></link> implementor on which to operate.
252
</simpara></listitem></varlistentry>
253
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><type>TRUE</type></link> if successful, <link linkend="FALSE--CAPS"><type>FALSE</type></link> if unsuccessful.
255
</simpara></listitem></varlistentry>
256
</variablelist></refsect2>