<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::TSimpleAddressRangeBag&lt; NumEntries &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">TSimpleAddressRangeBag</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="classcrashpad_1_1TSimpleAddressRangeBag-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::TSimpleAddressRangeBag&lt; NumEntries &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A bag implementation using a fixed amount of storage, so that it does not perform any dynamic allocations for its operations.  
 <a href="classcrashpad_1_1TSimpleAddressRangeBag.html#details">More...</a></p>

<p><code>#include &quot;client/simple_address_range_bag.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1TSimpleAddressRangeBag_1_1Entry.html">Entry</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single entry in the bag.  <a href="structcrashpad_1_1TSimpleAddressRangeBag_1_1Entry.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag_1_1Iterator.html">Iterator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An iterator to traverse all of the active entries in a <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html" title="A bag implementation using a fixed amount of storage, so that it does not perform any dynamic allocat...">TSimpleAddressRangeBag</a>.  <a href="classcrashpad_1_1TSimpleAddressRangeBag_1_1Iterator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a15becb392eeb70fa19447592cca463df"><td class="memItemLeft" align="right" valign="top"><a id="a15becb392eeb70fa19447592cca463df"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>TSimpleAddressRangeBag</b> (const <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">TSimpleAddressRangeBag</a> &amp;other)</td></tr>
<tr class="separator:a15becb392eeb70fa19447592cca463df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afebbee66c2394d129ed66ffe5f4ba622"><td class="memItemLeft" align="right" valign="top"><a id="afebbee66c2394d129ed66ffe5f4ba622"></a>
<a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">TSimpleAddressRangeBag</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">TSimpleAddressRangeBag</a> &amp;other)</td></tr>
<tr class="separator:afebbee66c2394d129ed66ffe5f4ba622"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74b966b1096534a433ef85d242930b4f"><td class="memItemLeft" align="right" valign="top"><a id="a74b966b1096534a433ef85d242930b4f"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#a74b966b1096534a433ef85d242930b4f">GetCount</a> () const</td></tr>
<tr class="memdesc:a74b966b1096534a433ef85d242930b4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of active entries. The upper limit for this is <em>NumEntries</em>. <br /></td></tr>
<tr class="separator:a74b966b1096534a433ef85d242930b4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0c9f52fdd85e823337a9d9b88281ca6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#ac0c9f52fdd85e823337a9d9b88281ca6">Insert</a> (<a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt; range)</td></tr>
<tr class="memdesc:ac0c9f52fdd85e823337a9d9b88281ca6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inserts the given range into the bag. Duplicates and overlapping ranges are supported and allowed, but not coalesced.  <a href="#ac0c9f52fdd85e823337a9d9b88281ca6">More...</a><br /></td></tr>
<tr class="separator:ac0c9f52fdd85e823337a9d9b88281ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a833914f8391052a749d3fe6b0093bd09"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#a833914f8391052a749d3fe6b0093bd09">Insert</a> (void *base, size_t size)</td></tr>
<tr class="memdesc:a833914f8391052a749d3fe6b0093bd09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inserts the given range into the bag. Duplicates and overlapping ranges are supported and allowed, but not coalesced.  <a href="#a833914f8391052a749d3fe6b0093bd09">More...</a><br /></td></tr>
<tr class="separator:a833914f8391052a749d3fe6b0093bd09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5842b9ef27db16ec015a5336c41a29cc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#a5842b9ef27db16ec015a5336c41a29cc">Remove</a> (<a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt; range)</td></tr>
<tr class="memdesc:a5842b9ef27db16ec015a5336c41a29cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the given range from the bag.  <a href="#a5842b9ef27db16ec015a5336c41a29cc">More...</a><br /></td></tr>
<tr class="separator:a5842b9ef27db16ec015a5336c41a29cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b660203282c6b565359b130f4293611"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#a4b660203282c6b565359b130f4293611">Remove</a> (void *base, size_t size)</td></tr>
<tr class="memdesc:a4b660203282c6b565359b130f4293611"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the given range from the bag.  <a href="#a4b660203282c6b565359b130f4293611">More...</a><br /></td></tr>
<tr class="separator:a4b660203282c6b565359b130f4293611"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a1ec784a203615f177beac5941a72839a"><td class="memItemLeft" align="right" valign="top"><a id="a1ec784a203615f177beac5941a72839a"></a>
static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html#a1ec784a203615f177beac5941a72839a">num_entries</a> = NumEntries</td></tr>
<tr class="memdesc:a1ec784a203615f177beac5941a72839a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant and publicly accessible version of the template parameter. <br /></td></tr>
<tr class="separator:a1ec784a203615f177beac5941a72839a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;size_t NumEntries = 64&gt;<br />
class crashpad::TSimpleAddressRangeBag&lt; NumEntries &gt;</h3>

<p>A bag implementation using a fixed amount of storage, so that it does not perform any dynamic allocations for its operations. </p>
<p>The actual bag storage (<a class="el" href="structcrashpad_1_1TSimpleAddressRangeBag_1_1Entry.html" title="A single entry in the bag. ">TSimpleAddressRangeBag::Entry</a>) is POD, so that it can be transmitted over various IPC mechanisms. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="ac0c9f52fdd85e823337a9d9b88281ca6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0c9f52fdd85e823337a9d9b88281ca6">&#9670;&nbsp;</a></span>Insert() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;size_t NumEntries = 64&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">crashpad::TSimpleAddressRangeBag</a>&lt; NumEntries &gt;::Insert </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt;&#160;</td>
          <td class="paramname"><em>range</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inserts the given range into the bag. Duplicates and overlapping ranges are supported and allowed, but not coalesced. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>The range to be inserted. The range must have either a non-zero base address or size.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if there was space to insert the range into the bag, otherwise <code>false</code> with an error logged. </dd></dl>

</div>
</div>
<a id="a833914f8391052a749d3fe6b0093bd09"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a833914f8391052a749d3fe6b0093bd09">&#9670;&nbsp;</a></span>Insert() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;size_t NumEntries = 64&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">crashpad::TSimpleAddressRangeBag</a>&lt; NumEntries &gt;::Insert </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inserts the given range into the bag. Duplicates and overlapping ranges are supported and allowed, but not coalesced. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>The base of the range to be inserted. May not be null. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The size of the range to be inserted. May not be zero.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if there was space to insert the range into the bag, otherwise <code>false</code> with an error logged. </dd></dl>

</div>
</div>
<a id="a5842b9ef27db16ec015a5336c41a29cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5842b9ef27db16ec015a5336c41a29cc">&#9670;&nbsp;</a></span>Remove() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;size_t NumEntries = 64&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">crashpad::TSimpleAddressRangeBag</a>&lt; NumEntries &gt;::Remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt;&#160;</td>
          <td class="paramname"><em>range</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes the given range from the bag. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>The range to be removed. The range must have either a non-zero base address or size.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the range was found and removed, otherwise <code>false</code> with an error logged. </dd></dl>

</div>
</div>
<a id="a4b660203282c6b565359b130f4293611"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b660203282c6b565359b130f4293611">&#9670;&nbsp;</a></span>Remove() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;size_t NumEntries = 64&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classcrashpad_1_1TSimpleAddressRangeBag.html">crashpad::TSimpleAddressRangeBag</a>&lt; NumEntries &gt;::Remove </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes the given range from the bag. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>The base of the range to be removed. May not be null. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The size of the range to be removed. May not be zero.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the range was found and removed, otherwise <code>false</code> with an error logged. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>client/simple_address_range_bag.h</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
