Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > contrib-backports > by-pkgid > e1990170655e25252b23301d6cebc16d > files > 679

usrp-doc-3.3.0-8mdv2010.1.i586.rpm

<!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"/>
<title>Universal Software Radio Peripheral: usrp_standard_tx Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>usrp_standard_tx Class Reference</h1><!-- doxytag: class="usrp_standard_tx" --><!-- doxytag: inherits="usrp_basic_tx,usrp_standard_common" -->
<p>The C++ interface the transmit side of the USRPThis is the recommended interface to USRP transmit functionality for applications that use the USRP but not GNU Radio.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="usrp__standard_8h_source.html">usrp_standard.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for usrp_standard_tx:</div>
<div class="dynsection">
<div class="center"><img src="classusrp__standard__tx__inherit__graph.png" border="0" usemap="#usrp__standard__tx_inherit__map" alt="Inheritance graph"/></div>
<map name="usrp__standard__tx_inherit__map" id="usrp__standard__tx_inherit__map">
<area shape="rect" id="node2" href="classusrp__basic__tx.html" title="class for accessing the transmit side of the USRP" alt="" coords="5,83,107,112"/><area shape="rect" id="node4" href="classusrp__basic.html" title="abstract base class for usrp operations" alt="" coords="13,5,99,35"/><area shape="rect" id="node6" href="classusrp__standard__common.html" title="usrp_standard_common" alt="" coords="131,83,291,112"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for usrp_standard_tx:</div>
<div class="dynsection">
<div class="center"><img src="classusrp__standard__tx__coll__graph.png" border="0" usemap="#usrp__standard__tx_coll__map" alt="Collaboration graph"/></div>
<map name="usrp__standard__tx_coll__map" id="usrp__standard__tx_coll__map">
<area shape="rect" id="node2" href="classusrp__basic__tx.html" title="class for accessing the transmit side of the USRP" alt="" coords="120,197,221,227"/><area shape="rect" id="node4" href="classusrp__basic.html" title="abstract base class for usrp operations" alt="" coords="5,101,91,131"/><area shape="rect" id="node6" href="structusb__dev__handle.html" title="usb_dev_handle" alt="" coords="59,5,173,35"/><area shape="rect" id="node8" href="classfusb__devhandle.html" title="abstract usb device handle" alt="" coords="115,101,227,131"/><area shape="rect" id="node11" href="classfusb__ephandle.html" title="abstract usb end point handle" alt="" coords="251,101,357,131"/><area shape="rect" id="node13" href="classusrp__standard__common.html" title="usrp_standard_common" alt="" coords="245,197,405,227"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classusrp__standard__tx-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">coarse_mod_t</a> { <br/>
&nbsp;&nbsp;<a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191a55fe460189a049f7aea3f9bc149adf91">CM_NEG_FDAC_OVER_4</a>, 
<a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191a98ba952bdb469cbbb02a163216162e7c">CM_NEG_FDAC_OVER_8</a>, 
<a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191afd3ae5e29447d64701502467ce0886c7">CM_OFF</a>, 
<a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191ad3e2a1cb01acbb2e491780a2ad334e14">CM_POS_FDAC_OVER_8</a>, 
<br/>
&nbsp;&nbsp;<a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191aad92fc027ad13bcbf3cc8839918822bc">CM_POS_FDAC_OVER_4</a>
<br/>
 }</td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a440777cafe861f07ddeafa4d30327a1d">~usrp_standard_tx</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a7b092ae2811927291ffc3491e4461282">set_interp_rate</a> (unsigned int rate)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set interpolator rate. <code>rate</code> must be in [4, 512] and a multiple of 4.  <a href="#a7b092ae2811927291ffc3491e4461282"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a5e9167c1f811c6446467ba2935cde618">set_nchannels</a> (int nchannels)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set number of active channels. <code>nchannels</code> must be 1 or 2.  <a href="#a5e9167c1f811c6446467ba2935cde618"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a2e432c316c8a91613b9603ebe664bfd1">set_mux</a> (int mux)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set output mux configuration.  <a href="#a2e432c316c8a91613b9603ebe664bfd1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a386da4e76f7b2393563e48555c613a96">determine_tx_mux_value</a> (const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;ss)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a24a7b471679b8e2485bfff5cce7adb96">determine_tx_mux_value</a> (const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;ss_a, const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;ss_b)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ae75deb35fef49d5e647b2141443d7106">set_tx_freq</a> (int channel, double freq)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the frequency of the digital up converter.  <a href="#ae75deb35fef49d5e647b2141443d7106"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a2268e9e90e037cce86f9f83cce2a006d">interp_rate</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#aa527ce0117c6f6fb6e89f09efb4e381f">tx_freq</a> (int channel) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#afc401f90409da171a5de0f91cf5749ef">nchannels</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a18b5e48aee2ab110932d382b94e71268">mux</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a5c992590408fe90d4711e355ee12852f">tune</a> (int chan, <a class="el" href="db__base_8h.html#a61ead10400f658a22128a321e14ae0ac">db_base_sptr</a> db, double target_freq, <a class="el" href="classusrp__tune__result.html">usrp_tune_result</a> *result)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">High-level "tune" method. Works for the single channel case.  <a href="#a5c992590408fe90d4711e355ee12852f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ae6f8039f30bf641b937877001127176f">start</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Start data transfers. Called in base class to derived class order.  <a href="#ae6f8039f30bf641b937877001127176f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a5173292e6162fce54a875683f02cdd5c">stop</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stop data transfers. Called in base class to derived class order.  <a href="#a5173292e6162fce54a875683f02cdd5c"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="usrp__standard_8h.html#a0982118b5bcfa5fd08137dd5a7583b07">usrp_standard_tx_sptr</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ac156d958c028f4c30a18bda9f23ba8b9">make</a> (int which_board, unsigned int interp_rate, int nchan=1, int mux=-1, int fusb_block_size=0, int fusb_nblocks=0, const std::string fpga_filename=&quot;&quot;, const std::string firmware_filename=&quot;&quot;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">invokes constructor, returns shared_ptr or shared_ptr equivalent of 0 if trouble  <a href="#ac156d958c028f4c30a18bda9f23ba8b9"></a><br/></td></tr>
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ac19e5234b3139a369a9c7ad5844190ed">set_coarse_modulator</a> (int channel, <a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">coarse_mod_t</a> cm)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">usrp_standard_tx::coarse_mod_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a878b5d0c2c3878a27c54eb95122467f9">coarse_modulator</a> (int channel) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ab3ebe65a0203867b6c71edcf2d4ffb88">usrp_standard_tx</a> (int which_board, unsigned int interp_rate, int nchan=1, int mux=-1, int fusb_block_size=0, int fusb_nblocks=0, const std::string fpga_filename=&quot;&quot;, const std::string firmware_filename=&quot;&quot;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#abd05aee7bbd18ef62bcc8dc18a11a960">write_hw_mux_reg</a> ()</td></tr>
<tr><td colspan="2"><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#ac1c7c7ce9479045ad9dca8f409f5ef87">d_interp_rate</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a536872bd7b7f90d94bf58f5b45df0f3d">d_nchan</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#adc70d6cc3f72451cd83b7276d35b2615">d_sw_mux</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a4b22d4e7f26f031d01fe99b4c8394447">d_hw_mux</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a28918715849de2505bd480cccb5d6b4c">d_tx_freq</a> [<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">coarse_mod_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a5c439350ad4d861c49c21d203110eedb">d_coarse_mod</a> [<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a1b713d251419953e67467df19295c385">d_tx_modulator_shadow</a> [<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]</td></tr>
<tr><td colspan="2"><h2>Static Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a> = 2</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>The C++ interface the transmit side of the USRP</p>
<p>This is the recommended interface to USRP transmit functionality for applications that use the USRP but not GNU Radio. </p>
<p>Uses digital upconverter (coarse &amp; fine modulators) in AD9862... </p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a4c70322824b7b9d040aa265d0587c191"></a><!-- doxytag: member="usrp_standard_tx::coarse_mod_t" ref="a4c70322824b7b9d040aa265d0587c191" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">usrp_standard_tx::coarse_mod_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a4c70322824b7b9d040aa265d0587c191a55fe460189a049f7aea3f9bc149adf91"></a><!-- doxytag: member="CM_NEG_FDAC_OVER_4" ref="a4c70322824b7b9d040aa265d0587c191a55fe460189a049f7aea3f9bc149adf91" args="" -->CM_NEG_FDAC_OVER_4</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4c70322824b7b9d040aa265d0587c191a98ba952bdb469cbbb02a163216162e7c"></a><!-- doxytag: member="CM_NEG_FDAC_OVER_8" ref="a4c70322824b7b9d040aa265d0587c191a98ba952bdb469cbbb02a163216162e7c" args="" -->CM_NEG_FDAC_OVER_8</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4c70322824b7b9d040aa265d0587c191afd3ae5e29447d64701502467ce0886c7"></a><!-- doxytag: member="CM_OFF" ref="a4c70322824b7b9d040aa265d0587c191afd3ae5e29447d64701502467ce0886c7" args="" -->CM_OFF</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4c70322824b7b9d040aa265d0587c191ad3e2a1cb01acbb2e491780a2ad334e14"></a><!-- doxytag: member="CM_POS_FDAC_OVER_8" ref="a4c70322824b7b9d040aa265d0587c191ad3e2a1cb01acbb2e491780a2ad334e14" args="" -->CM_POS_FDAC_OVER_8</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4c70322824b7b9d040aa265d0587c191aad92fc027ad13bcbf3cc8839918822bc"></a><!-- doxytag: member="CM_POS_FDAC_OVER_4" ref="a4c70322824b7b9d040aa265d0587c191aad92fc027ad13bcbf3cc8839918822bc" args="" -->CM_POS_FDAC_OVER_4</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab3ebe65a0203867b6c71edcf2d4ffb88"></a><!-- doxytag: member="usrp_standard_tx::usrp_standard_tx" ref="ab3ebe65a0203867b6c71edcf2d4ffb88" args="(int which_board, unsigned int interp_rate, int nchan=1, int mux=&#45;1, int fusb_block_size=0, int fusb_nblocks=0, const std::string fpga_filename=&quot;&quot;, const std::string firmware_filename=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">usrp_standard_tx::usrp_standard_tx </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>which_board</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>interp_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nchan</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mux</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>fusb_block_size</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>fusb_nblocks</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&nbsp;</td>
          <td class="paramname"> <em>fpga_filename</em> = <code>&quot;&quot;</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&nbsp;</td>
          <td class="paramname"> <em>firmware_filename</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00300">CM_OFF</a>, <a class="el" href="usrp__standard_8h_source.html#l00312">d_coarse_mod</a>, <a class="el" href="usrp__standard_8h_source.html#l00313">d_tx_modulator_shadow</a>, <a class="el" href="usrp__basic_8h_source.html#l00069">usrp_basic::d_udh</a>, <a class="el" href="usrp__standard_8h_source.html#l00306">MAX_CHAN</a>, <a class="el" href="usrp__standard_8cc_source.html#l00897">set_interp_rate()</a>, <a class="el" href="usrp__standard_8cc_source.html#l00934">set_mux()</a>, <a class="el" href="usrp__standard_8cc_source.html#l00921">set_nchannels()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01018">set_tx_freq()</a>, <a class="el" href="ad9862_8h_source.html#l00126">TX_MODULATOR_COARSE_MODULATION_NONE</a>, <a class="el" href="ad9862_8h_source.html#l00122">TX_MODULATOR_DISABLE_NCO</a>, and <a class="el" href="usrp__prims__common_8cc_source.html#l00926">usrp_9862_write_many_all()</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00875">make()</a>.</p>

