Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 3f49d0b75b36c5f9c95c093ed4bd7978 > files > 688

gnuradio-doc-3.2.2-11.fc15.i686.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_basic_block 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__basic__block.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<h1>gr_basic_block Class Reference<div class="ingroups"><a class="el" href="group__internal.html">Implementation Details</a></div></h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="gr_basic_block" -->
<p>The abstract base class for all signal processing blocks.Basic blocks are the bare abstraction of an entity that has a name and a set of inputs and outputs. These are never instantiated directly; rather, this is the abstract parent class of both gr_hier_block, which is a recursive container, and <a class="el" href="classgr__block.html" title="The abstract base class for all &#39;terminal&#39; processing blocks.A signal processing flow is cons...">gr_block</a>, which implements actual signal processing functions.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="gr__basic__block_8h_source.html">gr_basic_block.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gr_basic_block:</div>
<div class="dyncontent">
<div class="center"><img src="classgr__basic__block__inherit__graph.png" border="0" usemap="#gr__basic__block_inherit__map" alt="Inheritance graph"/></div>
<map name="gr__basic__block_inherit__map" id="gr__basic__block_inherit__map">
<area shape="rect" id="node3" href="classgr__block.html" title="The abstract base class for all &#39;terminal&#39; processing blocks.A signal processing flow is cons..." alt="" coords="181,1205,251,1235"/><area shape="rect" id="node97" href="classgr__hier__block2.html" title="Hierarchical container class for gr_block&#39;s and gr_hier_block2&#39;s." alt="" coords="163,1259,269,1288"/><area shape="rect" id="node5" href="classgr__align__on__samplenumbers__ss.html" title="gr_align_on_samplenumbers_ss" alt="" coords="319,5,527,35"/><area shape="rect" id="node7" href="classgr__clock__recovery__mm__cc.html" title="Mueller and Müller (M&amp;M) based clock recovery block with complex input, complex output..." alt="" coords="333,59,512,88"/><area shape="rect" id="node9" href="classgr__clock__recovery__mm__ff.html" title="Mueller and Müller (M&amp;M) based clock recovery block with float input, float output.This implements the Mueller and Müller (M&amp;M) discrete&#45;time error&#45;tracking synchronizer." alt="" coords="337,112,508,141"/><area shape="rect" id="node11" href="classgr__dd__mpsk__sync__cc.html" title="Decision directed M&#45;PSK synchronous demodThis block performs joint carrier tracking and symbol timing..." alt="" coords="348,165,497,195"/><area shape="rect" id="node13" href="classgr__fractional__interpolator__cc.html" title="Interpolating mmse filter with gr_complex input, gr_complex output." alt="" coords="331,219,515,248"/><area shape="rect" id="node15" href="classgr__fractional__interpolator__ff.html" title="Interpolating mmse filter with float input, float output." alt="" coords="333,272,512,301"/><area shape="rect" id="node17" href="classgr__keep__one__in__n.html" title="decimate a stream, keeping one item out of every n." alt="" coords="360,325,485,355"/><area shape="rect" id="node19" href="classgr__mpsk__receiver__cc.html" title="This block takes care of receiving M&#45;PSK modulated signals through phase, frequency, and symbol synchronization.This block takes care of receiving M&#45;PSK modulated signals through phase, frequency, and symbol synchronization. It performs carrier frequency and phase locking as well as symbol timing recovery. It works with (D)BPSK, (D)QPSK, and (D)8PSK as tested currently. It should also work for OQPSK and PI/4 DQPSK." alt="" coords="349,379,496,408"/><area shape="rect" id="node21" href="classgr__nop.html" title="Does nothing. Used for testing only." alt="" coords="392,432,453,461"/><area shape="rect" id="node23" href="classgr__ofdm__frame__acquisition.html" title="take a vector of complex constellation points in from an FFT and performs a correlation and equalizat..." alt="" coords="333,485,512,515"/><area shape="rect" id="node25" href="classgr__ofdm__insert__preamble.html" title="insert &quot;pre&#45;modulated&quot; preamble symbols before each payload." alt="" coords="339,539,507,568"/><area shape="rect" id="node27" href="classgr__ofdm__sampler.html" title="does the rest of the OFDM stuff" alt="" coords="361,592,484,621"/><area shape="rect" id="node29" 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..." alt="" coords="331,645,515,675"/><area shape="rect" id="node31" href="classgr__packed__to__unpacked__ii.html" title="Convert a stream of packed bytes or shorts to stream of unpacked bytes or shorts.input: stream of int..." alt="" coords="335,699,511,728"/><area shape="rect" id="node33" 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..." alt="" coords="331,752,515,781"/><area shape="rect" id="node35" href="classgr__rational__resampler__base__ccc.html" title="Rational Resampling Polyphase FIR filter with gr_complex input, gr_complex output and gr_complex taps..." alt="" coords="319,805,527,835"/><area shape="rect" id="node37" href="classgr__rational__resampler__base__ccf.html" title="Rational Resampling Polyphase FIR filter with gr_complex input, gr_complex output and float taps..." alt="" coords="320,859,525,888"/><area shape="rect" id="node39" href="classgr__rational__resampler__base__fcc.html" title="Rational Resampling Polyphase FIR filter with float input, gr_complex output and gr_complex taps..." alt="" coords="320,912,525,941"/><area shape="rect" id="node41" href="classgr__rational__resampler__base__fff.html" title="Rational Resampling Polyphase FIR filter with float input, float output and float taps..." alt="" coords="323,965,523,995"/><area shape="rect" id="node43" href="classgr__rational__resampler__base__fsf.html" title="Rational Resampling Polyphase FIR filter with float input, short output and float taps..." alt="" coords="321,1019,524,1048"/><area shape="rect" id="node45" href="classgr__rational__resampler__base__scc.html" title="Rational Resampling Polyphase FIR filter with short input, gr_complex output and gr_complex taps..." alt="" coords="319,1072,527,1101"/><area shape="rect" id="node47" href="classgr__simple__correlator.html" title="inverse of gr_simple_framer (more or less)" alt="" coords="353,1125,492,1155"/><area shape="rect" id="node49" href="classgr__simple__framer.html" title="add sync field, seq number and command field to payload" alt="" coords="361,1179,484,1208"/><area shape="rect" id="node51" href="classgr__skiphead.html" title="skips the first N items, from then on copies items to the outputUseful for building test cases and so..." alt="" coords="377,1232,468,1261"/><area shape="rect" id="node53" href="classgr__squelch__base__cc.html" title="gr_squelch_base_cc" alt="" coords="352,1285,493,1315"/><area shape="rect" id="node55" href="classgr__squelch__base__ff.html" title="gr_squelch_base_ff" alt="" coords="356,1339,489,1368"/><area shape="rect" id="node57" href="classgr__stream__mux.html" title="Stream muxing block to multiplex many streams into one with a specified format." alt="" coords="367,1392,479,1421"/><area shape="rect" id="node59" href="classgr__sync__block.html" title="synchronous 1:1 input to output with historyOverride work to provide the signal processing implementa..." alt="" coords="369,1445,476,1475"/><area shape="rect" id="node61" href="classgr__test.html" title="Test class for testing runtime system (setting up buffers and such.)This block does not do any useful..." alt="" coords="392,1499,453,1528"/><area shape="rect" id="node63" 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." alt="" coords="331,1552,515,1581"/><area shape="rect" id="node65" href="classgr__unpacked__to__packed__ii.html" title="Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts.input: stream of int; output: stream of int." alt="" coords="335,1605,511,1635"/><area shape="rect" id="node67" 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." alt="" coords="331,1659,515,1688"/><area shape="rect" id="node69" href="classpager__flex__sync.html" title="flex sync description" alt="" coords="364,1712,481,1741"/><area shape="rect" id="node71" href="classtrellis__metrics__c.html" title="Evaluate metrics for use by the Viterbi algorithm." alt="" coords="364,1765,481,1795"/><area shape="rect" id="node73" href="classtrellis__metrics__f.html" title="Evaluate metrics for use by the Viterbi algorithm." alt="" coords="365,1819,480,1848"/><area shape="rect" id="node75" href="classtrellis__metrics__i.html" title="Evaluate metrics for use by the Viterbi algorithm." alt="" coords="367,1872,479,1901"/><area shape="rect" id="node77" href="classtrellis__metrics__s.html" title="Evaluate metrics for use by the Viterbi algorithm." alt="" coords="364,1925,481,1955"/><area shape="rect" id="node79" href="classtrellis__siso__combined__f.html" title="trellis_siso_combined_f" alt="" coords="344,1979,501,2008"/><area shape="rect" id="node81" href="classtrellis__siso__f.html" title="trellis_siso_f" alt="" coords="376,2032,469,2061"/><area shape="rect" id="node83" href="classtrellis__viterbi__b.html" title="trellis_viterbi_b" alt="" coords="368,2085,477,2115"/><area shape="rect" id="node85" href="classtrellis__viterbi__combined__cb.html" title="trellis_viterbi_combined_cb" alt="" coords="333,2139,512,2168"/><area shape="rect" id="node87" href="classtrellis__viterbi__combined__ci.html" title="trellis_viterbi_combined_ci" alt="" coords="336,2192,509,2221"/><area shape="rect" id="node89" href="classtrellis__viterbi__combined__cs.html" title="trellis_viterbi_combined_cs" alt="" coords="333,2245,512,2275"/><area shape="rect" id="node91" href="classtrellis__viterbi__combined__fb.html" title="trellis_viterbi_combined_fb" alt="" coords="335,2299,511,2328"/><area shape="rect" id="node93" href="classtrellis__viterbi__combined__fi.html" title="trellis_viterbi_combined_fi" alt="" coords="337,2352,508,2381"/><area shape="rect" id="node95" href="classtrellis__viterbi__combined__fs.html" title="trellis_viterbi_combined_fs" alt="" coords="335,2405,511,2435"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classgr__basic__block-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">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a5bc14d27d53b7b57a960a47cc255e3f9">~gr_basic_block</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#aa2a2947744d418c5470fbf4e623b58fe">unique_id</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#aa12a20d8b8eab341da935530d29299d2">name</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a58f6d05e85931200f3771d3e50741281">input_signature</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#add68b96f012dfe352700b4fd1c3a184a">output_signature</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_basic_block_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a2503eb6922db0bf2a442dcd2d14670c9">basic_block</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a50a714df9c3ce8c03854a09ac84e589b">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="#a50a714df9c3ce8c03854a09ac84e589b"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a> { <a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3da476d594a077e729bad0f2cfa2008c899">WHITE</a>, 
<a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3daa6cce7ec34a3f9cf917e545a743dc89f">GREY</a>, 
<a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3da0abd1c82699481ffa502e5bb8d7bdaec">BLACK</a>
 }</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected 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__basic__block.html#a1183eee484f58953a2fed4c792e46245">gr_basic_block</a> (const std::string &amp;name, <a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> input_signature, <a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> output_signature)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Protected constructor prevents instantiation by non-derived classes.  <a href="#a1183eee484f58953a2fed4c792e46245"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a419d0fbba0ca02d822cbc299b979de54">set_input_signature</a> (<a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> iosig)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">may only be called during constructor  <a href="#a419d0fbba0ca02d822cbc299b979de54"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a949b6ad69ebfdf423835265db99cf63d">set_output_signature</a> (<a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> iosig)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">may only be called during constructor  <a href="#a949b6ad69ebfdf423835265db99cf63d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a0821ef947158670d53bf0739f3c8877b">set_color</a> (<a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a> color)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Allow the flowgraph to set for sorting and partitioning.  <a href="#a0821ef947158670d53bf0739f3c8877b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a1cedb1704b6c00977c681b378ede384c">color</a> () const </td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#afd352cc073ef28012d4d079a863f5401">d_name</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a2c8da0c28bbbfb0e759278c9b9459e96">d_input_signature</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a76d64ed7a79566e3310306ae6f194d75">d_output_signature</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a0d2999c04f47327f93dd7def5dc704f8">d_unique_id</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a7fb7e692e3b98a82410b396ef263bb41">d_color</a></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#adf5bf4523d6dd698aa770e3da8f2b30d">gr_flowgraph</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgr__basic__block.html#a69b41e361328cea911d69e1ec0bc50ff">gr_flat_flowgraph</a></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>The abstract base class for all signal processing blocks.</p>
