<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::internal::CaptureMemoryDelegateWin Class 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.18 -->
<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="namespacecrashpad_1_1internal.html">internal</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html">CaptureMemoryDelegateWin</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::internal::CaptureMemoryDelegateWin Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for crashpad::internal::CaptureMemoryDelegateWin:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.png" usemap="#crashpad::internal::CaptureMemoryDelegateWin_map" alt=""/>
  <map id="crashpad::internal::CaptureMemoryDelegateWin_map" name="crashpad::internal::CaptureMemoryDelegateWin_map">
<area href="classcrashpad_1_1internal_1_1CaptureMemory_1_1Delegate.html" title="An interface to a platform-specific process reader." alt="crashpad::internal::CaptureMemory::Delegate" shape="rect" coords="0,0,281,24"/>
  </map>
</div></div>
<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:a1ab0cc990da2ac7ea327e01d6e304998"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a1ab0cc990da2ac7ea327e01d6e304998">CaptureMemoryDelegateWin</a> (<a class="el" href="classcrashpad_1_1ProcessReaderWin.html">ProcessReaderWin</a> *process_reader, const <a class="el" href="structcrashpad_1_1ProcessReaderWin_1_1Thread.html">ProcessReaderWin::Thread</a> &amp;thread, std::vector&lt; std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1internal_1_1MemorySnapshotGeneric.html">MemorySnapshotGeneric</a> &gt;&gt; *snapshots, uint32_t *budget_remaining)</td></tr>
<tr class="memdesc:a1ab0cc990da2ac7ea327e01d6e304998"><td class="mdescLeft">&#160;</td><td class="mdescRight">A MemoryCaptureDelegate for Windows.  <a href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a1ab0cc990da2ac7ea327e01d6e304998">More...</a><br /></td></tr>
<tr class="separator:a1ab0cc990da2ac7ea327e01d6e304998"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accfeefca9347531e9190ee8d67b96954"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#accfeefca9347531e9190ee8d67b96954">Is64Bit</a> () const override</td></tr>
<tr class="separator:accfeefca9347531e9190ee8d67b96954"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07efa777912f0ba2dbe1ffb9c179c60e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a07efa777912f0ba2dbe1ffb9c179c60e">ReadMemory</a> (uint64_t at, uint64_t num_bytes, void *into) const override</td></tr>
<tr class="memdesc:a07efa777912f0ba2dbe1ffb9c179c60e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempts to read <em>num_bytes</em> bytes from the target process starting at address <em>at</em> into <em>into</em>.  <a href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a07efa777912f0ba2dbe1ffb9c179c60e">More...</a><br /></td></tr>
<tr class="separator:a07efa777912f0ba2dbe1ffb9c179c60e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e2ec7151960ab8f548d6fb34ea29525"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a7e2ec7151960ab8f548d6fb34ea29525">GetReadableRanges</a> (const <a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t, uint64_t &gt; &amp;range) const override</td></tr>
<tr class="memdesc:a7e2ec7151960ab8f548d6fb34ea29525"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a range to be read from the target process, returns a vector of ranges, representing the readable portions of the original range.  <a href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a7e2ec7151960ab8f548d6fb34ea29525">More...</a><br /></td></tr>
<tr class="separator:a7e2ec7151960ab8f548d6fb34ea29525"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d69456bc03679dc4c4c8028d6e6e17d"><td class="memItemLeft" align="right" valign="top"><a id="a5d69456bc03679dc4c4c8028d6e6e17d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemoryDelegateWin.html#a5d69456bc03679dc4c4c8028d6e6e17d">AddNewMemorySnapshot</a> (const <a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t, uint64_t &gt; &amp;range) override</td></tr>
<tr class="memdesc:a5d69456bc03679dc4c4c8028d6e6e17d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds the given range representing a memory snapshot in the target process to the result. <br /></td></tr>
<tr class="separator:a5d69456bc03679dc4c4c8028d6e6e17d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a1ab0cc990da2ac7ea327e01d6e304998"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ab0cc990da2ac7ea327e01d6e304998">&#9670;&nbsp;</a></span>CaptureMemoryDelegateWin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">crashpad::internal::CaptureMemoryDelegateWin::CaptureMemoryDelegateWin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcrashpad_1_1ProcessReaderWin.html">ProcessReaderWin</a> *&#160;</td>
          <td class="paramname"><em>process_reader</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structcrashpad_1_1ProcessReaderWin_1_1Thread.html">ProcessReaderWin::Thread</a> &amp;&#160;</td>
          <td class="paramname"><em>thread</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1internal_1_1MemorySnapshotGeneric.html">MemorySnapshotGeneric</a> &gt;&gt; *&#160;</td>
          <td class="paramname"><em>snapshots</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>budget_remaining</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>A MemoryCaptureDelegate for Windows. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">process_reader</td><td>A <a class="el" href="classcrashpad_1_1ProcessReaderWin.html" title="Accesses information about another process, identified by a HANDLE.">ProcessReaderWin</a> for the target process. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">thread</td><td>The thread being inspected. Memory ranges overlapping this thread's stack will be ignored on the assumption that they're already captured elsewhere. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">snapshots</td><td>A vector of <a class="el" href="classcrashpad_1_1internal_1_1MemorySnapshotGeneric.html" title="A MemorySnapshot of a memory region in a process on the running system. Works on multiple platforms b...">MemorySnapshotGeneric</a> to which the captured memory will be added. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">budget_remaining</td><td>If non-null, a pointer to the remaining number of bytes to capture. If this is <code>0</code>, no further memory will be captured. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7e2ec7151960ab8f548d6fb34ea29525"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e2ec7151960ab8f548d6fb34ea29525">&#9670;&nbsp;</a></span>GetReadableRanges()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; <a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t &gt; &gt; crashpad::internal::CaptureMemoryDelegateWin::GetReadableRanges </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcrashpad_1_1CheckedRange.html">CheckedRange</a>&lt; uint64_t, uint64_t &gt; &amp;&#160;</td>
          <td class="paramname"><em>range</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Given a range to be read from the target process, returns a vector of ranges, representing the readable portions of the original range. </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 being identified.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A vector of ranges corresponding to the portion of <em>range</em> that is readable. </dd></dl>

<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1CaptureMemory_1_1Delegate.html#a24023e17234ad35e6fc226f3c068b41d">crashpad::internal::CaptureMemory::Delegate</a>.</p>

</div>
</div>
<a id="accfeefca9347531e9190ee8d67b96954"></a>
<h2 class="memtitle"><span class="permalink"><a href="#accfeefca9347531e9190ee8d67b96954">&#9670;&nbsp;</a></span>Is64Bit()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool crashpad::internal::CaptureMemoryDelegateWin::Is64Bit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the target process is a 64-bit process. </dd></dl>

<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1CaptureMemory_1_1Delegate.html#acb7087bb15b1da39cd3598b76c565c5e">crashpad::internal::CaptureMemory::Delegate</a>.</p>

</div>
</div>
<a id="a07efa777912f0ba2dbe1ffb9c179c60e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07efa777912f0ba2dbe1ffb9c179c60e">&#9670;&nbsp;</a></span>ReadMemory()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool crashpad::internal::CaptureMemoryDelegateWin::ReadMemory </td>
          <td>(</td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>at</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>num_bytes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>into</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Attempts to read <em>num_bytes</em> bytes from the target process starting at address <em>at</em> into <em>into</em>. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the entire region could be read, or <code>false</code> with an error logged. </dd></dl>

<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1CaptureMemory_1_1Delegate.html#add0c4d78c77fe3059e48be0dca990085">crashpad::internal::CaptureMemory::Delegate</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>snapshot/win/capture_memory_delegate_win.h</li>
<li>snapshot/win/capture_memory_delegate_win.cc</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.18
</small></address>
</body>
</html>