</div>
</div>
<a class="anchor" id="a440777cafe861f07ddeafa4d30327a1d"></a><!-- doxytag: member="usrp_standard_tx::~usrp_standard_tx" ref="a440777cafe861f07ddeafa4d30327a1d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">usrp_standard_tx::~usrp_standard_tx </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a878b5d0c2c3878a27c54eb95122467f9"></a><!-- doxytag: member="usrp_standard_tx::coarse_modulator" ref="a878b5d0c2c3878a27c54eb95122467f9" args="(int channel) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">usrp_standard_tx::coarse_mod_t</a> usrp_standard_tx::coarse_modulator </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>channel</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00300">CM_OFF</a>, <a class="el" href="usrp__standard_8h_source.html#l00312">d_coarse_mod</a>, and <a class="el" href="usrp__standard_8h_source.html#l00306">MAX_CHAN</a>.</p>

</div>
</div>
<a class="anchor" id="a24a7b471679b8e2485bfff5cce7adb96"></a><!-- doxytag: member="usrp_standard_tx::determine_tx_mux_value" ref="a24a7b471679b8e2485bfff5cce7adb96" args="(const usrp_subdev_spec &amp;ss_a, const usrp_subdev_spec &amp;ss_b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int usrp_standard_tx::determine_tx_mux_value </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ss_a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ss_b</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8cc_source.html#l00951">determine_tx_mux_value()</a>, <a class="el" href="usrp__subdev__spec_8h_source.html#l00043">usrp_subdev_spec::side</a>, and <a class="el" href="usrp__subdev__spec_8h_source.html#l00044">usrp_subdev_spec::subdev</a>.</p>

</div>
</div>
<a class="anchor" id="a386da4e76f7b2393563e48555c613a96"></a><!-- doxytag: member="usrp_standard_tx::determine_tx_mux_value" ref="a386da4e76f7b2393563e48555c613a96" args="(const usrp_subdev_spec &amp;ss)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int usrp_standard_tx::determine_tx_mux_value </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structusrp__subdev__spec.html">usrp_subdev_spec</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ss</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Determine the appropriate Tx mux value as a function of the subdevice choosen and the characteristics of the respective daughterboard. </p>

<p>References <a class="el" href="usrp__basic_8h_source.html#l00154">usrp_basic::db()</a>, <a class="el" href="usrp__basic_8cc_source.html#l00196">usrp_basic::is_valid()</a>, <a class="el" href="usrp__subdev__spec_8h_source.html#l00043">usrp_subdev_spec::side</a>, and <a class="el" href="usrp__subdev__spec_8h_source.html#l00044">usrp_subdev_spec::subdev</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00982">determine_tx_mux_value()</a>.</p>

</div>
</div>
<a class="anchor" id="a2268e9e90e037cce86f9f83cce2a006d"></a><!-- doxytag: member="usrp_standard_tx::interp_rate" ref="a2268e9e90e037cce86f9f83cce2a006d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int usrp_standard_tx::interp_rate </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00307">d_interp_rate</a>.</p>

</div>
</div>
<a class="anchor" id="ac156d958c028f4c30a18bda9f23ba8b9"></a><!-- doxytag: member="usrp_standard_tx::make" ref="ac156d958c028f4c30a18bda9f23ba8b9" args="(int which_board, unsigned int interp_rate, int nchan=1, int mux=&#45;1, int fusb_block_size=0, int fusb_nblocks=0, const std::string fpga_filename=&quot;&quot;, const std::string firmware_filename=&quot;&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="usrp__standard_8h.html#a0982118b5bcfa5fd08137dd5a7583b07">usrp_standard_tx_sptr</a> usrp_standard_tx::make </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>which_board</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>interp_rate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nchan</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mux</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>fusb_block_size</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>fusb_nblocks</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&nbsp;</td>
          <td class="paramname"> <em>fpga_filename</em> = <code>&quot;&quot;</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&nbsp;</td>
          <td class="paramname"> <em>firmware_filename</em> = <code>&quot;&quot;</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>invokes constructor, returns shared_ptr or shared_ptr equivalent of 0 if trouble </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>which_board</em>&nbsp;</td><td>Which USRP board on usb (not particularly useful; use 0) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>interp_rate</em>&nbsp;</td><td>interpolation factor </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nchan</em>&nbsp;</td><td>number of channels </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mux</em>&nbsp;</td><td>Tx mux setting, </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classusrp__standard__tx.html#a2e432c316c8a91613b9603ebe664bfd1" title="Set output mux configuration.">set_mux</a> </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fusb_block_size</em>&nbsp;</td><td>fast usb xfer block size. Must be a multiple of 512. Use zero for a reasonable default. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fusb_nblocks</em>&nbsp;</td><td>number of fast usb URBs to allocate. Use zero for a reasonable default. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fpga_filename</em>&nbsp;</td><td>Name of rbf file to load </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>firmware_filename</em>&nbsp;</td><td>Name of ihx file to load </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

<p>Referenced by <a class="el" href="test__usrp__standard__tx_8cc_source.html#l00169">main()</a>.</p>

</div>
</div>
<a class="anchor" id="a18b5e48aee2ab110932d382b94e71268"></a><!-- doxytag: member="usrp_standard_tx::mux" ref="a18b5e48aee2ab110932d382b94e71268" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int usrp_standard_tx::mux </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00309">d_sw_mux</a>.</p>

</div>
</div>
<a class="anchor" id="afc401f90409da171a5de0f91cf5749ef"></a><!-- doxytag: member="usrp_standard_tx::nchannels" ref="afc401f90409da171a5de0f91cf5749ef" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int usrp_standard_tx::nchannels </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00308">d_nchan</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00897">set_interp_rate()</a>.</p>

</div>
</div>
<a class="anchor" id="ac19e5234b3139a369a9c7ad5844190ed"></a><!-- doxytag: member="usrp_standard_tx::set_coarse_modulator" ref="ac19e5234b3139a369a9c7ad5844190ed" args="(int channel, coarse_mod_t cm)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::set_coarse_modulator </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>channel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">coarse_mod_t</a>&nbsp;</td>
          <td class="paramname"> <em>cm</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00298">CM_NEG_FDAC_OVER_4</a>, <a class="el" href="usrp__standard_8h_source.html#l00299">CM_NEG_FDAC_OVER_8</a>, <a class="el" href="usrp__standard_8h_source.html#l00300">CM_OFF</a>, <a class="el" href="usrp__standard_8h_source.html#l00302">CM_POS_FDAC_OVER_4</a>, <a class="el" href="usrp__standard_8h_source.html#l00301">CM_POS_FDAC_OVER_8</a>, <a class="el" href="usrp__standard_8h_source.html#l00312">d_coarse_mod</a>, <a class="el" href="usrp__standard_8h_source.html#l00313">d_tx_modulator_shadow</a>, <a class="el" href="usrp__standard_8h_source.html#l00306">MAX_CHAN</a>, <a class="el" href="ad9862_8h_source.html#l00129">TX_MODULATOR_CM_MASK</a>, <a class="el" href="ad9862_8h_source.html#l00127">TX_MODULATOR_COARSE_MODULATION_F_OVER_4</a>, <a class="el" href="ad9862_8h_source.html#l00128">TX_MODULATOR_COARSE_MODULATION_F_OVER_8</a>, and <a class="el" href="ad9862_8h_source.html#l00125">TX_MODULATOR_NEG_COARSE_TUNE</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01018">set_tx_freq()</a>.</p>

</div>
</div>
<a class="anchor" id="a7b092ae2811927291ffc3491e4461282"></a><!-- doxytag: member="usrp_standard_tx::set_interp_rate" ref="a7b092ae2811927291ffc3491e4461282" args="(unsigned int rate)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::set_interp_rate </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>rate</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set interpolator rate. <code>rate</code> must be in [4, 512] and a multiple of 4. </p>
<p>The final complex sample rate across the USB is dac_freq () / interp_rate () * nchannels () </p>

<p>References <a class="el" href="usrp__basic_8cc_source.html#l00380">usrp_basic::_write_fpga_reg()</a>, <a class="el" href="usrp__standard_8h_source.html#l00307">d_interp_rate</a>, <a class="el" href="usrp__basic_8h_source.html#l00964">usrp_basic_tx::dac_rate()</a>, <a class="el" href="usrp__basic_8cc_source.html#l01376">usrp_basic_tx::disable_tx()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01147">nchannels()</a>, <a class="el" href="usrp__basic_8cc_source.html#l01386">usrp_basic_tx::restore_tx()</a>, and <a class="el" href="usrp__basic_8cc_source.html#l00229">usrp_basic::set_usb_data_rate()</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="a2e432c316c8a91613b9603ebe664bfd1"></a><!-- doxytag: member="usrp_standard_tx::set_mux" ref="a2e432c316c8a91613b9603ebe664bfd1" args="(int mux)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::set_mux </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mux</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set output mux configuration. </p>
<pre>
     3                   2                   1                       
   1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
  +-------------------------------+-------+-------+-------+-------+
  |                               | DAC3  | DAC2  | DAC1  |  DAC0 |
  +-------------------------------+-------+-------+-------+-------+</pre><pre>  There are two interpolators with complex inputs and outputs.
  There are four DACs.</pre><pre>  Each 4-bit DACx field specifies the source for the DAC and
  whether or not that DAC is enabled.  Each subfield is coded
  like this:</pre><pre>     3 2 1 0
    +-+-----+
    |E|  N  |
    +-+-----+</pre><pre>  Where E is set if the DAC is enabled, and N specifies which
  interpolator output is connected to this DAC.</pre><pre>   N   which interp output
  ---  -------------------
   0   chan 0 I
   1   chan 0 Q
   2   chan 1 I
   3   chan 1 Q
 </pre> 
