File: //usr/share/doc/alsa-lib-devel-1.0.17/lib64/html/pcm__hw_8c.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ALSA project - the C library reference: /builddir/build/BUILD/alsa-lib-1.0.17a/src/pcm/pcm_hw.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li id="current"><a href="files.html"><span>Files</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="examples.html"><span>Examples</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="files.html"><span>File List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul></div>
<h1>/builddir/build/BUILD/alsa-lib-1.0.17a/src/pcm/pcm_hw.c File Reference</h1>PCM HW Plugin Interface. <a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="pcm__hw_8c.html#08a7e9919e1c5d5cfc8ea71878a2c609">snd_pcm_hw_open_fd</a> (<a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> **pcmp, const char *name, int fd, int mmap_emulation, int sync_ptr_ioctl)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a new hw PCM. <a href="#08a7e9919e1c5d5cfc8ea71878a2c609"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="pcm__hw_8c.html#d0275f35954d3681fd8d016d5cf26749">snd_pcm_hw_open</a> (<a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> **pcmp, const char *name, int card, int device, int subdevice, <a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> stream, int mode, int mmap_emulation, int sync_ptr_ioctl)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a new hw PCM. <a href="#d0275f35954d3681fd8d016d5cf26749"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="pcm__hw_8c.html#0fa245f914223d99a283fb654c6b988a">_snd_pcm_hw_open</a> (<a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> **pcmp, const char *name, <a class="el" href="group___config.html#gb7dc173feea5bedcd999bba678eb53a7">snd_config_t</a> *root, <a class="el" href="group___config.html#gb7dc173feea5bedcd999bba678eb53a7">snd_config_t</a> *conf, <a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> stream, int mode)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a new hw PCM. <a href="#0fa245f914223d99a283fb654c6b988a"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
PCM HW Plugin Interface.
<p>
<dl compact><dt><b>Author:</b></dt><dd>Abramo Bagnara <<a href="mailto:abramo@alsa-project.org">abramo@alsa-project.org</a>> <p>
Jaroslav Kysela <<a href="mailto:perex@perex.cz">perex@perex.cz</a>> </dd></dl>
<dl compact><dt><b>Date:</b></dt><dd>2000-2001 </dd></dl>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="0fa245f914223d99a283fb654c6b988a"></a><!-- doxytag: member="pcm_hw.c::_snd_pcm_hw_open" ref="0fa245f914223d99a283fb654c6b988a" args="(snd_pcm_t **pcmp, const char *name, snd_config_t *root, snd_config_t *conf, snd_pcm_stream_t stream, int mode)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int _snd_pcm_hw_open </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> ** </td>
<td class="paramname"> <em>pcmp</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___config.html#gb7dc173feea5bedcd999bba678eb53a7">snd_config_t</a> * </td>
<td class="paramname"> <em>root</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___config.html#gb7dc173feea5bedcd999bba678eb53a7">snd_config_t</a> * </td>
<td class="paramname"> <em>conf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> </td>
<td class="paramname"> <em>stream</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>mode</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Creates a new hw PCM.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>pcmp</em> </td><td>Returns created PCM handle </td></tr>
<tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>Name of PCM </td></tr>
<tr><td valign="top"></td><td valign="top"><em>root</em> </td><td>Root configuration node </td></tr>
<tr><td valign="top"></td><td valign="top"><em>conf</em> </td><td>Configuration node with hw PCM description </td></tr>
<tr><td valign="top"></td><td valign="top"><em>stream</em> </td><td>PCM Stream </td></tr>
<tr><td valign="top"></td><td valign="top"><em>mode</em> </td><td>PCM Mode </td></tr>
</table>
</dl>
<dl compact><dt><b>Warning:</b></dt><dd>Using of this function might be dangerous in the sense of compatibility reasons. The prototype might be freely changed in future. </dd></dl>
</div>
</div><p>
<a class="anchor" name="d0275f35954d3681fd8d016d5cf26749"></a><!-- doxytag: member="pcm_hw.c::snd_pcm_hw_open" ref="d0275f35954d3681fd8d016d5cf26749" args="(snd_pcm_t **pcmp, const char *name, int card, int device, int subdevice, snd_pcm_stream_t stream, int mode, int mmap_emulation, int sync_ptr_ioctl)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int snd_pcm_hw_open </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> ** </td>
<td class="paramname"> <em>pcmp</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>card</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>device</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>subdevice</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___p_c_m.html#g854f0966bd0d7248ed3d9e5c293136ed">snd_pcm_stream_t</a> </td>
<td class="paramname"> <em>stream</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>mode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>mmap_emulation</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>sync_ptr_ioctl</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Creates a new hw PCM.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>pcmp</em> </td><td>Returns created PCM handle </td></tr>
<tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>Name of PCM </td></tr>
<tr><td valign="top"></td><td valign="top"><em>card</em> </td><td>Number of card </td></tr>
<tr><td valign="top"></td><td valign="top"><em>device</em> </td><td>Number of device </td></tr>
<tr><td valign="top"></td><td valign="top"><em>subdevice</em> </td><td>Number of subdevice </td></tr>
<tr><td valign="top"></td><td valign="top"><em>stream</em> </td><td>PCM Stream </td></tr>
<tr><td valign="top"></td><td valign="top"><em>mode</em> </td><td>PCM Mode </td></tr>
<tr><td valign="top"></td><td valign="top"><em>mmap_emulation</em> </td><td>Obsoleted parameter </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sync_ptr_ioctl</em> </td><td>Use SYNC_PTR ioctl rather than mmap for control structures </td></tr>
</table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>zero</em> </td><td>on success otherwise a negative error code </td></tr>
</table>
</dl>
<dl compact><dt><b>Warning:</b></dt><dd>Using of this function might be dangerous in the sense of compatibility reasons. The prototype might be freely changed in future. </dd></dl>
</div>
</div><p>
<a class="anchor" name="08a7e9919e1c5d5cfc8ea71878a2c609"></a><!-- doxytag: member="pcm_hw.c::snd_pcm_hw_open_fd" ref="08a7e9919e1c5d5cfc8ea71878a2c609" args="(snd_pcm_t **pcmp, const char *name, int fd, int mmap_emulation, int sync_ptr_ioctl)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int snd_pcm_hw_open_fd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___p_c_m.html#gb5676348e7618b444e28907607660cef">snd_pcm_t</a> ** </td>
<td class="paramname"> <em>pcmp</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"> <em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>fd</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>mmap_emulation</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>sync_ptr_ioctl</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Creates a new hw PCM.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>pcmp</em> </td><td>Returns created PCM handle </td></tr>
<tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>Name of PCM </td></tr>
<tr><td valign="top"></td><td valign="top"><em>fd</em> </td><td>File descriptor </td></tr>
<tr><td valign="top"></td><td valign="top"><em>mmap_emulation</em> </td><td>Obsoleted parameter </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sync_ptr_ioctl</em> </td><td>Boolean flag for sync_ptr ioctl </td></tr>
</table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>zero</em> </td><td>on success otherwise a negative error code </td></tr>
</table>
</dl>
<dl compact><dt><b>Warning:</b></dt><dd>Using of this function might be dangerous in the sense of compatibility reasons. The prototype might be freely changed in future. </dd></dl>
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jan 20 22:42:10 2009 for ALSA project - the C library reference by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>