<p>Basic blocks are the bare abstraction of an entity that has a name and a set of inputs and outputs. These are never instantiated directly; rather, this is the abstract parent class of both gr_hier_block, which is a recursive container, and <a class="el" href="classgr__block.html" title="The abstract base class for all &#39;terminal&#39; processing blocks.A signal processing flow is cons...">gr_block</a>, which implements actual signal processing functions. </p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a5c90b7c003ddd61f8df6bef2aceeab3d"></a><!-- doxytag: member="gr_basic_block::vcolor" ref="a5c90b7c003ddd61f8df6bef2aceeab3d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">gr_basic_block::vcolor</a><code> [protected]</code></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="a5c90b7c003ddd61f8df6bef2aceeab3da476d594a077e729bad0f2cfa2008c899"></a><!-- doxytag: member="WHITE" ref="a5c90b7c003ddd61f8df6bef2aceeab3da476d594a077e729bad0f2cfa2008c899" args="" -->WHITE</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a5c90b7c003ddd61f8df6bef2aceeab3daa6cce7ec34a3f9cf917e545a743dc89f"></a><!-- doxytag: member="GREY" ref="a5c90b7c003ddd61f8df6bef2aceeab3daa6cce7ec34a3f9cf917e545a743dc89f" args="" -->GREY</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a5c90b7c003ddd61f8df6bef2aceeab3da0abd1c82699481ffa502e5bb8d7bdaec"></a><!-- doxytag: member="BLACK" ref="a5c90b7c003ddd61f8df6bef2aceeab3da0abd1c82699481ffa502e5bb8d7bdaec" args="" -->BLACK</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a1183eee484f58953a2fed4c792e46245"></a><!-- doxytag: member="gr_basic_block::gr_basic_block" ref="a1183eee484f58953a2fed4c792e46245" args="(const std::string &amp;name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gr_basic_block::gr_basic_block </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td>
          <td class="paramname"><em>input_signature</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td>
          <td class="paramname"><em>output_signature</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Protected constructor prevents instantiation by non-derived classes. </p>

</div>
</div>
<a class="anchor" id="a5bc14d27d53b7b57a960a47cc255e3f9"></a><!-- doxytag: member="gr_basic_block::~gr_basic_block" ref="a5bc14d27d53b7b57a960a47cc255e3f9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual gr_basic_block::~gr_basic_block </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a2503eb6922db0bf2a442dcd2d14670c9"></a><!-- doxytag: member="gr_basic_block::basic_block" ref="a2503eb6922db0bf2a442dcd2d14670c9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_basic_block_sptr</a> gr_basic_block::basic_block </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a50a714df9c3ce8c03854a09ac84e589b"></a><!-- doxytag: member="gr_basic_block::check_topology" ref="a50a714df9c3ce8c03854a09ac84e589b" args="(int ninputs, int noutputs)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a> gr_basic_block::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 in <a class="el" href="classgr__align__on__samplenumbers__ss.html#af649e20f007f54c089a406839e0878ff">gr_align_on_samplenumbers_ss</a>, <a class="el" href="classgr__deinterleave.html#a16d234399562b8d754158c93a6337705">gr_deinterleave</a>, <a class="el" href="classgr__interleave.html#ade74f196c0fc8a91ca4f853a2d1202e1">gr_interleave</a>, <a class="el" href="classgr__kludge__copy.html#a3ab38e224cdaf20a93762268c447486e">gr_kludge_copy</a>, <a class="el" href="classgr__test.html#ac9924b05718346c0cf3d231f2a82474b">gr_test</a>, <a class="el" href="classgr__chunks__to__symbols__bc.html#a920ba2d9d2e19eb23abca959990f526a">gr_chunks_to_symbols_bc</a>, <a class="el" href="classgr__chunks__to__symbols__bf.html#ae82608cda5b9d05bd0279513bf0d2bcb">gr_chunks_to_symbols_bf</a>, <a class="el" href="classgr__chunks__to__symbols__ic.html#a6b8c629fcec8c93b60f72d5be41afaa8">gr_chunks_to_symbols_ic</a>, <a class="el" href="classgr__chunks__to__symbols__if.html#ab85256ef961f6ae6fe00ac75eb13d03a">gr_chunks_to_symbols_if</a>, <a class="el" href="classgr__chunks__to__symbols__sc.html#adcba8723c0fd79bcd22d6ae69ccb6d62">gr_chunks_to_symbols_sc</a>, <a class="el" href="classgr__chunks__to__symbols__sf.html#aa9eeb744aa0ebc3228e89ff5e2b8dd3d">gr_chunks_to_symbols_sf</a>, <a class="el" href="classgr__packed__to__unpacked__bb.html#aa06049b2172c31155807b33f94c20bf2">gr_packed_to_unpacked_bb</a>, <a class="el" href="classgr__packed__to__unpacked__ii.html#a97e51e50acd91202d80ca527caf20998">gr_packed_to_unpacked_ii</a>, <a class="el" href="classgr__packed__to__unpacked__ss.html#ab820f35beda6a186338d07e740ccf2f9">gr_packed_to_unpacked_ss</a>, <a class="el" href="classgr__unpacked__to__packed__bb.html#a8396d9199a48e5371094d786458c9778">gr_unpacked_to_packed_bb</a>, <a class="el" href="classgr__unpacked__to__packed__ii.html#a34ef4b079630a007e908bb015be19079">gr_unpacked_to_packed_ii</a>, <a class="el" href="classgr__unpacked__to__packed__ss.html#af80ffeec84f4ce9fcda155f22f615b01">gr_unpacked_to_packed_ss</a>, <a class="el" href="classgr__oscope__sink__f.html#ad582fbbee425a55d70a53db401d26e6f">gr_oscope_sink_f</a>, <a class="el" href="classaudio__alsa__sink.html#a656906899e19476cc83337c122ec13a9">audio_alsa_sink</a>, <a class="el" href="classaudio__alsa__source.html#a651f6ef311533a94ec48fdc95fac8a35">audio_alsa_source</a>, <a class="el" href="classaudio__jack__sink.html#a0a7b072ca66c1aefecc26a04ca043c50">audio_jack_sink</a>, <a class="el" href="classaudio__jack__source.html#a04be79beefbebc59a37940ed5b20dd17">audio_jack_source</a>, <a class="el" href="classaudio__osx__source.html#a3a89cbd64f5112de6231ef7d25bcdfb2">audio_osx_source</a>, <a class="el" href="classaudio__portaudio__sink.html#a03c5b233e14c6afd06897383ee6128a1">audio_portaudio_sink</a>, and <a class="el" href="classaudio__portaudio__source.html#ac83730e798ffc45f31ca02d064398cbd">audio_portaudio_source</a>.</p>