<p>References <a class="el" href="usrp__standard_8h_source.html#l00310">d_hw_mux</a>, <a class="el" href="usrp__standard_8h_source.html#l00309">d_sw_mux</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00942">write_hw_mux_reg()</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="a5e9167c1f811c6446467ba2935cde618"></a><!-- doxytag: member="usrp_standard_tx::set_nchannels" ref="a5e9167c1f811c6446467ba2935cde618" args="(int nchannels)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::set_nchannels </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>nchannels</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set number of active channels. <code>nchannels</code> must be 1 or 2. </p>
<p>The final complex sample rate across the USB is dac_freq () / decim_rate () * nchannels () </p>

<p>References <a class="el" href="usrp__standard_8h_source.html#l00308">d_nchan</a>, <a class="el" href="usrp__standard_8cc_source.html#l00299">usrp_standard_common::nducs()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00942">write_hw_mux_reg()</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="ae75deb35fef49d5e647b2141443d7106"></a><!-- doxytag: member="usrp_standard_tx::set_tx_freq" ref="ae75deb35fef49d5e647b2141443d7106" args="(int channel, double freq)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::set_tx_freq </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>channel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>freq</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the frequency of the digital up converter. </p>
<p><code>channel</code> must be in the range [0,1]. <code>freq</code> is the center frequency in Hz. It must be in the range [-44M, 44M]. The frequency specified is quantized. Use tx_freq to retrieve the actual value used. </p>

<p>References <a class="el" href="usrp__basic_8cc_source.html#l00426">usrp_basic::_write_9862()</a>, <a class="el" href="usrp__standard_8h_source.html#l00298">CM_NEG_FDAC_OVER_4</a>, <a class="el" href="usrp__standard_8h_source.html#l00299">CM_NEG_FDAC_OVER_8</a>, <a class="el" href="usrp__standard_8h_source.html#l00300">CM_OFF</a>, <a class="el" href="usrp__standard_8h_source.html#l00302">CM_POS_FDAC_OVER_4</a>, <a class="el" href="usrp__standard_8h_source.html#l00301">CM_POS_FDAC_OVER_8</a>, <a class="el" href="usrp__standard_8h_source.html#l00311">d_tx_freq</a>, <a class="el" href="usrp__standard_8h_source.html#l00313">d_tx_modulator_shadow</a>, <a class="el" href="usrp__basic_8h_source.html#l00073">usrp_basic::d_verbose</a>, <a class="el" href="usrp__basic_8h_source.html#l00964">usrp_basic_tx::dac_rate()</a>, <a class="el" href="usrp__standard_8h_source.html#l00306">MAX_CHAN</a>, <a class="el" href="ad9862_8h_source.html#l00120">REG_TX_MODULATOR</a>, <a class="el" href="ad9862_8h_source.html#l00133">REG_TX_NCO_FTW_15_8</a>, <a class="el" href="ad9862_8h_source.html#l00134">REG_TX_NCO_FTW_23_16</a>, <a class="el" href="ad9862_8h_source.html#l00132">REG_TX_NCO_FTW_7_0</a>, <a class="el" href="usrp__standard_8cc_source.html#l01103">set_coarse_modulator()</a>, <a class="el" href="ad9862_8h_source.html#l00123">TX_MODULATOR_ENABLE_NCO</a>, and <a class="el" href="ad9862_8h_source.html#l00121">TX_MODULATOR_NEG_FINE_TUNE</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00143">duc_control::set_dxc_freq()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="ae6f8039f30bf641b937877001127176f"></a><!-- doxytag: member="usrp_standard_tx::start" ref="ae6f8039f30bf641b937877001127176f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::start </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Start data transfers. Called in base class to derived class order. </p>

