summaryrefslogtreecommitdiff
path: root/freebsdtvision/doc/html/classTVMemMgr.html
diff options
context:
space:
mode:
Diffstat (limited to 'freebsdtvision/doc/html/classTVMemMgr.html')
-rw-r--r--freebsdtvision/doc/html/classTVMemMgr.html265
1 files changed, 265 insertions, 0 deletions
diff --git a/freebsdtvision/doc/html/classTVMemMgr.html b/freebsdtvision/doc/html/classTVMemMgr.html
new file mode 100644
index 0000000..e2cbf58
--- /dev/null
+++ b/freebsdtvision/doc/html/classTVMemMgr.html
@@ -0,0 +1,265 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>TVMemMgr class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.2.18 -->
+<center>
+<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
+<hr><h1>TVMemMgr Class Reference</h1>Part of the memory manager.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="buffers_8h-source.html">buffers.h</a>&gt;</code>
+<p>
+<a href="classTVMemMgr-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
+<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#a0">TVMemMgr</a> ()</td></tr>
+<tr><td colspan=2><br><h2>Static Public Methods</h2></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d0">resizeSafetyPool</a> (size_t sz=<a class="el" href="buffers_8h.html#a0">DEFAULT_SAFETY_POOL_SIZE</a>)</td></tr>
+<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d1">safetyPoolExhausted</a> ()</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d2">clearSafetyPool</a> ()</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d3">allocateDiscardable</a> (void *&amp;adr, size_t sz)</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d4">freeDiscardable</a> (void *)</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classTVMemMgr.html#d5">suspend</a> (void)</td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+TVMemMgr, in conjunction with <a class="el" href="classTBufListEntry.html">TBufListEntry</a> and the global operator new, provides low-level memory management for TVision applications.
+<p>
+In particular, TVMemMgr manages the safety pool. For most applications, TVMemMgr and <a class="el" href="classTBufListEntry.html">TBufListEntry</a> objects work behind the scenes without the need for specific programmer action or intervention.
+<p>
+
+<p>
+Definition at line <a class="el" href="buffers_8h-source.html#l00088">88</a> of file <a class="el" href="buffers_8h-source.html">buffers.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a name="a0" doxytag="TVMemMgr::TVMemMgr"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> TVMemMgr::TVMemMgr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor.
+<p>
+Does nothing if the safety pool is already initialized (that is, if private data member inited = 1).
+<p>
+Otherwise, calls method <a class="el" href="classTVMemMgr.html#d0">TVMemMgr::resizeSafetyPool</a> to establish a default safety pool with the size given by the constant <a class="el" href="buffers_8h.html#a0">DEFAULT_SAFETY_POOL_SIZE</a>.
+<p>
+The latter is currently set to 4,096 (bytes) in `<a class="el" href="buffers_8h.html">buffers.h</a>'. The constructor also sets inited to 1. </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a name="d3" doxytag="TVMemMgr::allocateDiscardable"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void TVMemMgr::allocateDiscardable </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void *&amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>adr</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>size_t&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>sz</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+For internal use only. Tries to allocate a cache buffer (<a class="el" href="classTBufListEntry.html">TBufListEntry</a> object) of size `sz'.
+<p>
+If successful, `adr' returns a pointer to the allocated buffer; otherwise, `adr' is set to 0. <a class="el" href="classTGroup.html#a39">TGroup::getBuffer()</a> calls <a class="el" href="classTVMemMgr.html#d3">allocateDiscardable()</a> with `adr' set to the <a class="el" href="classTGroup.html#m4">TGroup::buffer</a> data member. </td>
+ </tr>
+</table>
+<a name="d2" doxytag="TVMemMgr::clearSafetyPool"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void TVMemMgr::clearSafetyPool </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Undocumented. </td>
+ </tr>
+</table>
+<a name="d4" doxytag="TVMemMgr::freeDiscardable"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void TVMemMgr::freeDiscardable </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+For internal use only. Frees the buffer allocated at block by an earlier <a class="el" href="classTVMemMgr.html#d3">allocateDiscardable()</a> call.
+<p>
+<a class="el" href="classTGroup.html#a38">TGroup::freeBuffer()</a> calls <a class="el" href="classTVMemMgr.html#d4">freeDiscardable()</a> with block set to the <a class="el" href="classTGroup.html#m4">TGroup::buffer</a> data member. </td>
+ </tr>
+</table>
+<a name="d0" doxytag="TVMemMgr::resizeSafetyPool"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void TVMemMgr::resizeSafetyPool </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">size_t&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>sz</em> = <a class="el" href="buffers_8h.html#a0">DEFAULT_SAFETY_POOL_SIZE</a> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Resizes the safety pool to `sz' bytes.
+<p>
+The previous safety pool, if one exists, is freed first. inited private data member is set to 1, safetyPool is set to point to the new safety pool, and safetyPoolSize is set to `sz'. If the `sz' argument is omitted, the default value is assumed.
+<p>
+If `sz' is 0, both safetyPool and safetyPoolSize private data members are set to 0. </td>
+ </tr>
+</table>
+<a name="d1" doxytag="TVMemMgr::safetyPoolExhausted"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> int TVMemMgr::safetyPoolExhausted </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Returns 1 (True) if the safety pool is initialized and its allocation is exhausted. Otherwise, returns 0 (False). </td>
+ </tr>
+</table>
+<a name="d5" doxytag="TVMemMgr::suspend"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void TVMemMgr::suspend </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Undocumented. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="buffers_8h-source.html">buffers.h</a></ul>
+<hr><address style="align: right;"><small>Generated on Wed Apr 2 22:13:18 2003 for TVision by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0
+width=110 height=53></a>1.2.18 </small></address>
+</body>
+</html>