<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.3"/> <title>GNU Radio 3.6.4.1 C++ API: UHD Interface</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">GNU Radio 3.6.4.1 C++ API </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.3 --> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('group__uhd__blk.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">UHD Interface<div class="ingroups"><a class="el" href="group__block.html">GNU Radio C++ Signal Processing Blocks</a></div></div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Collaboration diagram for UHD Interface:</div> <div class="dyncontent"> <center><table><tr><td><img src="group__uhd__blk.png" border="0" alt="" usemap="#group____uhd____blk"/> <map name="group____uhd____blk" id="group____uhd____blk"> <area shape="rect" id="node1" href="group__block.html" title="All C++ blocks that can be used in GR graphs are listed here or in the subcategories below..." alt="" coords="5,5,165,46"/></map> </td></tr></table></center> </div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:gaa05125887cab9f7fb43e4d93243eb1a0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><br class="typebreak"/> < <a class="el" href="classuhd__amsg__source.html">uhd_amsg_source</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="group__uhd__blk.html#gaa05125887cab9f7fb43e4d93243eb1a0">uhd_make_amsg_source</a> (const uhd::device_addr_t &device_addr, <a class="el" href="classboost_1_1shared__ptr.html">gr_msg_queue_sptr</a> msgq)</td></tr> <tr class="memdesc:gaa05125887cab9f7fb43e4d93243eb1a0"><td class="mdescLeft"> </td><td class="mdescRight">Make a new USRP asynchronous message-based source block. <a href="#gaa05125887cab9f7fb43e4d93243eb1a0"></a><br/></td></tr> <tr class="separator:gaa05125887cab9f7fb43e4d93243eb1a0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae6b24e6bb291ec3aeddd50b7c48721b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><br class="typebreak"/> < <a class="el" href="classuhd__usrp__sink.html">uhd_usrp_sink</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="group__uhd__blk.html#gae6b24e6bb291ec3aeddd50b7c48721b0">uhd_make_usrp_sink</a> (const uhd::device_addr_t &device_addr, const uhd::io_type_t &io_type, size_t num_channels)</td></tr> <tr class="memdesc:gae6b24e6bb291ec3aeddd50b7c48721b0"><td class="mdescLeft"> </td><td class="mdescRight">Make a new USRP sink block.The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings. <a href="#gae6b24e6bb291ec3aeddd50b7c48721b0"></a><br/></td></tr> <tr class="separator:gae6b24e6bb291ec3aeddd50b7c48721b0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga21d8f9c05e6a24d118628e2ed98c2e4d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><br class="typebreak"/> < <a class="el" href="classuhd__usrp__source.html">uhd_usrp_source</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="group__uhd__blk.html#ga21d8f9c05e6a24d118628e2ed98c2e4d">uhd_make_usrp_source</a> (const uhd::device_addr_t &device_addr, const uhd::io_type_t &io_type, size_t num_channels)</td></tr> <tr class="memdesc:ga21d8f9c05e6a24d118628e2ed98c2e4d"><td class="mdescLeft"> </td><td class="mdescRight">Make a new USRP source block.The USRP source block receives samples and writes to a stream. The source block also provides API calls for receiver settings. <a href="#ga21d8f9c05e6a24d118628e2ed98c2e4d"></a><br/></td></tr> <tr class="separator:ga21d8f9c05e6a24d118628e2ed98c2e4d"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="gaa05125887cab9f7fb43e4d93243eb1a0"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><<a class="el" href="classuhd__amsg__source.html">uhd_amsg_source</a>> uhd_make_amsg_source </td> <td>(</td> <td class="paramtype">const uhd::device_addr_t & </td> <td class="paramname"><em>device_addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classboost_1_1shared__ptr.html">gr_msg_queue_sptr</a> </td> <td class="paramname"><em>msgq</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Make a new USRP asynchronous message-based source block. </p> </div> </div> <a class="anchor" id="gae6b24e6bb291ec3aeddd50b7c48721b0"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><<a class="el" href="classuhd__usrp__sink.html">uhd_usrp_sink</a>> uhd_make_usrp_sink </td> <td>(</td> <td class="paramtype">const uhd::device_addr_t & </td> <td class="paramname"><em>device_addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const uhd::io_type_t & </td> <td class="paramname"><em>io_type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>num_channels</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Make a new USRP sink block.The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings. </p> <p>TX Stream tagging:</p> <p>The following tag keys will be consumed by the work function:</p> <ul> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("tx_sob")</li> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("tx_eob")</li> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("tx_time")</li> </ul> <p>The sob and eob (start and end of burst) tag values are pmt booleans. When present, burst tags should be set to true (<a class="el" href="namespacepmt.html#ad41a6c124e405727b4b5ea54247005ac">pmt::PMT_T</a>).</p> <p>The timstamp tag value is a pmt tuple of the following: (uint64 seconds, and double fractional seconds).</p> <p>See the UHD manual for more detailed documentation: <a href="http://code.ettus.com/redmine/ettus/projects/uhd/wiki">http://code.ettus.com/redmine/ettus/projects/uhd/wiki</a></p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">device_addr</td><td>the address to identify the hardware </td></tr> <tr><td class="paramname">io_type</td><td>the desired input data type </td></tr> <tr><td class="paramname">num_channels</td><td>number of stream from the device </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>a new USRP sink block object </dd></dl> </div> </div> <a class="anchor" id="ga21d8f9c05e6a24d118628e2ed98c2e4d"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="gr__uhd__api_8h.html#af9aa018424cf030907c7f8c5a48f4771">GR_UHD_API</a> <a class="el" href="classboost_1_1shared__ptr.html">boost::shared_ptr</a><<a class="el" href="classuhd__usrp__source.html">uhd_usrp_source</a>> uhd_make_usrp_source </td> <td>(</td> <td class="paramtype">const uhd::device_addr_t & </td> <td class="paramname"><em>device_addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const uhd::io_type_t & </td> <td class="paramname"><em>io_type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>num_channels</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Make a new USRP source block.The USRP source block receives samples and writes to a stream. The source block also provides API calls for receiver settings. </p> <p>RX Stream tagging:</p> <p>The following tag keys will be produced by the work function:</p> <ul> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("rx_time")</li> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("rx_rate")</li> <li><a class="el" href="namespacepmt.html#a9175b04fc88cb7be663ee7b7925dfda6" title="Return the symbol whose name is s.">pmt::pmt_string_to_symbol</a>("rx_freq")</li> </ul> <p>The timstamp tag value is a pmt tuple of the following: (uint64 seconds, and double fractional seconds). A timestamp tag is produced at start() and after overflows.</p> <p>The sample rate and center frequency tags are doubles, representing the sample rate in Sps and frequency in Hz. These tags are produced upon the user changing parameters.</p> <p>See the UHD manual for more detailed documentation: <a href="http://code.ettus.com/redmine/ettus/projects/uhd/wiki">http://code.ettus.com/redmine/ettus/projects/uhd/wiki</a></p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">device_addr</td><td>the address to identify the hardware </td></tr> <tr><td class="paramname">io_type</td><td>the desired output data type </td></tr> <tr><td class="paramname">num_channels</td><td>number of stream from the device </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>a new USRP source block object </dd></dl> </div> </div> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="footer">Generated on Fri Apr 19 2013 16:20:35 for GNU Radio 3.6.4.1 C++ API by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3 </li> </ul> </div> </body> </html>