<p>Reimplemented from <a class="el" href="classusrp__basic__tx.html#a3d16b0d8e96d5124b6392bc44014124d">usrp_basic_tx</a>.</p>

<p>References <a class="el" href="usrp__basic_8cc_source.html#l01251">usrp_basic_tx::start()</a>.</p>

</div>
</div>
<a class="anchor" id="a5173292e6162fce54a875683f02cdd5c"></a><!-- doxytag: member="usrp_standard_tx::stop" ref="a5173292e6162fce54a875683f02cdd5c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::stop </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Stop data transfers. Called in base class to derived class order. </p>

<p>Reimplemented from <a class="el" href="classusrp__basic__tx.html#ab1c5851e72e29e86af914da5c7f62cf8">usrp_basic_tx</a>.</p>

</div>
</div>
<a class="anchor" id="a5c992590408fe90d4711e355ee12852f"></a><!-- doxytag: member="usrp_standard_tx::tune" ref="a5c992590408fe90d4711e355ee12852f" args="(int chan, db_base_sptr db, double target_freq, usrp_tune_result *result)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::tune </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>chan</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="db__base_8h.html#a61ead10400f658a22128a321e14ae0ac">db_base_sptr</a>&nbsp;</td>
          <td class="paramname"> <em>db</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>target_freq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classusrp__tune__result.html">usrp_tune_result</a> *&nbsp;</td>
          <td class="paramname"> <em>result</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>High-level "tune" method. Works for the single channel case. </p>
<p>This method adjusts both the daughterboard LO and the DUC so that DC in the complex baseband samples ends up at RF target_freq.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>chan</em>&nbsp;</td><td>which DUC channel we're controlling (usually == which_side). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>db</em>&nbsp;</td><td>the daughterboard we're controlling. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>target_freq</em>&nbsp;</td><td>the RF frequency we want our baseband translated to. </td></tr>
    <tr><td valign="top"><tt>[out]</tt>&nbsp;</td><td valign="top"><em>result</em>&nbsp;</td><td>details how the hardware was configured.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true iff everything was successful. </dd></dl>

<p>References <a class="el" href="usrp__basic_8h_source.html#l00963">usrp_basic_tx::converter_rate()</a>.</p>

</div>
</div>
<a class="anchor" id="aa527ce0117c6f6fb6e89f09efb4e381f"></a><!-- doxytag: member="usrp_standard_tx::tx_freq" ref="aa527ce0117c6f6fb6e89f09efb4e381f" args="(int channel) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double usrp_standard_tx::tx_freq </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>channel</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__standard_8h_source.html#l00311">d_tx_freq</a>, and <a class="el" href="usrp__standard_8h_source.html#l00306">MAX_CHAN</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00144">duc_control::dxc_freq()</a>.</p>

</div>
</div>
<a class="anchor" id="abd05aee7bbd18ef62bcc8dc18a11a960"></a><!-- doxytag: member="usrp_standard_tx::write_hw_mux_reg" ref="abd05aee7bbd18ef62bcc8dc18a11a960" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool usrp_standard_tx::write_hw_mux_reg </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="usrp__basic_8cc_source.html#l00380">usrp_basic::_write_fpga_reg()</a>, <a class="el" href="usrp__standard_8h_source.html#l00310">d_hw_mux</a>, <a class="el" href="usrp__standard_8h_source.html#l00308">d_nchan</a>, <a class="el" href="usrp__basic_8cc_source.html#l01376">usrp_basic_tx::disable_tx()</a>, and <a class="el" href="usrp__basic_8cc_source.html#l01386">usrp_basic_tx::restore_tx()</a>.</p>

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00934">set_mux()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00921">set_nchannels()</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a5c439350ad4d861c49c21d203110eedb"></a><!-- doxytag: member="usrp_standard_tx::d_coarse_mod" ref="a5c439350ad4d861c49c21d203110eedb" args="[MAX_CHAN]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classusrp__standard__tx.html#a4c70322824b7b9d040aa265d0587c191">coarse_mod_t</a> <a class="el" href="classusrp__standard__tx.html#a5c439350ad4d861c49c21d203110eedb">usrp_standard_tx::d_coarse_mod</a>[<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01162">coarse_modulator()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01103">set_coarse_modulator()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="a4b22d4e7f26f031d01fe99b4c8394447"></a><!-- doxytag: member="usrp_standard_tx::d_hw_mux" ref="a4b22d4e7f26f031d01fe99b4c8394447" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classusrp__standard__tx.html#a4b22d4e7f26f031d01fe99b4c8394447">usrp_standard_tx::d_hw_mux</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l00934">set_mux()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00942">write_hw_mux_reg()</a>.</p>

