Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 6e7a2755bd78c9deedab199b86e675f3 > files > 2094

gnuradio-doc-3.2.2-9.fc14.x86_64.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>GNU Radio 3.2.2 C++ API: gr_throttle Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<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.2.2 C++ API</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('classgr__throttle.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<h1>gr_throttle Class Reference<div class="ingroups"><a class="el" href="group__misc__blk.html">Miscellaneous Blocks</a></div></h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="gr_throttle" --><!-- doxytag: inherits="gr_sync_block" -->
<p>throttle flow of samples such that the average rate does not exceed samples_per_sec.input: one stream of itemsize; output: one stream of itemsize  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="gr__throttle_8h_source.html">gr_throttle.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gr_throttle:</div>
<div class="dyncontent">
<div class="center"><img src="classgr__throttle__inherit__graph.png" border="0" usemap="#gr__throttle_inherit__map" alt="Inheritance graph"/></div>
<map name="gr__throttle_inherit__map" id="gr__throttle_inherit__map">
<area shape="rect" id="node2" href="classgr__sync__block.html" title="synchronous 1:1 input to output with historyOverride work to provide the signal processing implementa..." alt="" coords="7,160,113,189"/><area shape="rect" id="node4" href="classgr__block.html" title="The abstract base class for all &#39;terminal&#39; processing blocks.A signal processing flow is cons..." alt="" coords="25,83,95,112"/><area shape="rect" id="node6" href="classgr__basic__block.html" title="The abstract base class for all signal processing blocks.Basic blocks are the bare abstraction of an ..." alt="" coords="5,5,115,35"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classgr__throttle-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__throttle.html#a8885c3c6ab6d7a53b348792efb0b3c5e">~gr_throttle</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__throttle.html#a7f01eee4ac1c7d70592118a7f19853ec">work</a> (int noutput_items, <a class="el" href="classstd_1_1vector.html">gr_vector_const_void_star</a> &amp;input_items, <a class="el" href="classstd_1_1vector.html">gr_vector_void_star</a> &amp;output_items)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">just like <a class="el" href="classgr__block.html#a137b93d87dc83bbdb6369d33f4ea8197" title="compute output items from input items">gr_block::general_work</a>, only this arranges to call consume_each for you  <a href="#a7f01eee4ac1c7d70592118a7f19853ec"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_throttle_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__throttle.html#a863d28356ce4fe780cc43fa9a30ec8a7">gr_make_throttle</a> (size_t itemsize, double samples_per_sec)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>throttle flow of samples such that the average rate does not exceed samples_per_sec.</p>
<p>input: one stream of itemsize; output: one stream of itemsize </p>
<p>N.B. this should only be used in GUI apps where there is no other rate limiting block. It is not intended nor effective at precisely controlling the rate of samples. That should be controlled by a source or sink tied to sample clock. E.g., a USRP or audio card. </p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8885c3c6ab6d7a53b348792efb0b3c5e"></a><!-- doxytag: member="gr_throttle::~gr_throttle" ref="a8885c3c6ab6d7a53b348792efb0b3c5e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gr_throttle::~gr_throttle </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a7f01eee4ac1c7d70592118a7f19853ec"></a><!-- doxytag: member="gr_throttle::work" ref="a7f01eee4ac1c7d70592118a7f19853ec" args="(int noutput_items, gr_vector_const_void_star &amp;input_items, gr_vector_void_star &amp;output_items)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gr_throttle::work </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>noutput_items</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classstd_1_1vector.html">gr_vector_const_void_star</a> &amp;&#160;</td>
          <td class="paramname"><em>input_items</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classstd_1_1vector.html">gr_vector_void_star</a> &amp;&#160;</td>
          <td class="paramname"><em>output_items</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>just like <a class="el" href="classgr__block.html#a137b93d87dc83bbdb6369d33f4ea8197" title="compute output items from input items">gr_block::general_work</a>, only this arranges to call consume_each for you </p>
<p>The user must override work to define the signal processing code </p>

<p>Implements <a class="el" href="classgr__sync__block.html#a0c523f4285a6eb690f677ee6295ab117">gr_sync_block</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a863d28356ce4fe780cc43fa9a30ec8a7"></a><!-- doxytag: member="gr_throttle::gr_make_throttle" ref="a863d28356ce4fe780cc43fa9a30ec8a7" args="(size_t itemsize, double samples_per_sec)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_throttle_sptr</a> gr_make_throttle </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>itemsize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>samples_per_sec</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="gr__throttle_8h_source.html">gr_throttle.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="classgr__throttle.html">gr_throttle</a>      </li>
      <li class="footer">Generated on Thu Feb 17 2011 for GNU Radio 3.2.2 C++ API by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
    </ul>
  </div>

</body>
</html>