Sophie

Sophie

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

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_unpacked_to_packed_ss 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__unpacked__to__packed__ss.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_unpacked_to_packed_ss Class Reference<div class="ingroups"><a class="el" href="group__converter__blk.html">Type Conversions</a></div></h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="gr_unpacked_to_packed_ss" --><!-- doxytag: inherits="gr_block" -->
<p>Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts.input: stream of short; output: stream of short.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="gr__unpacked__to__packed__ss_8h_source.html">gr_unpacked_to_packed_ss.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gr_unpacked_to_packed_ss:</div>
<div class="dyncontent">
<div class="center"><img src="classgr__unpacked__to__packed__ss__inherit__graph.png" border="0" usemap="#gr__unpacked__to__packed__ss_inherit__map" alt="Inheritance graph"/></div>
<map name="gr__unpacked__to__packed__ss_inherit__map" id="gr__unpacked__to__packed__ss_inherit__map">
<area shape="rect" id="node2" href="classgr__block.html" title="The abstract base class for all &#39;terminal&#39; processing blocks.A signal processing flow is cons..." alt="" coords="63,83,132,112"/><area shape="rect" id="node4" 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="43,5,152,35"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classgr__unpacked__to__packed__ss-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">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__unpacked__to__packed__ss.html#a41b92b9d89191d5d0147bff38558fc94">forecast</a> (int noutput_items, <a class="el" href="classstd_1_1vector.html">gr_vector_int</a> &amp;ninput_items_required)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Estimate input requirements given output request.  <a href="#a41b92b9d89191d5d0147bff38558fc94"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__unpacked__to__packed__ss.html#a9485d2a34361afee3faee85728a4c815">general_work</a> (int noutput_items, <a class="el" href="classstd_1_1vector.html">gr_vector_int</a> &amp;ninput_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">compute output items from input items  <a href="#a9485d2a34361afee3faee85728a4c815"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__unpacked__to__packed__ss.html#af80ffeec84f4ce9fcda155f22f615b01">check_topology</a> (int ninputs, int noutputs)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Confirm that ninputs and noutputs is an acceptable combination.  <a href="#af80ffeec84f4ce9fcda155f22f615b01"></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_unpacked_to_packed_ss_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__unpacked__to__packed__ss.html#a34ac6cc8cf377d7f0b56f4bc4df74918">gr_make_unpacked_to_packed_ss</a> (unsigned int bits_per_chunk, <a class="el" href="gr__endianness_8h.html#aa340baf760c129189bc842d8f2c0e2e6">gr_endianness_t</a> endianness)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts.</p>
<p>input: stream of short; output: stream of short. </p>
<p>This is the inverse of gr_packed_to_unpacked_XX.</p>
<p>The low <code>bits_per_chunk</code> bits are extracted from each input byte or short. These bits are then packed densely into the output bytes or shorts, such that all 8 or 16 bits of the output bytes or shorts are filled with valid input bits. The right thing is done if bits_per_chunk is not a power of two.</p>
<p>The combination of gr_packed_to_unpacked_XX followed by gr_chunks_to_symbols_Xf or gr_chunks_to_symbols_Xc handles the general case of mapping from a stream of bytes or shorts into arbitrary float or complex symbols.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classgr__packed__to__unpacked__bb.html" title="Convert a stream of packed bytes or shorts to stream of unpacked bytes or shorts.input: stream of uns...">gr_packed_to_unpacked_bb</a>, <a class="el" href="classgr__unpacked__to__packed__bb.html" title="Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts.input: stream of unsigned char; output: stream of unsigned char.">gr_unpacked_to_packed_bb</a>, </dd>
<dd>
<a class="el" href="classgr__packed__to__unpacked__ss.html" title="Convert a stream of packed bytes or shorts to stream of unpacked bytes or shorts.input: stream of sho...">gr_packed_to_unpacked_ss</a>, <a class="el" href="classgr__unpacked__to__packed__ss.html" title="Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts.input: stream of short; output: stream of short.">gr_unpacked_to_packed_ss</a>, </dd>
<dd>
<a class="el" href="classgr__chunks__to__symbols__bf.html" title="Map a stream of symbol indexes (unpacked bytes or shorts) to stream of float or complex onstellation ...">gr_chunks_to_symbols_bf</a>, <a class="el" href="classgr__chunks__to__symbols__bc.html" title="Map a stream of symbol indexes (unpacked bytes or shorts) to stream of float or complex onstellation ...">gr_chunks_to_symbols_bc</a>. </dd>
<dd>
<a class="el" href="classgr__chunks__to__symbols__sf.html" title="Map a stream of symbol indexes (unpacked bytes or shorts) to stream of float or complex onstellation ...">gr_chunks_to_symbols_sf</a>, <a class="el" href="classgr__chunks__to__symbols__sc.html" title="Map a stream of symbol indexes (unpacked bytes or shorts) to stream of float or complex onstellation ...">gr_chunks_to_symbols_sc</a>. </dd></dl>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="af80ffeec84f4ce9fcda155f22f615b01"></a><!-- doxytag: member="gr_unpacked_to_packed_ss::check_topology" ref="af80ffeec84f4ce9fcda155f22f615b01" args="(int ninputs, int noutputs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a> gr_unpacked_to_packed_ss::check_topology </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>ninputs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>noutputs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Confirm that ninputs and noutputs is an acceptable combination. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ninputs</td><td>number of input streams connected </td></tr>
    <tr><td class="paramname">noutputs</td><td>number of output streams connected</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if this is a valid configuration for this block.</dd></dl>
