📄 sink_8h.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>BlueLab: sink.h File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.8 --><div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a></div><h1>sink.h File Reference</h1>Operations on sinks which take 8-bit data. <a href="#_details">More...</a><p><h2>Functions</h2><ul><li><a class="el" href="csrtypes_8h.html#a4">uint16</a> <a class="el" href="sink_8h.html#a0">SinkSlack</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink)<dl class="el"><dd class="mdescRight">Report how many bytes can successfully be claimed in the corresponding sink. Returns zero if the sink is not valid. <a href="#a0"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a4">uint16</a> <a class="el" href="sink_8h.html#a1">SinkClaim</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink, <a class="el" href="csrtypes_8h.html#a4">uint16</a> extra)<dl class="el"><dd class="mdescRight">Attempt to claim the indicated number of extra bytes in a sink. <a href="#a1"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a8">uint8</a> * <a class="el" href="sink_8h.html#a2">SinkMap</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink)<dl class="el"><dd class="mdescRight">Map the sink into the address map, returning a pointer to the first byte in the sink. <a href="#a2"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a3">SinkFlush</a> (<a class="el" href="sink___8h.html#a0">Sink</a>, <a class="el" href="csrtypes_8h.html#a4">uint16</a> amount)<dl class="el"><dd class="mdescRight">Flush the indicated number of bytes out of the sink. <a href="#a3"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a4">SinkFlushHeader</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink, <a class="el" href="csrtypes_8h.html#a4">uint16</a> amount, const <a class="el" href="csrtypes_8h.html#a4">uint16</a> *header, <a class="el" href="csrtypes_8h.html#a4">uint16</a> length)<dl class="el"><dd class="mdescRight">Flush the indicated number of bytes out of the sink. <a href="#a4"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a5">SinkGetBdAddr</a> (<a class="el" href="sink___8h.html#a0">Sink</a>, <a class="el" href="structbdaddr.html">bdaddr</a> *)<dl class="el"><dd class="mdescRight">Get the Bluetooth address from a sink. <a href="#a5"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a6">SinkConfigure</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink, <a class="el" href="vm__if_8h.html#a60">vm_sink_config_key</a> key, <a class="el" href="csrtypes_8h.html#a4">uint16</a> value)<dl class="el"><dd class="mdescRight">Configure a particular sink. <a href="#a6"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a7">SinkGetRssi</a> (<a class="el" href="sink___8h.html#a0">Sink</a>, <a class="el" href="csrtypes_8h.html#a6">int16</a> *rssi)<dl class="el"><dd class="mdescRight">Get the RSSI for the ACL for a sink. <a href="#a7"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a8">SinkPollAwayTime</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink, <a class="el" href="csrtypes_8h.html#a4">uint16</a> *msec)<dl class="el"><dd class="mdescRight">Read the away time on the underlying ACL. <a href="#a8"></a><br></dl><li><a class="el" href="csrtypes_8h.html#a9">bool</a> <a class="el" href="sink_8h.html#a9">SinkIsValid</a> (<a class="el" href="sink___8h.html#a0">Sink</a> sink)<dl class="el"><dd class="mdescRight">Return non-zero if a sink is valid, zero otherwise. <a href="#a9"></a><br></dl></ul><hr><a name="_details"></a><h2>Detailed Description</h2>Operations on sinks which take 8-bit data. <p><hr><h2>Function Documentation</h2><a class="anchor" name="a0" doxytag="sink.h::SinkSlack" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a4">uint16</a> SinkSlack </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="sink___8h.html#a0">Sink</a> </td> <td class="mdname1" valign="top" nowrap> <em>sink</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Report how many bytes can successfully be claimed in the corresponding sink. Returns zero if the sink is not valid. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>sink</em> </td><td>The Sink to check. </td></tr> </table></dl> </td> </tr></table><a class="anchor" name="a1" doxytag="sink.h::SinkClaim" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a4">uint16</a> SinkClaim </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="sink___8h.html#a0">Sink</a> </td> <td class="mdname" nowrap> <em>sink</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="csrtypes_8h.html#a4">uint16</a> </td> <td class="mdname" nowrap> <em>extra</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Attempt to claim the indicated number of extra bytes in a sink. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>sink</em> </td><td>The sink to claim. </td></tr> <tr><td></td><td valign=top><em>extra</em> </td><td>The number of bytes to attempt to claim.</td></tr> </table></dl>Returns the offset of the claimed region if the claim was successful, 0xFFFF otherwise. Claims will certainly fail if the sink is invalid, or if SinkSlack indicates that the space is unavailable. </td> </tr></table><a class="anchor" name="a2" doxytag="sink.h::SinkMap" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a8">uint8</a>* SinkMap </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="sink___8h.html#a0">Sink</a> </td> <td class="mdname1" valign="top" nowrap> <em>sink</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Map the sink into the address map, returning a pointer to the first byte in the sink. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>sink</em> </td><td>The sink to map into the address map.</td></tr> </table></dl>Only the total number of claimed bytes (as returned by SinkClaim(sink,0)) are accessible. At most one sink can be mapped in at any time; pointers previously obtained from SinkMap become invalid when another call to SinkMap is made.<p>Returns NULL if the sink is invalid. </td> </tr></table><a class="anchor" name="a3" doxytag="sink.h::SinkFlush" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a9">bool</a> SinkFlush </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="sink___8h.html#a0">Sink</a> </td> <td class="mdname" nowrap>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="csrtypes_8h.html#a4">uint16</a> </td> <td class="mdname" nowrap> <em>amount</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Flush the indicated number of bytes out of the sink. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>Sink</em> </td><td>The Sink to flush. </td></tr> <tr><td></td><td valign=top><em>amount</em> </td><td>The number of bytes to flush.</td></tr> </table></dl>The specified bytes of data are passed to the corresponding byte stream, for example out to the UART, or into BlueStack as if sent by a RFC_DATA_IND for uart/rfcomm sinks respectively.<p>Returns zero if the operation failed because the sink was invalid or amount exceeded the size of the sink as reported by SinkClaim(sink, 0). Return a non-zero value on success. </td> </tr></table><a class="anchor" name="a4" doxytag="sink.h::SinkFlushHeader" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a9">bool</a> SinkFlushHeader </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="sink___8h.html#a0">Sink</a> </td> <td class="mdname" nowrap> <em>sink</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="csrtypes_8h.html#a4">uint16</a> </td> <td class="mdname" nowrap> <em>amount</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap>const <a class="el" href="csrtypes_8h.html#a4">uint16</a> * </td> <td class="mdname" nowrap> <em>header</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td></td> <td class="md" nowrap><a class="el" href="csrtypes_8h.html#a4">uint16</a> </td> <td class="mdname" nowrap> <em>length</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Flush the indicated number of bytes out of the sink. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>sink</em> </td><td>The Sink to flush data from. </td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -