1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> 3<title>uIP 1.0: lib/memb.h File Reference</title> 4<link href="doxygen.css" rel="stylesheet" type="text/css"> 5<link href="tabs.css" rel="stylesheet" type="text/css"> 6</head><body> 7<!-- Generated by Doxygen 1.4.6 --> 8<div class="tabs"> 9 <ul> 10 <li><a href="main.html"><span>Main Page</span></a></li> 11 <li><a href="modules.html"><span>Modules</span></a></li> 12 <li><a href="classes.html"><span>Data Structures</span></a></li> 13 <li id="current"><a href="files.html"><span>Files</span></a></li> 14 <li><a href="examples.html"><span>Examples</span></a></li> 15 </ul></div> 16<div class="tabs"> 17 <ul> 18 <li><a href="files.html"><span>File List</span></a></li> 19 <li><a href="globals.html"><span>Globals</span></a></li> 20 </ul></div> 21<h1>lib/memb.h File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2> 22Memory block allocation routines. 23<p> 24<dl compact><dt><b>Author:</b></dt><dd>Adam Dunkels <<a href="mailto:[email protected]">[email protected]</a>> </dd></dl> 25 26<p> 27Definition in file <a class="el" href="a00187.html">memb.h</a>. 28<p> 29 30<p> 31<a href="a00187.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> 32<tr><td></td></tr> 33<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> 34<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="a00081.html">memb_blocks</a></td></tr> 35 36<tr><td colspan="2"><br><h2>Defines</h2></td></tr> 37<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga680bc3f3a1a8a6aec20fe729d138cb8"></a><!-- doxytag: member="memb.h::MEMB_CONCAT2" ref="ga680bc3f3a1a8a6aec20fe729d138cb8" args="(s1, s2)" --> 38#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#ga680bc3f3a1a8a6aec20fe729d138cb8">MEMB_CONCAT2</a>(s1, s2) s1##s2</td></tr> 39 40<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g720ac440c7b24bdd07c53ba146e36fb2"></a><!-- doxytag: member="memb.h::MEMB_CONCAT" ref="g720ac440c7b24bdd07c53ba146e36fb2" args="(s1, s2)" --> 41#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#g720ac440c7b24bdd07c53ba146e36fb2">MEMB_CONCAT</a>(s1, s2) MEMB_CONCAT2(s1, s2)</td></tr> 42 43<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#gf31774d02a69fd3f1c2b282454438cba">MEMB</a>(name, structure, num)</td></tr> 44 45<tr><td class="mdescLeft"> </td><td class="mdescRight">Declare a memory block. <a href="a00159.html#gf31774d02a69fd3f1c2b282454438cba"></a><br></td></tr> 46<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 47<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#gd58a6c7e62ae59bf7a016ded12ca2910">memb_init</a> (struct <a class="el" href="a00081.html">memb_blocks</a> *m)</td></tr> 48 49<tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize a memory block that was declared with <a class="el" href="a00159.html#gf31774d02a69fd3f1c2b282454438cba">MEMB()</a>. <a href="a00159.html#gd58a6c7e62ae59bf7a016ded12ca2910"></a><br></td></tr> 50<tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#gfe5e93119035e14cc485760a176249ba">memb_alloc</a> (struct <a class="el" href="a00081.html">memb_blocks</a> *m)</td></tr> 51 52<tr><td class="mdescLeft"> </td><td class="mdescRight">Allocate a memory block from a block of memory declared with <a class="el" href="a00159.html#gf31774d02a69fd3f1c2b282454438cba">MEMB()</a>. <a href="a00159.html#gfe5e93119035e14cc485760a176249ba"></a><br></td></tr> 53<tr><td class="memItemLeft" nowrap align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="a00159.html#gceb952d27de8125d5146ac0bee325b8f">memb_free</a> (struct <a class="el" href="a00081.html">memb_blocks</a> *m, void *ptr)</td></tr> 54 55<tr><td class="mdescLeft"> </td><td class="mdescRight">Deallocate a memory block from a memory block previously declared with <a class="el" href="a00159.html#gf31774d02a69fd3f1c2b282454438cba">MEMB()</a>. <a href="a00159.html#gceb952d27de8125d5146ac0bee325b8f"></a><br></td></tr> 56</table> 57<hr size="1"><address style="align: right;"><small>Generated on Mon Jun 12 10:23:01 2006 for uIP 1.0 by 58<a href="http://www.doxygen.org/index.html"> 59<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address> 60</body> 61</html> 62