</div>
</div>
<a class="anchor" id="a1cedb1704b6c00977c681b378ede384c"></a><!-- doxytag: member="gr_basic_block::color" ref="a1cedb1704b6c00977c681b378ede384c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a> gr_basic_block::color </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="classgr__basic__block.html#a7fb7e692e3b98a82410b396ef263bb41">d_color</a>.</p>

<p>Referenced by <a class="el" href="classgr__basic__block.html#a0821ef947158670d53bf0739f3c8877b">set_color()</a>.</p>

</div>
</div>
<a class="anchor" id="a58f6d05e85931200f3771d3e50741281"></a><!-- doxytag: member="gr_basic_block::input_signature" ref="a58f6d05e85931200f3771d3e50741281" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> gr_basic_block::input_signature </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="classgr__basic__block.html#a2c8da0c28bbbfb0e759278c9b9459e96">d_input_signature</a>.</p>

</div>
</div>
<a class="anchor" id="aa12a20d8b8eab341da935530d29299d2"></a><!-- doxytag: member="gr_basic_block::name" ref="aa12a20d8b8eab341da935530d29299d2" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string gr_basic_block::name </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="classgr__basic__block.html#afd352cc073ef28012d4d079a863f5401">d_name</a>.</p>

</div>
</div>
<a class="anchor" id="add68b96f012dfe352700b4fd1c3a184a"></a><!-- doxytag: member="gr_basic_block::output_signature" ref="add68b96f012dfe352700b4fd1c3a184a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> gr_basic_block::output_signature </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="classgr__basic__block.html#a76d64ed7a79566e3310306ae6f194d75">d_output_signature</a>.</p>

