diff options
Diffstat (limited to 'doc/html/boost/interprocess/rbtree_best_fit.html')
-rw-r--r-- | doc/html/boost/interprocess/rbtree_best_fit.html | 83 |
1 files changed, 42 insertions, 41 deletions
diff --git a/doc/html/boost/interprocess/rbtree_best_fit.html b/doc/html/boost/interprocess/rbtree_best_fit.html index 1dcaabf915..01b6547d0b 100644 --- a/doc/html/boost/interprocess/rbtree_best_fit.html +++ b/doc/html/boost/interprocess/rbtree_best_fit.html @@ -1,3 +1,4 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> @@ -42,106 +43,106 @@ <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a name="boost.interprocess.rbtree_best_fit.size_type"></a><span class="identifier">size_type</span><span class="special">;</span> <span class="comment">// <a class="link" href="rbtree_best_fit.html#boost.interprocess.rbtree_best_fitconstruct-copy-destruct">construct/copy/destruct</a></span> - <a class="link" href="rbtree_best_fit.html#idp55591536-bb"><span class="identifier">rbtree_best_fit</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> - <a class="link" href="rbtree_best_fit.html#idp55593808-bb"><span class="special">~</span><span class="identifier">rbtree_best_fit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> + <a class="link" href="rbtree_best_fit.html#idp35586128-bb"><span class="identifier">rbtree_best_fit</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> + <a class="link" href="rbtree_best_fit.html#idp35588400-bb"><span class="special">~</span><span class="identifier">rbtree_best_fit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> - <span class="comment">// <a class="link" href="rbtree_best_fit.html#idp55563248-bb">public member functions</a></span> - <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp55563808-bb"><span class="identifier">allocate</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp55565680-bb"><span class="identifier">deallocate</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span> - <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp55567536-bb"><span class="identifier">get_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> - <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp55568976-bb"><span class="identifier">get_free_memory</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> - <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp55570416-bb"><span class="identifier">zero_free_memory</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp55571776-bb"><span class="identifier">grow</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp55573760-bb"><span class="identifier">shrink_to_fit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">bool</span> <a class="link" href="rbtree_best_fit.html#idp55574928-bb"><span class="identifier">all_memory_deallocated</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">bool</span> <a class="link" href="rbtree_best_fit.html#idp55576112-bb"><span class="identifier">check_sanity</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> + <span class="comment">// <a class="link" href="rbtree_best_fit.html#idp35557840-bb">public member functions</a></span> + <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp35558400-bb"><span class="identifier">allocate</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> + <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp35560272-bb"><span class="identifier">deallocate</span></a><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span> + <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp35562128-bb"><span class="identifier">get_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> + <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp35563568-bb"><span class="identifier">get_free_memory</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> + <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp35565008-bb"><span class="identifier">zero_free_memory</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> + <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp35566368-bb"><span class="identifier">grow</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> + <span class="keyword">void</span> <a class="link" href="rbtree_best_fit.html#idp35568352-bb"><span class="identifier">shrink_to_fit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> + <span class="keyword">bool</span> <a class="link" href="rbtree_best_fit.html#idp35569520-bb"><span class="identifier">all_memory_deallocated</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> + <span class="keyword">bool</span> <a class="link" href="rbtree_best_fit.html#idp35570704-bb"><span class="identifier">check_sanity</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">></span> - <span class="identifier">T</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp55577424-bb"><span class="identifier">allocation_command</span></a><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> + <span class="identifier">T</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp35572016-bb"><span class="identifier">allocation_command</span></a><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">*</span><span class="special">&</span><span class="special">)</span><span class="special">;</span> - <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp55581904-bb"><span class="identifier">raw_allocation_command</span></a><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span><span class="special">,</span> + <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp35576496-bb"><span class="identifier">raw_allocation_command</span></a><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&</span><span class="special">,</span> <span class="keyword">void</span> <span class="special">*</span><span class="special">&</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">=</span> <span class="number">1</span><span class="special">)</span><span class="special">;</span> - <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp55586512-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">void</span> <span class="special">*</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> - <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp55588656-bb"><span class="identifier">allocate_aligned</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> + <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp35581104-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="keyword">const</span> <span class="keyword">void</span> <span class="special">*</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> + <span class="keyword">void</span> <span class="special">*</span> <a class="link" href="rbtree_best_fit.html#idp35583248-bb"><span class="identifier">allocate_aligned</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> - <span class="comment">// <a class="link" href="rbtree_best_fit.html#idp55594384-bb">public static functions</a></span> - <span class="keyword">static</span> <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp55594944-bb"><span class="identifier">get_min_size</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> + <span class="comment">// <a class="link" href="rbtree_best_fit.html#idp35588976-bb">public static functions</a></span> + <span class="keyword">static</span> <span class="identifier">size_type</span> <a class="link" href="rbtree_best_fit.html#idp35589536-bb"><span class="identifier">get_min_size</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="comment">// public data members</span> <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">size_type</span> <span class="identifier">PayloadPerAllocation</span><span class="special">;</span> <span class="special">}</span><span class="special">;</span></pre></div> <div class="refsect1"> -<a name="idp235395776"></a><h2>Description</h2> +<a name="idp243674752"></a><h2>Description</h2> <p>This class implements an algorithm that stores the free nodes in a red-black tree to have logarithmic search/insert times. </p> <div class="refsect2"> -<a name="idp235396592"></a><h3> +<a name="idp243675568"></a><h3> <a name="boost.interprocess.rbtree_best_fitconstruct-copy-destruct"></a><code class="computeroutput">rbtree_best_fit</code> public construct/copy/destruct</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<pre class="literallayout"><a name="idp55591536-bb"></a><span class="identifier">rbtree_best_fit</span><span class="special">(</span><span class="identifier">size_type</span> size<span class="special">,</span> <span class="identifier">size_type</span> extra_hdr_bytes<span class="special">)</span><span class="special">;</span></pre> +<pre class="literallayout"><a name="idp35586128-bb"></a><span class="identifier">rbtree_best_fit</span><span class="special">(</span><span class="identifier">size_type</span> size<span class="special">,</span> <span class="identifier">size_type</span> extra_hdr_bytes<span class="special">)</span><span class="special">;</span></pre> <p>Constructor. "size" is the total size of the managed memory segment, "extra_hdr_bytes" indicates the extra bytes beginning in the sizeof(rbtree_best_fit) offset that the allocator should not use at all. </p> </li> <li class="listitem"> -<pre class="literallayout"><a name="idp55593808-bb"></a><span class="special">~</span><span class="identifier">rbtree_best_fit</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Destructor. </li> +<pre class="literallayout"><a name="idp35588400-bb"></a><span class="special">~</span><span class="identifier">rbtree_best_fit</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Destructor. </li> </ol></div> </div> <div class="refsect2"> -<a name="idp235409328"></a><h3> -<a name="idp55563248-bb"></a><code class="computeroutput">rbtree_best_fit</code> public member functions</h3> +<a name="idp243688448"></a><h3> +<a name="idp35557840-bb"></a><code class="computeroutput">rbtree_best_fit</code> public member functions</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp55563808-bb"></a><span class="identifier">allocate</span><span class="special">(</span><span class="identifier">size_type</span> nbytes<span class="special">)</span><span class="special">;</span></pre>Allocates bytes, returns 0 if there is not more memory. </li> +<pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp35558400-bb"></a><span class="identifier">allocate</span><span class="special">(</span><span class="identifier">size_type</span> nbytes<span class="special">)</span><span class="special">;</span></pre>Allocates bytes, returns 0 if there is not more memory. </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <a name="idp55565680-bb"></a><span class="identifier">deallocate</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> addr<span class="special">)</span><span class="special">;</span></pre>Deallocates previously allocated bytes. </li> +<pre class="literallayout"><span class="keyword">void</span> <a name="idp35560272-bb"></a><span class="identifier">deallocate</span><span class="special">(</span><span class="keyword">void</span> <span class="special">*</span> addr<span class="special">)</span><span class="special">;</span></pre>Deallocates previously allocated bytes. </li> <li class="listitem"> -<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp55567536-bb"></a><span class="identifier">get_size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the size of the memory segment. </li> +<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp35562128-bb"></a><span class="identifier">get_size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the size of the memory segment. </li> <li class="listitem"> -<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp55568976-bb"></a><span class="identifier">get_free_memory</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of free bytes of the segment. </li> +<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp35563568-bb"></a><span class="identifier">get_free_memory</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the number of free bytes of the segment. </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <a name="idp55570416-bb"></a><span class="identifier">zero_free_memory</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre> +<pre class="literallayout"><span class="keyword">void</span> <a name="idp35565008-bb"></a><span class="identifier">zero_free_memory</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre> <p>Initializes to zero all the memory that's not in use. This function is normally used for security reasons. </p> </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <a name="idp55571776-bb"></a><span class="identifier">grow</span><span class="special">(</span><span class="identifier">size_type</span> extra_size<span class="special">)</span><span class="special">;</span></pre> +<pre class="literallayout"><span class="keyword">void</span> <a name="idp35566368-bb"></a><span class="identifier">grow</span><span class="special">(</span><span class="identifier">size_type</span> extra_size<span class="special">)</span><span class="special">;</span></pre> <p>Increases managed memory in extra_size bytes more </p> </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <a name="idp55573760-bb"></a><span class="identifier">shrink_to_fit</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Decreases managed memory as much as possible. </li> +<pre class="literallayout"><span class="keyword">void</span> <a name="idp35568352-bb"></a><span class="identifier">shrink_to_fit</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Decreases managed memory as much as possible. </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">bool</span> <a name="idp55574928-bb"></a><span class="identifier">all_memory_deallocated</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Returns true if all allocated memory has been deallocated. </li> +<pre class="literallayout"><span class="keyword">bool</span> <a name="idp35569520-bb"></a><span class="identifier">all_memory_deallocated</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Returns true if all allocated memory has been deallocated. </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">bool</span> <a name="idp55576112-bb"></a><span class="identifier">check_sanity</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre> +<pre class="literallayout"><span class="keyword">bool</span> <a name="idp35570704-bb"></a><span class="identifier">check_sanity</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre> <p>Makes an internal sanity check and returns true if success </p> </li> <li class="listitem"><pre class="literallayout"><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">></span> - <span class="identifier">T</span> <span class="special">*</span> <a name="idp55577424-bb"></a><span class="identifier">allocation_command</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span> command<span class="special">,</span> + <span class="identifier">T</span> <span class="special">*</span> <a name="idp35572016-bb"></a><span class="identifier">allocation_command</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span> command<span class="special">,</span> <span class="identifier">size_type</span> limit_size<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&</span> prefer_in_recvd_out_size<span class="special">,</span> <span class="identifier">T</span> <span class="special">*</span><span class="special">&</span> reuse<span class="special">)</span><span class="special">;</span></pre></li> -<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp55581904-bb"></a><span class="identifier">raw_allocation_command</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span> command<span class="special">,</span> +<li class="listitem"><pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp35576496-bb"></a><span class="identifier">raw_allocation_command</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">interprocess</span><span class="special">::</span><span class="identifier">allocation_type</span> command<span class="special">,</span> <span class="identifier">size_type</span> limit_object<span class="special">,</span> <span class="identifier">size_type</span> <span class="special">&</span> prefer_in_recvd_out_size<span class="special">,</span> <span class="keyword">void</span> <span class="special">*</span><span class="special">&</span> reuse_ptr<span class="special">,</span> <span class="identifier">size_type</span> sizeof_object <span class="special">=</span> <span class="number">1</span><span class="special">)</span><span class="special">;</span></pre></li> <li class="listitem"> -<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp55586512-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">void</span> <span class="special">*</span> ptr<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the size of the buffer previously allocated pointed by ptr. </li> +<pre class="literallayout"><span class="identifier">size_type</span> <a name="idp35581104-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="keyword">const</span> <span class="keyword">void</span> <span class="special">*</span> ptr<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns the size of the buffer previously allocated pointed by ptr. </li> <li class="listitem"> -<pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp55588656-bb"></a><span class="identifier">allocate_aligned</span><span class="special">(</span><span class="identifier">size_type</span> nbytes<span class="special">,</span> <span class="identifier">size_type</span> alignment<span class="special">)</span><span class="special">;</span></pre> +<pre class="literallayout"><span class="keyword">void</span> <span class="special">*</span> <a name="idp35583248-bb"></a><span class="identifier">allocate_aligned</span><span class="special">(</span><span class="identifier">size_type</span> nbytes<span class="special">,</span> <span class="identifier">size_type</span> alignment<span class="special">)</span><span class="special">;</span></pre> <p>Allocates aligned bytes, returns 0 if there is not more memory. Alignment must be power of 2 </p> </li> </ol></div> </div> <div class="refsect2"> -<a name="idp235504336"></a><h3> -<a name="idp55594384-bb"></a><code class="computeroutput">rbtree_best_fit</code> public static functions</h3> +<a name="idp243783456"></a><h3> +<a name="idp35588976-bb"></a><code class="computeroutput">rbtree_best_fit</code> public static functions</h3> <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"> -<pre class="literallayout"><span class="keyword">static</span> <span class="identifier">size_type</span> <a name="idp55594944-bb"></a><span class="identifier">get_min_size</span><span class="special">(</span><span class="identifier">size_type</span> extra_hdr_bytes<span class="special">)</span><span class="special">;</span></pre>Obtains the minimum size needed by the algorithm. </li></ol></div> +<pre class="literallayout"><span class="keyword">static</span> <span class="identifier">size_type</span> <a name="idp35589536-bb"></a><span class="identifier">get_min_size</span><span class="special">(</span><span class="identifier">size_type</span> extra_hdr_bytes<span class="special">)</span><span class="special">;</span></pre>Obtains the minimum size needed by the algorithm. </li></ol></div> </div> </div> </div> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <td align="left"></td> -<td align="right"><div class="copyright-footer">Copyright © 2005-2012 Ion Gaztanaga<p> +<td align="right"><div class="copyright-footer">Copyright © 2005-2015 Ion Gaztanaga<p> Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) </p> |