crashpad/doc/generated/doxygen/classcrashpad_1_1MinidumpMemoryWriter.html
2015-10-08 14:55:01 -04:00

498 lines
45 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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.9.1"/>
<title>Crashpad: crashpad::MinidumpMemoryWriter 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>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="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 style="padding-left: 0.5em;">
<div id="projectname">Crashpad
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</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_1MinidumpMemoryWriter.html">MinidumpMemoryWriter</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classcrashpad_1_1MinidumpMemoryWriter-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">crashpad::MinidumpMemoryWriter Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>The base class for writers of memory ranges pointed to by <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html" title="A pointer to a snapshot of a region of memory contained within a minidump file. ">MINIDUMP_MEMORY_DESCRIPTOR</a> objects in a minidump file.
<a href="classcrashpad_1_1MinidumpMemoryWriter.html#details">More...</a></p>
<p><code>#include &quot;minidump/minidump_memory_writer.h&quot;</code></p>
<div class="dynheader">
Inheritance diagram for crashpad::MinidumpMemoryWriter:</div>
<div class="dyncontent">
<div class="center">
<img src="classcrashpad_1_1MinidumpMemoryWriter.png" usemap="#crashpad::MinidumpMemoryWriter_map" alt=""/>
<map id="crashpad::MinidumpMemoryWriter_map" name="crashpad::MinidumpMemoryWriter_map">
<area href="classcrashpad_1_1internal_1_1MinidumpWritable.html" title="The base class for all content that might be written to a minidump file. " alt="crashpad::internal::MinidumpWritable" shape="rect" coords="196,0,579,24"/>
<area href="classcrashpad_1_1test_1_1TestMinidumpMemoryWriter.html" title="A MinidumpMemoryWriter implementation used for testing. " alt="crashpad::test::TestMinidumpMemoryWriter" shape="rect" coords="0,112,383,136"/>
<area href="classcrashpad_1_1PointerContainer.html" alt="crashpad::PointerContainer&lt; crashpad::MinidumpMemoryWriter &gt;" shape="rect" coords="393,112,776,136"/>
</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:aed2c11b4e81395533d93eb85a4563e18"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html">MINIDUMP_MEMORY_DESCRIPTOR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#aed2c11b4e81395533d93eb85a4563e18">MinidumpMemoryDescriptor</a> () const </td></tr>
<tr class="memdesc:aed2c11b4e81395533d93eb85a4563e18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html" title="A pointer to a snapshot of a region of memory contained within a minidump file. ">MINIDUMP_MEMORY_DESCRIPTOR</a> referencing the data that this object writes. <a href="#aed2c11b4e81395533d93eb85a4563e18">More...</a><br /></td></tr>
<tr class="separator:aed2c11b4e81395533d93eb85a4563e18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa770340c418ab7835a5c4a5a38f52e84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#aa770340c418ab7835a5c4a5a38f52e84">RegisterMemoryDescriptor</a> (<a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html">MINIDUMP_MEMORY_DESCRIPTOR</a> *memory_descriptor)</td></tr>
<tr class="memdesc:aa770340c418ab7835a5c4a5a38f52e84"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a memory descriptor as one that should point to the object on which this method is called. <a href="#aa770340c418ab7835a5c4a5a38f52e84">More...</a><br /></td></tr>
<tr class="separator:aa770340c418ab7835a5c4a5a38f52e84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a24507e918299cb566c7f15207de83a7f">WriteEverything</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer)</td></tr>
<tr class="memdesc:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an object and all of its children to a minidump file. <a href="#a24507e918299cb566c7f15207de83a7f">More...</a><br /></td></tr>
<tr class="separator:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37">RegisterRVA</a> (<a class="el" href="dbghelp_8h.html#acf465a1a77ecf067a9d946583bc6a3f8">RVA</a> *rva)</td></tr>
<tr class="memdesc:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a file offset pointer as one that should point to the object on which this method is called. <a href="#a686683d78f099a07e2a1df8e6b567d37">More...</a><br /></td></tr>
<tr class="separator:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400">RegisterLocationDescriptor</a> (<a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> *location_descriptor)</td></tr>
<tr class="memdesc:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a location descriptor as one that should point to the object on which this method is called. <a href="#aed263c64ecb0597696d080e395af6400">More...</a><br /></td></tr>
<tr class="separator:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><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-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:ac9adde79751ab836d190bdfd4b778712"><td class="memItemLeft" align="right" valign="top">static scoped_ptr&lt; <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html">MinidumpMemoryWriter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#ac9adde79751ab836d190bdfd4b778712">CreateFromSnapshot</a> (const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> *memory_snapshot)</td></tr>
<tr class="memdesc:ac9adde79751ab836d190bdfd4b778712"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a concrete initialized <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html" title="The base class for writers of memory ranges pointed to by MINIDUMP_MEMORY_DESCRIPTOR objects in a min...">MinidumpMemoryWriter</a> based on <em>memory_snapshot</em>. <a href="#ac9adde79751ab836d190bdfd4b778712">More...</a><br /></td></tr>
<tr class="separator:ac9adde79751ab836d190bdfd4b778712"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ac55ff51ef6aecf63614b6a9e974d34c5"><td class="memItemLeft" align="right" valign="top">virtual uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#ac55ff51ef6aecf63614b6a9e974d34c5">MemoryRangeBaseAddress</a> () const =0</td></tr>
<tr class="memdesc:ac55ff51ef6aecf63614b6a9e974d34c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the base address of the memory region in the address space of the process that the snapshot describes. <a href="#ac55ff51ef6aecf63614b6a9e974d34c5">More...</a><br /></td></tr>
<tr class="separator:ac55ff51ef6aecf63614b6a9e974d34c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5747ad90d9e9f4d6b2bc44231e677ea5"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#a5747ad90d9e9f4d6b2bc44231e677ea5">MemoryRangeSize</a> () const =0</td></tr>
<tr class="memdesc:a5747ad90d9e9f4d6b2bc44231e677ea5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of the memory region in bytes. <a href="#a5747ad90d9e9f4d6b2bc44231e677ea5">More...</a><br /></td></tr>
<tr class="separator:a5747ad90d9e9f4d6b2bc44231e677ea5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8997151abbd2f6c1b44b819fb00d0002"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#a8997151abbd2f6c1b44b819fb00d0002">Freeze</a> () override</td></tr>
<tr class="memdesc:a8997151abbd2f6c1b44b819fb00d0002"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transitions the object from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665" title="The objects properties can be modified. ">kStateMutable</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a>. <a href="#a8997151abbd2f6c1b44b819fb00d0002">More...</a><br /></td></tr>
<tr class="separator:a8997151abbd2f6c1b44b819fb00d0002"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a546a1702c89f5ad8ae62f42f33764f78"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#a546a1702c89f5ad8ae62f42f33764f78">SizeOfObject</a> () final</td></tr>
<tr class="memdesc:a546a1702c89f5ad8ae62f42f33764f78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the amount of space that this object will consume when written to a minidump file, in bytes, not including any leading or trailing padding necessary to maintain proper alignment. <a href="#a546a1702c89f5ad8ae62f42f33764f78">More...</a><br /></td></tr>
<tr class="separator:a546a1702c89f5ad8ae62f42f33764f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab77268e3451a9927716f42541e53c4d1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#ab77268e3451a9927716f42541e53c4d1">Alignment</a> () override</td></tr>
<tr class="memdesc:ab77268e3451a9927716f42541e53c4d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the objects desired byte-boundary alignment. <a href="#ab77268e3451a9927716f42541e53c4d1">More...</a><br /></td></tr>
<tr class="separator:ab77268e3451a9927716f42541e53c4d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adec74e1cb2d532422d8c1384049f7217"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#adec74e1cb2d532422d8c1384049f7217">WillWriteAtOffsetImpl</a> (<a class="el" href="namespacecrashpad.html#a1e53a1957d9edcba8b406ea632b6daf2">FileOffset</a> offset) override</td></tr>
<tr class="memdesc:adec74e1cb2d532422d8c1384049f7217"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called once an objects writable file offset is determined, as it transitions into <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a>. <a href="#adec74e1cb2d532422d8c1384049f7217">More...</a><br /></td></tr>
<tr class="separator:adec74e1cb2d532422d8c1384049f7217"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accab8e2d858dc5337c37acc2b13faf38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#accab8e2d858dc5337c37acc2b13faf38">WritePhase</a> () final</td></tr>
<tr class="memdesc:accab8e2d858dc5337c37acc2b13faf38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the objects desired write phase. <a href="#accab8e2d858dc5337c37acc2b13faf38">More...</a><br /></td></tr>
<tr class="separator:accab8e2d858dc5337c37acc2b13faf38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:a665d2de47970d796e904f0dfce406814 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a665d2de47970d796e904f0dfce406814"></a>
<a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">State</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a665d2de47970d796e904f0dfce406814">state</a> () const </td></tr>
<tr class="memdesc:a665d2de47970d796e904f0dfce406814 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">The state of the object. <br /></td></tr>
<tr class="separator:a665d2de47970d796e904f0dfce406814 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">MinidumpWritable</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a32460b7fe2154fbabc3c58bf10dc7861">Children</a> ()</td></tr>
<tr class="memdesc:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the objects children. <a href="#a32460b7fe2154fbabc3c58bf10dc7861">More...</a><br /></td></tr>
<tr class="separator:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a712fac2ada227f53c55eb0c4d042f239">WillWriteAtOffset</a> (<a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a> phase, <a class="el" href="namespacecrashpad.html#a1e53a1957d9edcba8b406ea632b6daf2">FileOffset</a> *offset, std::vector&lt; <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">MinidumpWritable</a> * &gt; *write_sequence)</td></tr>
<tr class="memdesc:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepares the object to be written at a known file offset, transitioning it from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a>. <a href="#a712fac2ada227f53c55eb0c4d042f239">More...</a><br /></td></tr>
<tr class="separator:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ab82b1e92ae0eced8b8e2efe957411773">WritePaddingAndObject</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer)</td></tr>
<tr class="memdesc:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the object, transitioning it from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af0d794ed29c320fcf35c71f40cc6a510" title="The object has been written to a minidump file. ">kStateWritten</a>. <a href="#ab82b1e92ae0eced8b8e2efe957411773">More...</a><br /></td></tr>
<tr class="separator:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d3472b11ec3c12184f5d8f946fbb4a1 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2d3472b11ec3c12184f5d8f946fbb4a1">WriteObject</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer)=0</td></tr>
<tr class="memdesc:a2d3472b11ec3c12184f5d8f946fbb4a1 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the objects content. <a href="#a2d3472b11ec3c12184f5d8f946fbb4a1">More...</a><br /></td></tr>
<tr class="separator:a2d3472b11ec3c12184f5d8f946fbb4a1 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_types_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Protected Types inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:ac14e05f291f5fa713b5ec82a208fa7c7 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">State</a> </td></tr>
<tr class="memdesc:ac14e05f291f5fa713b5ec82a208fa7c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies the state of an object. <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">More...</a><br /></td></tr>
<tr class="separator:ac14e05f291f5fa713b5ec82a208fa7c7 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009f007265d64a5fb416848480a00ae9 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a> </td></tr>
<tr class="memdesc:a009f007265d64a5fb416848480a00ae9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies the phase during which an object will be written to a minidump file. <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">More...</a><br /></td></tr>
<tr class="separator:a009f007265d64a5fb416848480a00ae9 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:ae7c01f317a519213ac16bfeca94125d1 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ae7c01f317a519213ac16bfeca94125d1">kInvalidSize</a></td></tr>
<tr class="memdesc:ae7c01f317a519213ac16bfeca94125d1 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">A size value used to signal failure by methods that return <code>size_t</code>. <a href="#ae7c01f317a519213ac16bfeca94125d1">More...</a><br /></td></tr>
<tr class="separator:ae7c01f317a519213ac16bfeca94125d1 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The base class for writers of memory ranges pointed to by <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html" title="A pointer to a snapshot of a region of memory contained within a minidump file. ">MINIDUMP_MEMORY_DESCRIPTOR</a> objects in a minidump file. </p>
<p>This is an abstract base class because users are expected to provide their own implementations that, when possible, obtain the memory contents on-demand in their <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2d3472b11ec3c12184f5d8f946fbb4a1" title="Writes the objects content. ">WriteObject()</a> methods. Memory ranges may be large, and the alternative construction would require the contents of multiple ranges to be held in memory simultaneously while a minidump file is being written. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ab77268e3451a9927716f42541e53c4d1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t crashpad::MinidumpMemoryWriter::Alignment </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the objects desired byte-boundary alignment. </p>
<p>Memory regions are aligned to a 16-byte boundary. The actual alignment requirements of any data within the memory region are unknown, and may be more or less strict than this depending on the platform.</p>
<dl class="section return"><dt>Returns</dt><dd><code>16</code>.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a> or any subsequent state. </dd></dl>
<p>Reimplemented from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#af4e92c46984eb73dbc1315ff5f4c7a9a">crashpad::internal::MinidumpWritable</a>.</p>
</div>
</div>
<a class="anchor" id="ac9adde79751ab836d190bdfd4b778712"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">scoped_ptr&lt; <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html">MinidumpMemoryWriter</a> &gt; crashpad::MinidumpMemoryWriter::CreateFromSnapshot </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> *&#160;</td>
<td class="paramname"><em>memory_snapshot</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a concrete initialized <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html" title="The base class for writers of memory ranges pointed to by MINIDUMP_MEMORY_DESCRIPTOR objects in a min...">MinidumpMemoryWriter</a> based on <em>memory_snapshot</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">memory_snapshot</td><td>The memory snapshot to use as source data.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>An object of a <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html" title="The base class for writers of memory ranges pointed to by MINIDUMP_MEMORY_DESCRIPTOR objects in a min...">MinidumpMemoryWriter</a> subclass initialized using the source data in <em>memory_snapshot</em>. </dd></dl>
</div>
</div>
<a class="anchor" id="a8997151abbd2f6c1b44b819fb00d0002"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool crashpad::MinidumpMemoryWriter::Freeze </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Transitions the object from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665" title="The objects properties can be modified. ">kStateMutable</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a>. </p>
<p>The default implementation marks the object as frozen and recursively calls <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#a8997151abbd2f6c1b44b819fb00d0002" title="Transitions the object from kStateMutable to kStateFrozen. ">Freeze()</a> on all of its children. Subclasses may override this method to perform processing that should only be done once callers have finished populating an object with data. Typically, a subclass implementation would call <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37" title="Registers a file offset pointer as one that should point to the object on which this method is called...">RegisterRVA()</a> or <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400" title="Registers a location descriptor as one that should point to the object on which this method is called...">RegisterLocationDescriptor()</a> on other objects as appropriate, because at the time <a class="el" href="classcrashpad_1_1MinidumpMemoryWriter.html#a8997151abbd2f6c1b44b819fb00d0002" title="Transitions the object from kStateMutable to kStateFrozen. ">Freeze()</a> runs, the in-memory locations of RVAs and location descriptors are known and will not change for the remaining duration of an objects lifetime.</p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success. <code>false</code> on failure, with an appropriate message logged. </dd></dl>
<p>Reimplemented from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a773db80946a99c6a3cc29c7d4dd77bd6">crashpad::internal::MinidumpWritable</a>.</p>
</div>
</div>
<a class="anchor" id="ac55ff51ef6aecf63614b6a9e974d34c5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual uint64_t crashpad::MinidumpMemoryWriter::MemoryRangeBaseAddress </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">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the base address of the memory region in the address space of the process that the snapshot describes. </p>
<dl class="section note"><dt>Note</dt><dd>This method will only be called in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a>. </dd></dl>
<p>Implemented in <a class="el" href="classcrashpad_1_1test_1_1TestMinidumpMemoryWriter.html#a31bb4a8af5c29b36e1897ded97f2fac5">crashpad::test::TestMinidumpMemoryWriter</a>.</p>
</div>
</div>
<a class="anchor" id="a5747ad90d9e9f4d6b2bc44231e677ea5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual size_t crashpad::MinidumpMemoryWriter::MemoryRangeSize </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">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the size of the memory region in bytes. </p>
<dl class="section note"><dt>Note</dt><dd>This method will only be called in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a> or a subsequent state. </dd></dl>
<p>Implemented in <a class="el" href="classcrashpad_1_1test_1_1TestMinidumpMemoryWriter.html#a26617ee61b232ea4099300bbbe1460e7">crashpad::test::TestMinidumpMemoryWriter</a>.</p>
</div>
</div>
<a class="anchor" id="aed2c11b4e81395533d93eb85a4563e18"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html">MINIDUMP_MEMORY_DESCRIPTOR</a> * crashpad::MinidumpMemoryWriter::MinidumpMemoryDescriptor </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html" title="A pointer to a snapshot of a region of memory contained within a minidump file. ">MINIDUMP_MEMORY_DESCRIPTOR</a> referencing the data that this object writes. </p>
<p>This method is expected to be called by a <a class="el" href="classcrashpad_1_1MinidumpMemoryListWriter.html" title="The writer for a MINIDUMP_MEMORY_LIST stream in a minidump file, containing a list of MINIDUMP_MEMORY...">MinidumpMemoryListWriter</a> in order to obtain a <a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html" title="A pointer to a snapshot of a region of memory contained within a minidump file. ">MINIDUMP_MEMORY_DESCRIPTOR</a> to include in its list.</p>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a>. </dd></dl>
</div>
</div>
<a class="anchor" id="aa770340c418ab7835a5c4a5a38f52e84"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::MinidumpMemoryWriter::RegisterMemoryDescriptor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structMINIDUMP__MEMORY__DESCRIPTOR.html">MINIDUMP_MEMORY_DESCRIPTOR</a> *&#160;</td>
<td class="paramname"><em>memory_descriptor</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Registers a memory descriptor as one that should point to the object on which this method is called. </p>
<p>This method is expected to be called by objects of other classes, when those other classes have their own memory descriptors that need to point to memory ranges within a minidump file. <a class="el" href="classcrashpad_1_1MinidumpThreadWriter.html" title="The writer for a MINIDUMP_THREAD object in a minidump file. ">MinidumpThreadWriter</a> is one such class. This method is public for this reason, otherwise it would suffice to be private.</p>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a> or any preceding state. </dd></dl>
</div>
</div>
<a class="anchor" id="a546a1702c89f5ad8ae62f42f33764f78"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t crashpad::MinidumpMemoryWriter::SizeOfObject </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">final</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the amount of space that this object will consume when written to a minidump file, in bytes, not including any leading or trailing padding necessary to maintain proper alignment. </p>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a> or any subsequent state. </dd></dl>
<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a1483275a3acbdfcecffb7f3c27cd2feb">crashpad::internal::MinidumpWritable</a>.</p>
</div>
</div>
<a class="anchor" id="adec74e1cb2d532422d8c1384049f7217"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool crashpad::MinidumpMemoryWriter::WillWriteAtOffsetImpl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacecrashpad.html#a1e53a1957d9edcba8b406ea632b6daf2">FileOffset</a>&#160;</td>
<td class="paramname"><em>offset</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called once an objects writable file offset is determined, as it transitions into <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a>. </p>
<p>Subclasses can override this method if they need to provide additional processing once their writable file offset is known. Typically, this will be done by subclasses that handle certain RVAs themselves instead of using the <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37" title="Registers a file offset pointer as one that should point to the object on which this method is called...">RegisterRVA()</a> interface.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>The file offset at which the object will be written. The value passed to this method will already have been adjusted to meet alignment requirements.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success. <code>false</code> on error, indicating that the minidump file should not be written.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”. ">kStateFrozen</a>. The object will transition to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable. ">kStateWritable</a> after this method returns. </dd></dl>
<p>Reimplemented from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2416cb821816b769d95b92e486713ebf">crashpad::internal::MinidumpWritable</a>.</p>
<p>Reimplemented in <a class="el" href="classcrashpad_1_1test_1_1TestMinidumpMemoryWriter.html#a3764ed18a98d9ea979a7f0494eb19bbf">crashpad::test::TestMinidumpMemoryWriter</a>.</p>
</div>
</div>
<a class="anchor" id="accab8e2d858dc5337c37acc2b13faf38"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">internal::MinidumpWritable::Phase</a> crashpad::MinidumpMemoryWriter::WritePhase </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">final</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the objects desired write phase. </p>
<p>Memory regions are written at the end of minidump files, because it is expected that unlike most other data in a minidump file, the contents of memory regions will be accessed sparsely.</p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9a24c2158c529d40ce6badca6e34b26853" title="Objects that are written to a minidump file “late”. ">kPhaseLate</a>.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Valid in any state. </dd></dl>
<p>Reimplemented from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a389b0ac1986698e80ebbc49198676ac7">crashpad::internal::MinidumpWritable</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>minidump/minidump_memory_writer.h</li>
<li>minidump/minidump_memory_writer.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.9.1
</small></address>
</body>
</html>