</div>
</div>
<a class="anchor" id="a0821ef947158670d53bf0739f3c8877b"></a><!-- doxytag: member="gr_basic_block::set_color" ref="a0821ef947158670d53bf0739f3c8877b" args="(vcolor color)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gr_basic_block::set_color </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a>&#160;</td>
          <td class="paramname"><em>color</em></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Allow the flowgraph to set for sorting and partitioning. </p>

<p>References <a class="el" href="classgr__basic__block.html#a1cedb1704b6c00977c681b378ede384c">color()</a>, and <a class="el" href="classgr__basic__block.html#a7fb7e692e3b98a82410b396ef263bb41">d_color</a>.</p>

</div>
</div>
<a class="anchor" id="a419d0fbba0ca02d822cbc299b979de54"></a><!-- doxytag: member="gr_basic_block::set_input_signature" ref="a419d0fbba0ca02d822cbc299b979de54" args="(gr_io_signature_sptr iosig)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gr_basic_block::set_input_signature </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td>
          <td class="paramname"><em>iosig</em></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>may only be called during constructor </p>

<p>References <a class="el" href="classgr__basic__block.html#a2c8da0c28bbbfb0e759278c9b9459e96">d_input_signature</a>.</p>

</div>
</div>
<a class="anchor" id="a949b6ad69ebfdf423835265db99cf63d"></a><!-- doxytag: member="gr_basic_block::set_output_signature" ref="a949b6ad69ebfdf423835265db99cf63d" args="(gr_io_signature_sptr iosig)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gr_basic_block::set_output_signature </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a>&#160;</td>
          <td class="paramname"><em>iosig</em></td><td>)</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>may only be called during constructor </p>