</div>
</div>
<a class="anchor" id="ac1c7c7ce9479045ad9dca8f409f5ef87"></a><!-- doxytag: member="usrp_standard_tx::d_interp_rate" ref="ac1c7c7ce9479045ad9dca8f409f5ef87" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="classusrp__standard__tx.html#ac1c7c7ce9479045ad9dca8f409f5ef87">usrp_standard_tx::d_interp_rate</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01144">interp_rate()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00897">set_interp_rate()</a>.</p>

</div>
</div>
<a class="anchor" id="a536872bd7b7f90d94bf58f5b45df0f3d"></a><!-- doxytag: member="usrp_standard_tx::d_nchan" ref="a536872bd7b7f90d94bf58f5b45df0f3d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classusrp__standard__tx.html#a536872bd7b7f90d94bf58f5b45df0f3d">usrp_standard_tx::d_nchan</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01147">nchannels()</a>, <a class="el" href="usrp__standard_8cc_source.html#l00921">set_nchannels()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00942">write_hw_mux_reg()</a>.</p>

</div>
</div>
<a class="anchor" id="adc70d6cc3f72451cd83b7276d35b2615"></a><!-- doxytag: member="usrp_standard_tx::d_sw_mux" ref="adc70d6cc3f72451cd83b7276d35b2615" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classusrp__standard__tx.html#adc70d6cc3f72451cd83b7276d35b2615">usrp_standard_tx::d_sw_mux</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01150">mux()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00934">set_mux()</a>.</p>

</div>
</div>
<a class="anchor" id="a28918715849de2505bd480cccb5d6b4c"></a><!-- doxytag: member="usrp_standard_tx::d_tx_freq" ref="a28918715849de2505bd480cccb5d6b4c" args="[MAX_CHAN]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classusrp__standard__tx.html#a28918715849de2505bd480cccb5d6b4c">usrp_standard_tx::d_tx_freq</a>[<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01018">set_tx_freq()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l01153">tx_freq()</a>.</p>

</div>
</div>
<a class="anchor" id="a1b713d251419953e67467df19295c385"></a><!-- doxytag: member="usrp_standard_tx::d_tx_modulator_shadow" ref="a1b713d251419953e67467df19295c385" args="[MAX_CHAN]" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned char <a class="el" href="classusrp__standard__tx.html#a1b713d251419953e67467df19295c385">usrp_standard_tx::d_tx_modulator_shadow</a>[<a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">MAX_CHAN</a>]<code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01103">set_coarse_modulator()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01018">set_tx_freq()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<a class="anchor" id="a2d21279d48272cf133db170b9f142218"></a><!-- doxytag: member="usrp_standard_tx::MAX_CHAN" ref="a2d21279d48272cf133db170b9f142218" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const int <a class="el" href="classusrp__standard__tx.html#a2d21279d48272cf133db170b9f142218">usrp_standard_tx::MAX_CHAN</a> = 2<code> [static, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="usrp__standard_8cc_source.html#l01162">coarse_modulator()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01103">set_coarse_modulator()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01018">set_tx_freq()</a>, <a class="el" href="usrp__standard_8cc_source.html#l01153">tx_freq()</a>, and <a class="el" href="usrp__standard_8cc_source.html#l00812">usrp_standard_tx()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="usrp__standard_8h_source.html">usrp_standard.h</a></li>
<li><a class="el" href="usrp__standard_8cc.html">usrp_standard.cc</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Dec 29 19:44:44 2010 for Universal Software Radio Peripheral by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>