1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
3
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>ALSA project - the C library reference: snd_pcm_ioplug Struct Reference</title>
5
<link href="doxygen.css" rel="stylesheet" type="text/css">
6
<link href="tabs.css" rel="stylesheet" type="text/css"></head><body>
7
<!-- Generated by Doxygen 1.5.0 -->
10
<li><a href="index.html"><span>Main Page</span></a></li>
11
<li><a href="modules.html"><span>Modules</span></a></li>
12
<li id="current"><a href="annotated.html"><span>Data Structures</span></a></li>
13
<li><a href="files.html"><span>Files</span></a></li>
14
<li><a href="pages.html"><span>Related Pages</span></a></li>
15
<li><a href="examples.html"><span>Examples</span></a></li>
19
<li><a href="annotated.html"><span>Data Structures</span></a></li>
20
<li><a href="functions.html"><span>Data Fields</span></a></li>
22
<h1>snd_pcm_ioplug Struct Reference<br>
24
[<a class="el" href="group___p_c_m___i_o_plug.html">External I/O plugin SDK</a>]</small>
25
</h1><!-- doxytag: class="snd_pcm_ioplug" --><table border="0" cellpadding="0" cellspacing="0">
28
<tr><td colspan="2"><br><h2>Data Fields</h2></td></tr>
29
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#c5292533d5c765d8c779630328fbdb82">version</a></td></tr>
31
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#8f60b52e971d55e622c3529f4e6ffac6">name</a></td></tr>
33
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#9ce5e8105c51b3f4d045f8de51c67166">flags</a></td></tr>
35
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#7a8b7d8370308b5d806fde12b02167ac">poll_fd</a></td></tr>
37
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#de7e443473a31d0531b2453eb17531dc">poll_events</a></td></tr>
39
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#2917cfb8120c68a0671b58d1e0463451">mmap_rw</a></td></tr>
41
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">const <a class="el" href="structsnd__pcm__ioplug__callback.html">snd_pcm_ioplug_callback_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#42c1d6854e32bd58d43e23a667ed3d30">callback</a></td></tr>
43
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#101d13fd85ff50f24c5a57bbb0a4f382">private_data</a></td></tr>
45
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#6cbfd539c1bc21ed6429abe1a6a13282">pcm</a></td></tr>
47
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#87b6e8242c1c5cee78655bdf04dfd5c6">stream</a></td></tr>
49
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#gd08aecb11dff7aa18f2480f8ab1b72d1">snd_pcm_state_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#56bf2a5f2f42da56924cca0101f05305">state</a></td></tr>
51
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">volatile <a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#2a06405865eb7b19aea3130fa64594c8">appl_ptr</a></td></tr>
53
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">volatile <a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#6b99bb1d265455f7da589cc850444886">hw_ptr</a></td></tr>
55
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#26a4f0627da2b7259122f542b2b4980a">nonblock</a></td></tr>
57
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#gb838921f42075ebe3f8744889a8ecd87">snd_pcm_access_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#1ffb95082fcae66dac8eeffe7715779e">access</a></td></tr>
59
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#g5ae31ebbea7972ce97a498040df1839e">snd_pcm_format_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#197153db868d6337ebf05ee017a03858">format</a></td></tr>
61
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#0f00e43e48f66483da3d686d640801e7">channels</a></td></tr>
63
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#8e381bdd1f75a1645640974b95e95ff3">rate</a></td></tr>
65
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#bd8e931d6595717df83961a7d629779f">period_size</a></td></tr>
67
<tr><td class="memItemLeft" align="right" nowrap="nowrap" valign="top"><a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structsnd__pcm__ioplug.html#c5109f87a1267d8be24ab3b5b8755720">buffer_size</a></td></tr>
70
<hr><a name="_details"></a><h2>Detailed Description</h2>
73
</p><hr><h2>Field Documentation</h2>
74
<a class="anchor" name="c5292533d5c765d8c779630328fbdb82"></a><!-- doxytag: member="snd_pcm_ioplug::version" ref="c5292533d5c765d8c779630328fbdb82" args="" -->
76
<div class="memproto">
77
<table class="memname">
79
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#c5292533d5c765d8c779630328fbdb82">snd_pcm_ioplug::version</a> </td>
86
protocol version; <a class="el" href="group___p_c_m___i_o_plug.html#gf701c23e5dd85848e7775492bc138e45">SND_PCM_IOPLUG_VERSION</a> must be filled here before calling <a class="el" href="group___p_c_m___i_o_plug.html#g49f570ce699bd75885756372459ff351">snd_pcm_ioplug_create()</a>
89
<a class="anchor" name="8f60b52e971d55e622c3529f4e6ffac6"></a><!-- doxytag: member="snd_pcm_ioplug::name" ref="8f60b52e971d55e622c3529f4e6ffac6" args="" -->
90
</p><div class="memitem">
91
<div class="memproto">
92
<table class="memname">
94
<td class="memname">const char* <a class="el" href="structsnd__pcm__ioplug.html#8f60b52e971d55e622c3529f4e6ffac6">snd_pcm_ioplug::name</a> </td>
101
name of this plugin; must be filled before calling <a class="el" href="group___p_c_m___i_o_plug.html#g49f570ce699bd75885756372459ff351">snd_pcm_ioplug_create()</a>
104
<a class="anchor" name="9ce5e8105c51b3f4d045f8de51c67166"></a><!-- doxytag: member="snd_pcm_ioplug::flags" ref="9ce5e8105c51b3f4d045f8de51c67166" args="" -->
105
</p><div class="memitem">
106
<div class="memproto">
107
<table class="memname">
109
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#9ce5e8105c51b3f4d045f8de51c67166">snd_pcm_ioplug::flags</a> </td>
116
SND_PCM_IOPLUG_FLAG_XXX
119
<a class="anchor" name="7a8b7d8370308b5d806fde12b02167ac"></a><!-- doxytag: member="snd_pcm_ioplug::poll_fd" ref="7a8b7d8370308b5d806fde12b02167ac" args="" -->
120
</p><div class="memitem">
121
<div class="memproto">
122
<table class="memname">
124
<td class="memname">int <a class="el" href="structsnd__pcm__ioplug.html#7a8b7d8370308b5d806fde12b02167ac">snd_pcm_ioplug::poll_fd</a> </td>
134
<a class="anchor" name="de7e443473a31d0531b2453eb17531dc"></a><!-- doxytag: member="snd_pcm_ioplug::poll_events" ref="de7e443473a31d0531b2453eb17531dc" args="" -->
135
</p><div class="memitem">
136
<div class="memproto">
137
<table class="memname">
139
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#de7e443473a31d0531b2453eb17531dc">snd_pcm_ioplug::poll_events</a> </td>
149
<a class="anchor" name="2917cfb8120c68a0671b58d1e0463451"></a><!-- doxytag: member="snd_pcm_ioplug::mmap_rw" ref="2917cfb8120c68a0671b58d1e0463451" args="" -->
150
</p><div class="memitem">
151
<div class="memproto">
152
<table class="memname">
154
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#2917cfb8120c68a0671b58d1e0463451">snd_pcm_ioplug::mmap_rw</a> </td>
164
<a class="anchor" name="42c1d6854e32bd58d43e23a667ed3d30"></a><!-- doxytag: member="snd_pcm_ioplug::callback" ref="42c1d6854e32bd58d43e23a667ed3d30" args="" -->
165
</p><div class="memitem">
166
<div class="memproto">
167
<table class="memname">
169
<td class="memname">const <a class="el" href="structsnd__pcm__ioplug__callback.html">snd_pcm_ioplug_callback_t</a>* <a class="el" href="structsnd__pcm__ioplug.html#42c1d6854e32bd58d43e23a667ed3d30">snd_pcm_ioplug::callback</a> </td>
176
callbacks of this plugin; must be filled before calling <a class="el" href="group___p_c_m___i_o_plug.html#g49f570ce699bd75885756372459ff351">snd_pcm_ioplug_create()</a>
179
<a class="anchor" name="101d13fd85ff50f24c5a57bbb0a4f382"></a><!-- doxytag: member="snd_pcm_ioplug::private_data" ref="101d13fd85ff50f24c5a57bbb0a4f382" args="" -->
180
</p><div class="memitem">
181
<div class="memproto">
182
<table class="memname">
184
<td class="memname">void* <a class="el" href="structsnd__pcm__ioplug.html#101d13fd85ff50f24c5a57bbb0a4f382">snd_pcm_ioplug::private_data</a> </td>
191
private data, which can be used freely in the driver callbacks
194
<a class="anchor" name="6cbfd539c1bc21ed6429abe1a6a13282"></a><!-- doxytag: member="snd_pcm_ioplug::pcm" ref="6cbfd539c1bc21ed6429abe1a6a13282" args="" -->
195
</p><div class="memitem">
196
<div class="memproto">
197
<table class="memname">
199
<td class="memname"><a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a>* <a class="el" href="structsnd__pcm__ioplug.html#6cbfd539c1bc21ed6429abe1a6a13282">snd_pcm_ioplug::pcm</a> </td>
206
PCM handle filled by <a class="el" href="group___p_c_m___ext_plug.html#g57892d908bc602543ad645fcf278d4bc">snd_pcm_extplug_create()</a>
209
<a class="anchor" name="87b6e8242c1c5cee78655bdf04dfd5c6"></a><!-- doxytag: member="snd_pcm_ioplug::stream" ref="87b6e8242c1c5cee78655bdf04dfd5c6" args="" -->
210
</p><div class="memitem">
211
<div class="memproto">
212
<table class="memname">
214
<td class="memname"><a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> <a class="el" href="structsnd__pcm__ioplug.html#87b6e8242c1c5cee78655bdf04dfd5c6">snd_pcm_ioplug::stream</a> </td>
221
stream direcion; read-only
224
<a class="anchor" name="56bf2a5f2f42da56924cca0101f05305"></a><!-- doxytag: member="snd_pcm_ioplug::state" ref="56bf2a5f2f42da56924cca0101f05305" args="" -->
225
</p><div class="memitem">
226
<div class="memproto">
227
<table class="memname">
229
<td class="memname"><a class="el" href="group___p_c_m.html#gd08aecb11dff7aa18f2480f8ab1b72d1">snd_pcm_state_t</a> <a class="el" href="structsnd__pcm__ioplug.html#56bf2a5f2f42da56924cca0101f05305">snd_pcm_ioplug::state</a> </td>
236
current PCM state; read-only
239
<a class="anchor" name="2a06405865eb7b19aea3130fa64594c8"></a><!-- doxytag: member="snd_pcm_ioplug::appl_ptr" ref="2a06405865eb7b19aea3130fa64594c8" args="" -->
240
</p><div class="memitem">
241
<div class="memproto">
242
<table class="memname">
244
<td class="memname">volatile <a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> <a class="el" href="structsnd__pcm__ioplug.html#2a06405865eb7b19aea3130fa64594c8">snd_pcm_ioplug::appl_ptr</a> </td>
251
application pointer; read-only
254
<a class="anchor" name="6b99bb1d265455f7da589cc850444886"></a><!-- doxytag: member="snd_pcm_ioplug::hw_ptr" ref="6b99bb1d265455f7da589cc850444886" args="" -->
255
</p><div class="memitem">
256
<div class="memproto">
257
<table class="memname">
259
<td class="memname">volatile <a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> <a class="el" href="structsnd__pcm__ioplug.html#6b99bb1d265455f7da589cc850444886">snd_pcm_ioplug::hw_ptr</a> </td>
266
hw pointer; read-only
269
<a class="anchor" name="26a4f0627da2b7259122f542b2b4980a"></a><!-- doxytag: member="snd_pcm_ioplug::nonblock" ref="26a4f0627da2b7259122f542b2b4980a" args="" -->
270
</p><div class="memitem">
271
<div class="memproto">
272
<table class="memname">
274
<td class="memname">int <a class="el" href="structsnd__pcm__ioplug.html#26a4f0627da2b7259122f542b2b4980a">snd_pcm_ioplug::nonblock</a> </td>
281
non-block mode; read-only
284
<a class="anchor" name="1ffb95082fcae66dac8eeffe7715779e"></a><!-- doxytag: member="snd_pcm_ioplug::access" ref="1ffb95082fcae66dac8eeffe7715779e" args="" -->
285
</p><div class="memitem">
286
<div class="memproto">
287
<table class="memname">
289
<td class="memname"><a class="el" href="group___p_c_m.html#gb838921f42075ebe3f8744889a8ecd87">snd_pcm_access_t</a> <a class="el" href="structsnd__pcm__ioplug.html#1ffb95082fcae66dac8eeffe7715779e">snd_pcm_ioplug::access</a> </td>
296
access type; filled after hw_params is called
299
<a class="anchor" name="197153db868d6337ebf05ee017a03858"></a><!-- doxytag: member="snd_pcm_ioplug::format" ref="197153db868d6337ebf05ee017a03858" args="" -->
300
</p><div class="memitem">
301
<div class="memproto">
302
<table class="memname">
304
<td class="memname"><a class="el" href="group___p_c_m.html#g5ae31ebbea7972ce97a498040df1839e">snd_pcm_format_t</a> <a class="el" href="structsnd__pcm__ioplug.html#197153db868d6337ebf05ee017a03858">snd_pcm_ioplug::format</a> </td>
311
PCM format; filled after hw_params is called
314
<a class="anchor" name="0f00e43e48f66483da3d686d640801e7"></a><!-- doxytag: member="snd_pcm_ioplug::channels" ref="0f00e43e48f66483da3d686d640801e7" args="" -->
315
</p><div class="memitem">
316
<div class="memproto">
317
<table class="memname">
319
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#0f00e43e48f66483da3d686d640801e7">snd_pcm_ioplug::channels</a> </td>
326
number of channels; filled after hw_params is called
329
<a class="anchor" name="8e381bdd1f75a1645640974b95e95ff3"></a><!-- doxytag: member="snd_pcm_ioplug::rate" ref="8e381bdd1f75a1645640974b95e95ff3" args="" -->
330
</p><div class="memitem">
331
<div class="memproto">
332
<table class="memname">
334
<td class="memname">unsigned int <a class="el" href="structsnd__pcm__ioplug.html#8e381bdd1f75a1645640974b95e95ff3">snd_pcm_ioplug::rate</a> </td>
341
rate; filled after hw_params is called
344
<a class="anchor" name="bd8e931d6595717df83961a7d629779f"></a><!-- doxytag: member="snd_pcm_ioplug::period_size" ref="bd8e931d6595717df83961a7d629779f" args="" -->
345
</p><div class="memitem">
346
<div class="memproto">
347
<table class="memname">
349
<td class="memname"><a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> <a class="el" href="structsnd__pcm__ioplug.html#bd8e931d6595717df83961a7d629779f">snd_pcm_ioplug::period_size</a> </td>
356
period size; filled after hw_params is called
359
<a class="anchor" name="c5109f87a1267d8be24ab3b5b8755720"></a><!-- doxytag: member="snd_pcm_ioplug::buffer_size" ref="c5109f87a1267d8be24ab3b5b8755720" args="" -->
360
</p><div class="memitem">
361
<div class="memproto">
362
<table class="memname">
364
<td class="memname"><a class="el" href="group___p_c_m.html#g2c6283616ba424092089264ae7e193e6">snd_pcm_uframes_t</a> <a class="el" href="structsnd__pcm__ioplug.html#c5109f87a1267d8be24ab3b5b8755720">snd_pcm_ioplug::buffer_size</a> </td>
371
buffer size; filled after hw_params is called
374
</p><hr>The documentation for this struct was generated from the following file:<ul>
375
<li>/home/alsa/tmp/cvs/alsa-lib/include/<a class="el" href="pcm__ioplug_8h-source.html">pcm_ioplug.h</a></li></ul>
376
<hr size="1"><address style=""><small>Generated on Wed Sep 9 14:37:09 2009 for ALSA project - the C library reference by
377
<a href="http://www.doxygen.org/index.html">
378
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address>
b'\\ No newline at end of file'