<p>This function is called by the runtime system whenever the topology changes. Most classes do not need to override this. This check is in addition to the constraints specified by the input and output gr_io_signatures. </p>

<p>Reimplemented from <a class="el" href="classgr__basic__block.html#a50a714df9c3ce8c03854a09ac84e589b">gr_basic_block</a>.</p>

</div>
</div>
<a class="anchor" id="a41b92b9d89191d5d0147bff38558fc94"></a><!-- doxytag: member="gr_unpacked_to_packed_ss::forecast" ref="a41b92b9d89191d5d0147bff38558fc94" args="(int noutput_items, gr_vector_int &amp;ninput_items_required)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gr_unpacked_to_packed_ss::forecast </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_int</a> &amp;&#160;</td>
          <td class="paramname"><em>ninput_items_required</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Estimate input requirements given output request. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">noutput_items</td><td>number of output items to produce </td></tr>
    <tr><td class="paramname">ninput_items_required</td><td>number of input items required on each input stream</td></tr>
  </table>
  </dd>
</dl>
<p>Given a request to product <code>noutput_items</code>, estimate the number of data items required on each input stream. The estimate doesn't have to be exact, but should be close. </p>

<p>Reimplemented from <a class="el" href="classgr__block.html#aa1f2518b5c97126bb015adb9e2027f4a">gr_block</a>.</p>

</div>
</div>
<a class="anchor" id="a9485d2a34361afee3faee85728a4c815"></a><!-- doxytag: member="gr_unpacked_to_packed_ss::general_work" ref="a9485d2a34361afee3faee85728a4c815" args="(int noutput_items, gr_vector_int &amp;ninput_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_unpacked_to_packed_ss::general_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_int</a> &amp;&#160;</td>
          <td class="paramname"><em>ninput_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>compute output items from input items </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">noutput_items</td><td>number of output items to write on each output stream </td></tr>
    <tr><td class="paramname">ninput_items</td><td>number of input items available on each input stream </td></tr>
    <tr><td class="paramname">input_items</td><td>vector of pointers to the input items, one entry per input stream </td></tr>
    <tr><td class="paramname">output_items</td><td>vector of pointers to the output items, one entry per output stream</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of items actually written to each output stream, or -1 on EOF. It is OK to return a value less than noutput_items. -1 &lt;= return value &lt;= noutput_items</dd></dl>
<p>general_work must call consume or consume_each to indicate how many items were consumed on each input stream. </p>

<p>Implements <a class="el" href="classgr__block.html#a137b93d87dc83bbdb6369d33f4ea8197">gr_block</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a34ac6cc8cf377d7f0b56f4bc4df74918"></a><!-- doxytag: member="gr_unpacked_to_packed_ss::gr_make_unpacked_to_packed_ss" ref="a34ac6cc8cf377d7f0b56f4bc4df74918" args="(unsigned int bits_per_chunk, gr_endianness_t endianness)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_unpacked_to_packed_ss_sptr</a> gr_make_unpacked_to_packed_ss </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>bits_per_chunk</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="gr__endianness_8h.html#aa340baf760c129189bc842d8f2c0e2e6">gr_endianness_t</a>&#160;</td>
          <td class="paramname"><em>endianness</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__unpacked__to__packed__ss_8h_source.html">gr_unpacked_to_packed_ss.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="classgr__unpacked__to__packed__ss.html">gr_unpacked_to_packed_ss</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>