<p>References <a class="el" href="classgr__basic__block.html#a76d64ed7a79566e3310306ae6f194d75">d_output_signature</a>.</p>

</div>
</div>
<a class="anchor" id="aa2a2947744d418c5470fbf4e623b58fe"></a><!-- doxytag: member="gr_basic_block::unique_id" ref="aa2a2947744d418c5470fbf4e623b58fe" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long gr_basic_block::unique_id </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>References <a class="el" href="classgr__basic__block.html#a0d2999c04f47327f93dd7def5dc704f8">d_unique_id</a>.</p>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a69b41e361328cea911d69e1ec0bc50ff"></a><!-- doxytag: member="gr_basic_block::gr_flat_flowgraph" ref="a69b41e361328cea911d69e1ec0bc50ff" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="classgr__flat__flowgraph.html">gr_flat_flowgraph</a><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="adf5bf4523d6dd698aa770e3da8f2b30d"></a><!-- doxytag: member="gr_basic_block::gr_flowgraph" ref="adf5bf4523d6dd698aa770e3da8f2b30d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="classgr__flowgraph.html">gr_flowgraph</a><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a7fb7e692e3b98a82410b396ef263bb41"></a><!-- doxytag: member="gr_basic_block::d_color" ref="a7fb7e692e3b98a82410b396ef263bb41" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgr__basic__block.html#a5c90b7c003ddd61f8df6bef2aceeab3d">vcolor</a> <a class="el" href="classgr__basic__block.html#a7fb7e692e3b98a82410b396ef263bb41">gr_basic_block::d_color</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="classgr__basic__block.html#a1cedb1704b6c00977c681b378ede384c">color()</a>, and <a class="el" href="classgr__basic__block.html#a0821ef947158670d53bf0739f3c8877b">set_color()</a>.</p>

</div>
</div>
<a class="anchor" id="a2c8da0c28bbbfb0e759278c9b9459e96"></a><!-- doxytag: member="gr_basic_block::d_input_signature" ref="a2c8da0c28bbbfb0e759278c9b9459e96" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> <a class="el" href="classgr__basic__block.html#a2c8da0c28bbbfb0e759278c9b9459e96">gr_basic_block::d_input_signature</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="classgr__basic__block.html#a58f6d05e85931200f3771d3e50741281">input_signature()</a>, and <a class="el" href="classgr__basic__block.html#a419d0fbba0ca02d822cbc299b979de54">set_input_signature()</a>.</p>

</div>
</div>
<a class="anchor" id="afd352cc073ef28012d4d079a863f5401"></a><!-- doxytag: member="gr_basic_block::d_name" ref="afd352cc073ef28012d4d079a863f5401" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="classgr__basic__block.html#afd352cc073ef28012d4d079a863f5401">gr_basic_block::d_name</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="classgr__basic__block.html#aa12a20d8b8eab341da935530d29299d2">name()</a>.</p>

</div>
</div>
<a class="anchor" id="a76d64ed7a79566e3310306ae6f194d75"></a><!-- doxytag: member="gr_basic_block::d_output_signature" ref="a76d64ed7a79566e3310306ae6f194d75" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classboost_1_1shared__ptr.html">gr_io_signature_sptr</a> <a class="el" href="classgr__basic__block.html#a76d64ed7a79566e3310306ae6f194d75">gr_basic_block::d_output_signature</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="classgr__basic__block.html#add68b96f012dfe352700b4fd1c3a184a">output_signature()</a>, and <a class="el" href="classgr__basic__block.html#a949b6ad69ebfdf423835265db99cf63d">set_output_signature()</a>.</p>

</div>
</div>
<a class="anchor" id="a0d2999c04f47327f93dd7def5dc704f8"></a><!-- doxytag: member="gr_basic_block::d_unique_id" ref="a0d2999c04f47327f93dd7def5dc704f8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classgr__basic__block.html#a0d2999c04f47327f93dd7def5dc704f8">gr_basic_block::d_unique_id</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="classgr__basic__block.html#aa2a2947744d418c5470fbf4e623b58fe">unique_id()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="gr__basic__block_8h_source.html">gr_basic_block.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="classgr__basic__block.html">gr_basic_block</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>