<!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>ucommon: LinkedAllocator 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">ucommon</div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="classes.html"><span>Data Structure Index</span></a></li> <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </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('a00063.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <h1>LinkedAllocator Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="LinkedAllocator" --><!-- doxytag: inherits="Conditional" --> <p>Linked allocator helper for <a class="el" href="a00060.html" title="Linked allocator template to gather linked objects.">linked_allocator</a> template. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="a00180_source.html">containers.h</a>></code></p> <div class="dynheader"> Inheritance diagram for LinkedAllocator:</div> <div class="dyncontent"> <div class="center"><img src="a00339.png" border="0" usemap="#_linked_allocator_inherit__map" alt="Inheritance graph"/></div> <map name="_linked_allocator_inherit__map" id="_linked_allocator_inherit__map"> <area shape="rect" id="node5" href="a00060.html" title="Linked allocator template to gather linked objects." alt="" coords="5,155,237,181"/><area shape="rect" id="node2" href="a00034.html" title="The conditional is a common base for other thread synchronizing classes." alt="" coords="56,5,187,32"/></map> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <div class="dynheader"> Collaboration diagram for LinkedAllocator:</div> <div class="dyncontent"> <div class="center"><img src="a00340.png" border="0" usemap="#_linked_allocator_coll__map" alt="Collaboration graph"/></div> <map name="_linked_allocator_coll__map" id="_linked_allocator_coll__map"> <area shape="rect" id="node2" href="a00034.html" title="The conditional is a common base for other thread synchronizing classes." alt="" coords="5,91,136,117"/><area shape="rect" id="node4" href="a00065.html" title="Common base class for all objects that can be formed into a linked list." alt="" coords="160,91,301,117"/><area shape="rect" id="node6" href="a00091.html" title="A common base class for all managed objects." alt="" coords="189,5,272,32"/></map> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00063.html#ad1da2dec6881b594819f7345bf7e1d3d">operator bool</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Test if there is still objects in the free list. <a href="#ad1da2dec6881b594819f7345bf7e1d3d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00063.html#a76eff0a633001765afbb87173b40d7f3">operator!</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Test if the free list is empty. <a href="#a76eff0a633001765afbb87173b40d7f3"></a><br/></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"><a class="anchor" id="a8893c601f80dcb50a3f854171e5fad8e"></a><!-- doxytag: member="LinkedAllocator::get" ref="a8893c601f80dcb50a3f854171e5fad8e" args="(void)" --> <a class="el" href="a00065.html">LinkedObject</a> * </td><td class="memItemRight" valign="bottom"><b>get</b> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02a7bc5299ab72560c2e208b51233af9"></a><!-- doxytag: member="LinkedAllocator::get" ref="a02a7bc5299ab72560c2e208b51233af9" args="(timeout_t timeout)" --> <a class="el" href="a00065.html">LinkedObject</a> * </td><td class="memItemRight" valign="bottom"><b>get</b> (<a class="el" href="a00193.html#af412159e5cef839836a5e7b19ee75d1c">timeout_t</a> timeout)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb7e0fc7854f4190535ef8ae0aed4450"></a><!-- doxytag: member="LinkedAllocator::release" ref="aeb7e0fc7854f4190535ef8ae0aed4450" args="(LinkedObject *node)" --> void </td><td class="memItemRight" valign="bottom"><b>release</b> (<a class="el" href="a00065.html">LinkedObject</a> *node)</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"><a class="anchor" id="a223de572a1e5ef9f9485ad477307966e"></a><!-- doxytag: member="LinkedAllocator::freelist" ref="a223de572a1e5ef9f9485ad477307966e" args="" --> <a class="el" href="a00065.html">LinkedObject</a> * </td><td class="memItemRight" valign="bottom"><b>freelist</b></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Linked allocator helper for <a class="el" href="a00060.html" title="Linked allocator template to gather linked objects.">linked_allocator</a> template. </p> <p>This is used to alloc an array of typed objects tied to a free list in a single operation. </p> <dl class="author"><dt><b>Author:</b></dt><dd>David Sugar <<a href="mailto:dyfet@gnutelephony.org">dyfet@gnutelephony.org</a>> </dd></dl> <p>Definition at line <a class="el" href="a00180_source.html#l00060">60</a> of file <a class="el" href="a00180_source.html">containers.h</a>.</p> </div><hr/><h2>Member Function Documentation</h2> <a class="anchor" id="ad1da2dec6881b594819f7345bf7e1d3d"></a><!-- doxytag: member="LinkedAllocator::operator bool" ref="ad1da2dec6881b594819f7345bf7e1d3d" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">LinkedAllocator::operator bool </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Test if there is still objects in the free list. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>true if there are objects. </dd></dl> </div> </div> <a class="anchor" id="a76eff0a633001765afbb87173b40d7f3"></a><!-- doxytag: member="LinkedAllocator::operator!" ref="a76eff0a633001765afbb87173b40d7f3" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool LinkedAllocator::operator! </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Test if the free list is empty. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>true if the free list is empty. </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>ucommon/<a class="el" href="a00180_source.html">containers.h</a></li> </ul> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="a00063.html">LinkedAllocator</a> </li> <li class="footer">Generated on Wed Apr 13 2011 22:39:47 for ucommon by  <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>