Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > by-pkgid > def0228095a1541e2d3632b6b6da7c38 > files > 3371

gnuradio-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>GNU Radio 3.3.0 C++ API: usrp2::eth_buffer 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="navpath"><b>usrp2</b>::<a class="el" href="classusrp2_1_1eth__buffer.html">eth_buffer</a>
  </div>
<div class="contents">
<h1>usrp2::eth_buffer Class Reference</h1><!-- doxytag: class="usrp2::eth_buffer" -->
<p>high-performance interface to send and receive raw ethernet frames with out-of-order retirement of received frames.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="eth__buffer_8h_source.html">eth_buffer.h</a>&gt;</code></p>

<p><a href="classusrp2_1_1eth__buffer-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="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a> { <a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45ad3aa4af7536660c66b632ff5d85e73ca">EB_OK</a>, 
<a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45a10545517ae4f02d2d9ddcb40f83b38f1">EB_ERROR</a>, 
<a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45a45ef72e13adefd1ffb07ace7315dc203">EB_WOULD_BLOCK</a>, 
<a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45a190277c8167ab2eb9cc79a2230a63d34">EB_TIMED_OUT</a>
 }</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="classusrp2_1_1eth__buffer.html#a6e63920c66f80cd4a9460f28b1bc0142">eth_buffer</a> (size_t rx_bufsize=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a668accecd6b8c8d8db3cb60e35a256da">~eth_buffer</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a73d14155717516c604af41b7cd336253">open</a> (const std::string &amp;ifname, int protocol)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">open the specified interface  <a href="#a73d14155717516c604af41b7cd336253"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#abeda1fa51e80d23b292ea6f8fb676cf3">close</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">close the interface  <a href="#abeda1fa51e80d23b292ea6f8fb676cf3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a8678b219ef6740446b2f895eafd48697">attach_pktfilter</a> (<a class="el" href="classusrp2_1_1pktfilter.html">pktfilter</a> *pf)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">attach packet filter to socket to restrict which packets read sees.  <a href="#a8678b219ef6740446b2f895eafd48697"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const uint8_t *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a410d450bf9c0c27830f8ce9a810a0e90">mac</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return 6 byte string containing our MAC address  <a href="#a410d450bf9c0c27830f8ce9a810a0e90"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a7ecd08e04d735bb31f22cc8e3c97a82a">rx_frames</a> (<a class="el" href="classusrp2_1_1data__handler.html">data_handler</a> *f, int timeout=-1)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Call <code>f</code> for each frame in the receive buffer.  <a href="#a7ecd08e04d735bb31f22cc8e3c97a82a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#af4df95fb86af1aaea600de085e3ba4aa">release_frame</a> (void *p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a599931ad82bf9a7f4f0519b3fa0658a9">tx_frame</a> (const void *base, size_t len, int flags=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a0c89b83a7ec4e905ac17f5141a3b6bdd">tx_framev</a> (const eth_iovec *iov, int iovcnt, int flags=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a0e210e740dc81abac2f4ea05c5c5fb8f">max_frames</a> () const </td></tr>
<tr><td colspan="2"><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a4aba555d732872e1896535ebdde78677">MAX_PKTLEN</a> = 1512</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classusrp2_1_1eth__buffer.html#a023f047905eeee79720d02debc23b5ce">MIN_PKTLEN</a> = 64</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>high-performance interface to send and receive raw ethernet frames with out-of-order retirement of received frames. </p>
<p>On many systems it should be possible to implement this on top of libpcap </p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a89b3a731769e02e794a7901e5ab32d45"></a><!-- doxytag: member="usrp2::eth_buffer::result" ref="a89b3a731769e02e794a7901e5ab32d45" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">usrp2::eth_buffer::result</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="a89b3a731769e02e794a7901e5ab32d45ad3aa4af7536660c66b632ff5d85e73ca"></a><!-- doxytag: member="EB_OK" ref="a89b3a731769e02e794a7901e5ab32d45ad3aa4af7536660c66b632ff5d85e73ca" args="" -->EB_OK</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a89b3a731769e02e794a7901e5ab32d45a10545517ae4f02d2d9ddcb40f83b38f1"></a><!-- doxytag: member="EB_ERROR" ref="a89b3a731769e02e794a7901e5ab32d45a10545517ae4f02d2d9ddcb40f83b38f1" args="" -->EB_ERROR</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a89b3a731769e02e794a7901e5ab32d45a45ef72e13adefd1ffb07ace7315dc203"></a><!-- doxytag: member="EB_WOULD_BLOCK" ref="a89b3a731769e02e794a7901e5ab32d45a45ef72e13adefd1ffb07ace7315dc203" args="" -->EB_WOULD_BLOCK</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a89b3a731769e02e794a7901e5ab32d45a190277c8167ab2eb9cc79a2230a63d34"></a><!-- doxytag: member="EB_TIMED_OUT" ref="a89b3a731769e02e794a7901e5ab32d45a190277c8167ab2eb9cc79a2230a63d34" args="" -->EB_TIMED_OUT</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a6e63920c66f80cd4a9460f28b1bc0142"></a><!-- doxytag: member="usrp2::eth_buffer::eth_buffer" ref="a6e63920c66f80cd4a9460f28b1bc0142" args="(size_t rx_bufsize=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">usrp2::eth_buffer::eth_buffer </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>rx_bufsize</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>rx_bufsize</em>&nbsp;</td><td>is a hint as to the number of bytes of memory to allocate for received ethernet frames (0 -&gt; reasonable default) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a668accecd6b8c8d8db3cb60e35a256da"></a><!-- doxytag: member="usrp2::eth_buffer::~eth_buffer" ref="a668accecd6b8c8d8db3cb60e35a256da" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">usrp2::eth_buffer::~eth_buffer </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="a8678b219ef6740446b2f895eafd48697"></a><!-- doxytag: member="usrp2::eth_buffer::attach_pktfilter" ref="a8678b219ef6740446b2f895eafd48697" args="(pktfilter *pf)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a> usrp2::eth_buffer::attach_pktfilter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classusrp2_1_1pktfilter.html">pktfilter</a> *&nbsp;</td>
          <td class="paramname"> <em>pf</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>attach packet filter to socket to restrict which packets read sees. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pf</em>&nbsp;</td><td>the packet filter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="abeda1fa51e80d23b292ea6f8fb676cf3"></a><!-- doxytag: member="usrp2::eth_buffer::close" ref="abeda1fa51e80d23b292ea6f8fb676cf3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a> usrp2::eth_buffer::close </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>close the interface </p>

</div>
</div>
<a class="anchor" id="a410d450bf9c0c27830f8ce9a810a0e90"></a><!-- doxytag: member="usrp2::eth_buffer::mac" ref="a410d450bf9c0c27830f8ce9a810a0e90" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const uint8_t* usrp2::eth_buffer::mac </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return 6 byte string containing our MAC address </p>

</div>
</div>
<a class="anchor" id="a0e210e740dc81abac2f4ea05c5c5fb8f"></a><!-- doxytag: member="usrp2::eth_buffer::max_frames" ref="a0e210e740dc81abac2f4ea05c5c5fb8f" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int usrp2::eth_buffer::max_frames </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a73d14155717516c604af41b7cd336253"></a><!-- doxytag: member="usrp2::eth_buffer::open" ref="a73d14155717516c604af41b7cd336253" args="(const std::string &amp;ifname, int protocol)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="gc__types_8h.html#a0f2b5d454b7e4dda3861032cfce91085">bool</a> usrp2::eth_buffer::open </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>ifname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>protocol</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>open the specified interface </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ifname</em>&nbsp;</td><td>ethernet interface name, e.g., "eth0" </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>protocol</em>&nbsp;</td><td>is the ethertype protocol number in network order. Use 0 to receive all protocols. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af4df95fb86af1aaea600de085e3ba4aa"></a><!-- doxytag: member="usrp2::eth_buffer::release_frame" ref="af4df95fb86af1aaea600de085e3ba4aa" args="(void *p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void usrp2::eth_buffer::release_frame </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a7ecd08e04d735bb31f22cc8e3c97a82a"></a><!-- doxytag: member="usrp2::eth_buffer::rx_frames" ref="a7ecd08e04d735bb31f22cc8e3c97a82a" args="(data_handler *f, int timeout=&#45;1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a> usrp2::eth_buffer::rx_frames </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classusrp2_1_1data__handler.html">data_handler</a> *&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>timeout</em> = <code>-1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Call <code>f</code> for each frame in the receive buffer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>f</em>&nbsp;</td><td>is the frame data handler </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>(in ms) controls behavior when there are no frames to read</td></tr>
  </table>
  </dd>
</dl>
<p>If <code>timeout</code> is 0, rx_frames will not wait for frames if none are available, and f will not be invoked. If <code>timeout</code> is -1 (the default), rx_frames will block indefinitely until frames are available. If <code>timeout</code> is positive, it indicates the number of milliseconds to wait for a frame to become available. Once the timeout has expired, rx_frames will return, f never having been invoked.</p>
<p><code>f</code> will be called on each ethernet frame that is available. <code>f</code> returns a bit mask with one of the following set or cleared:</p>
<p><a class="el" href="classusrp2_1_1data__handler.html#a5ce66dd7fa850f1aef3f3a6e7b369a1facaebcc1d16db0a6697c902860ba8caf6">data_handler::KEEP</a> - hold onto the frame and present it again during the next call to rx_frames, otherwise discard it</p>
<p><a class="el" href="classusrp2_1_1data__handler.html#a5ce66dd7fa850f1aef3f3a6e7b369a1fa4f6eb3ace3f9b56c9f158a7760ae792e">data_handler::DONE</a> - return from rx_frames now even though more frames might be available; otherwise continue if more frames are ready.</p>
<p>The idea of holding onto a frame for the next iteration allows the caller to scan the received packet stream for particular classes of frames (such as command replies) leaving the rest intact. On the next call all kept frames, followed by any new frames received, will be presented in order to <code>f</code>. See usrp2.cc for an example of the pattern.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>EB_OK if at least one frame was received </dd>
<dd>
EB_WOULD_BLOCK if <code>timeout</code> is 0 and the call would have blocked </dd>
<dd>
EB_TIMED_OUT if timeout occurred </dd>
<dd>
EB_ERROR if there was an unrecoverable error. </dd></dl>

</div>
</div>
<a class="anchor" id="a599931ad82bf9a7f4f0519b3fa0658a9"></a><!-- doxytag: member="usrp2::eth_buffer::tx_frame" ref="a599931ad82bf9a7f4f0519b3fa0658a9" args="(const void *base, size_t len, int flags=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a> usrp2::eth_buffer::tx_frame </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>flags</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a0c89b83a7ec4e905ac17f5141a3b6bdd"></a><!-- doxytag: member="usrp2::eth_buffer::tx_framev" ref="a0c89b83a7ec4e905ac17f5141a3b6bdd" args="(const eth_iovec *iov, int iovcnt, int flags=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classusrp2_1_1eth__buffer.html#a89b3a731769e02e794a7901e5ab32d45">result</a> usrp2::eth_buffer::tx_framev </td>
          <td>(</td>
          <td class="paramtype">const eth_iovec *&nbsp;</td>
          <td class="paramname"> <em>iov</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>iovcnt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>flags</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a4aba555d732872e1896535ebdde78677"></a><!-- doxytag: member="usrp2::eth_buffer::MAX_PKTLEN" ref="a4aba555d732872e1896535ebdde78677" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const unsigned int <a class="el" href="classusrp2_1_1eth__buffer.html#a4aba555d732872e1896535ebdde78677">usrp2::eth_buffer::MAX_PKTLEN</a> = 1512<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a023f047905eeee79720d02debc23b5ce"></a><!-- doxytag: member="usrp2::eth_buffer::MIN_PKTLEN" ref="a023f047905eeee79720d02debc23b5ce" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const unsigned int <a class="el" href="classusrp2_1_1eth__buffer.html#a023f047905eeee79720d02debc23b5ce">usrp2::eth_buffer::MIN_PKTLEN</a> = 64<code> [static]</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="eth__buffer_8h_source.html">eth_buffer.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Dec 29 19:53:21 2010 for GNU Radio 3.3.0 C++ API 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>