crashpad/doc/generated/doxygen/namespacecrashpad_1_1internal.html
2017-07-29 17:13:40 -04:00

854 lines
74 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::internal Namespace 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.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</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> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">crashpad::internal Namespace Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The internal namespace, not for public use.
<a href="#details">More...</a></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">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CaptureMemory.html">CaptureMemory</a></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_1internal_1_1CaptureMemoryDelegateWin.html">CaptureMemoryDelegateWin</a></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_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ensures that a range, composed of a base and a size, does not overflow the pointer type of the process it describes a range in. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.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_1internal_1_1ClientData.html">ClientData</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The context data for registered threadpool waits. <a href="classcrashpad_1_1internal_1_1ClientData.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_1internal_1_1ExceptionSnapshotMac.html">ExceptionSnapshotMac</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html" title="An abstract interface to a snapshot representing an exception that a snapshot process sustained and t...">ExceptionSnapshot</a> of an exception sustained by a running (or crashed) process on a macOS system. <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotMac.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_1internal_1_1ExceptionSnapshotWin.html">ExceptionSnapshotWin</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</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_1internal_1_1LocalAllocTraits.html">LocalAllocTraits</a></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_1internal_1_1MachOImageSymbolTableReaderInitializer.html">MachOImageSymbolTableReaderInitializer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The internal implementation for <a class="el" href="classcrashpad_1_1MachOImageSymbolTableReader.html" title="A reader for symbol tables in Mach-O images mapped into another process. ">MachOImageSymbolTableReader</a>. <a href="classcrashpad_1_1internal_1_1MachOImageSymbolTableReaderInitializer.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_1internal_1_1MemoryMapRegionSnapshotWin.html">MemoryMapRegionSnapshotWin</a></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_1internal_1_1MemorySnapshotLinux.html">MemorySnapshotLinux</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1MemorySnapshot.html" title="An abstract interface to a snapshot representing a region of memory present in a snapshot process...">MemorySnapshot</a> of a memory region in a process on the running system, when the system runs Linux. <a href="classcrashpad_1_1internal_1_1MemorySnapshotLinux.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_1internal_1_1MemorySnapshotMac.html">MemorySnapshotMac</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1MemorySnapshot.html" title="An abstract interface to a snapshot representing a region of memory present in a snapshot process...">MemorySnapshot</a> of a memory region in a process on the running system, when the system runs macOS. <a href="classcrashpad_1_1internal_1_1MemorySnapshotMac.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_1internal_1_1MemorySnapshotWin.html">MemorySnapshotWin</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1MemorySnapshot.html" title="An abstract interface to a snapshot representing a region of memory present in a snapshot process...">MemorySnapshot</a> of a memory region in a process on the running system, when the system runs Windows. <a href="classcrashpad_1_1internal_1_1MemorySnapshotWin.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_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html">MinidumpModuleCodeViewRecordPDBLinkWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class for writers of CodeView records that serve as links to <code>.pdb</code> (program database) files. <a href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.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_1internal_1_1MinidumpRVAListWriter.html">MinidumpRVAListWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The writer for a <a class="el" href="structcrashpad_1_1MinidumpRVAList.html" title="A list of RVA pointers. ">MinidumpRVAList</a> object in a minidump file, containing a list of <a class="el" href="dbghelp_8h.html#acf465a1a77ecf067a9d946583bc6a3f8" title="An offset within a minidump file, relative to the start of its MINIDUMP_HEADER. ">RVA</a> pointers. <a href="classcrashpad_1_1internal_1_1MinidumpRVAListWriter.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_1internal_1_1MinidumpStreamWriter.html">MinidumpStreamWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class for all second-level objects (“streams”) in a minidump file. <a href="classcrashpad_1_1internal_1_1MinidumpStreamWriter.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_1internal_1_1MinidumpStringListWriter.html">MinidumpStringListWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The writer for a <a class="el" href="structcrashpad_1_1MinidumpRVAList.html" title="A list of RVA pointers. ">MinidumpRVAList</a> object in a minidump file, containing a list of <em>MinidumpStringWriterType</em> objects. <a href="classcrashpad_1_1internal_1_1MinidumpStringListWriter.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_1internal_1_1MinidumpStringWriter.html">MinidumpStringWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a variable-length string to a minidump file in accordance with the string types characteristics. <a href="classcrashpad_1_1internal_1_1MinidumpStringWriter.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_1internal_1_1MinidumpUTF16StringWriter.html">MinidumpUTF16StringWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a variable-length UTF-16-encoded <a class="el" href="structMINIDUMP__STRING.html" title="A variable-length UTF-16-encoded string carried within a minidump file. ">MINIDUMP_STRING</a> to a minidump file. <a href="classcrashpad_1_1internal_1_1MinidumpUTF16StringWriter.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_1internal_1_1MinidumpUTF8StringWriter.html">MinidumpUTF8StringWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a variable-length UTF-8-encoded <a class="el" href="structcrashpad_1_1MinidumpUTF8String.html" title="A variable-length UTF-8-encoded string carried within a minidump file. ">MinidumpUTF8String</a> to a minidump file. <a href="classcrashpad_1_1internal_1_1MinidumpUTF8StringWriter.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_1internal_1_1MinidumpWritable.html">MinidumpWritable</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base class for all content that might be written to a minidump file. <a href="classcrashpad_1_1internal_1_1MinidumpWritable.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_1internal_1_1MinidumpWriterUtil.html">MinidumpWriterUtil</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A collection of utility functions used by the <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html" title="The base class for all content that might be written to a minidump file. ">MinidumpWritable</a> family of classes. <a href="classcrashpad_1_1internal_1_1MinidumpWriterUtil.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_1internal_1_1ModuleSnapshotMac.html">ModuleSnapshotMac</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ModuleSnapshot.html" title="An abstract interface to a snapshot representing a code module (binary image) loaded into a snapshot ...">ModuleSnapshot</a> of a code module (binary image) loaded into a running (or crashed) process on a macOS system. <a href="classcrashpad_1_1internal_1_1ModuleSnapshotMac.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_1internal_1_1ModuleSnapshotMinidump.html">ModuleSnapshotMinidump</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ModuleSnapshot.html" title="An abstract interface to a snapshot representing a code module (binary image) loaded into a snapshot ...">ModuleSnapshot</a> based on a module in a minidump file. <a href="classcrashpad_1_1internal_1_1ModuleSnapshotMinidump.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_1internal_1_1ModuleSnapshotWin.html">ModuleSnapshotWin</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ModuleSnapshot.html" title="An abstract interface to a snapshot representing a code module (binary image) loaded into a snapshot ...">ModuleSnapshot</a> of a code module (binary image) loaded into a running (or crashed) process on a Windows system. <a href="classcrashpad_1_1internal_1_1ModuleSnapshotWin.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_1internal_1_1PipeServiceContext.html">PipeServiceContext</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Context information for the named pipe handler threads. <a href="classcrashpad_1_1internal_1_1PipeServiceContext.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_1internal_1_1ReadExactlyInternal.html">ReadExactlyInternal</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The internal implementation of <a class="el" href="namespacecrashpad.html#a6e685af255d9b71fb46ed2679329dd7c" title="Wraps ReadFile(), retrying following a short read, ensuring that exactly size bytes are read...">ReadFileExactly()</a> and its wrappers. <a href="classcrashpad_1_1internal_1_1ReadExactlyInternal.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">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcrashpad_1_1internal_1_1ScopedDIRCloser.html">ScopedDIRCloser</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</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_1internal_1_1ScopedFileHANDLECloseTraits.html">ScopedFileHANDLECloseTraits</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</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_1internal_1_1ScopedKernelHANDLECloseTraits.html">ScopedKernelHANDLECloseTraits</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</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_1internal_1_1ScopedLockedFileHandleTraits.html">ScopedLockedFileHandleTraits</a></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_1internal_1_1SystemSnapshotMac.html">SystemSnapshotMac</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1SystemSnapshot.html" title="An abstract interface to a snapshot representing the state of a system, comprising an operating syste...">SystemSnapshot</a> of the running system, when the system runs macOS. <a href="classcrashpad_1_1internal_1_1SystemSnapshotMac.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_1internal_1_1SystemSnapshotWin.html">SystemSnapshotWin</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1SystemSnapshot.html" title="An abstract interface to a snapshot representing the state of a system, comprising an operating syste...">SystemSnapshot</a> of the running system, when the system runs Windows. <a href="classcrashpad_1_1internal_1_1SystemSnapshotWin.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_1internal_1_1ThreadSnapshotLinux.html">ThreadSnapshotLinux</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ThreadSnapshot.html" title="An abstract interface to a snapshot representing a thread (lightweight process) present in a snapshot...">ThreadSnapshot</a> of a thread on a Linux system. <a href="classcrashpad_1_1internal_1_1ThreadSnapshotLinux.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_1internal_1_1ThreadSnapshotMac.html">ThreadSnapshotMac</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ThreadSnapshot.html" title="An abstract interface to a snapshot representing a thread (lightweight process) present in a snapshot...">ThreadSnapshot</a> of a thread in a running (or crashed) process on a macOS system. <a href="classcrashpad_1_1internal_1_1ThreadSnapshotMac.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_1internal_1_1ThreadSnapshotWin.html">ThreadSnapshotWin</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classcrashpad_1_1ThreadSnapshot.html" title="An abstract interface to a snapshot representing a thread (lightweight process) present in a snapshot...">ThreadSnapshot</a> of a thread in a running (or crashed) process on a Windows system. <a href="classcrashpad_1_1internal_1_1ThreadSnapshotWin.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_1internal_1_1UniversalMachExcServerImpl.html">UniversalMachExcServerImpl</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</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_1internal_1_1UserDataMinidumpStreamListEntry.html">UserDataMinidumpStreamListEntry</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A linked list of blocks representing custom streams in the minidump, with addresses (and size) stored as uint64_t to simplify reading from the handler process. <a href="structcrashpad_1_1internal_1_1UserDataMinidumpStreamListEntry.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_1internal_1_1WorkerThreadImpl.html">WorkerThreadImpl</a></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_1internal_1_1WriteAllInternal.html">WriteAllInternal</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The internal implementation of <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a> and its wrappers. <a href="classcrashpad_1_1internal_1_1WriteAllInternal.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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a55cbb2f61a8a593e5861e0634eb7a4ee"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a55cbb2f61a8a593e5861e0634eb7a4ee">MinidumpMiscInfoDebugBuildString</a> ()</td></tr>
<tr class="memdesc:a55cbb2f61a8a593e5861e0634eb7a4ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the string to set in <a class="el" href="structMINIDUMP__MISC__INFO__4.html#a75b120e8a596ddc38c414a317da33132" title="The minidump producers “build string”, a string identifying the module that produced a minidump f...">MINIDUMP_MISC_INFO_4::DbgBldStr</a>. <a href="#a55cbb2f61a8a593e5861e0634eb7a4ee">More...</a><br /></td></tr>
<tr class="separator:a55cbb2f61a8a593e5861e0634eb7a4ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b476aa47305d2678612d890fd57f6bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a6b476aa47305d2678612d890fd57f6bd">InitializeCPUContextX86</a> (const <a class="el" href="structcrashpad_1_1ThreadContext_1_1t32__t.html">ThreadContext::t32_t</a> &amp;thread_context, const <a class="el" href="structcrashpad_1_1FloatContext_1_1f32__t.html">FloatContext::f32_t</a> &amp;float_context, <a class="el" href="structcrashpad_1_1CPUContextX86.html">CPUContextX86</a> *context)</td></tr>
<tr class="memdesc:a6b476aa47305d2678612d890fd57f6bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure from native context structures on Linux. <a href="#a6b476aa47305d2678612d890fd57f6bd">More...</a><br /></td></tr>
<tr class="separator:a6b476aa47305d2678612d890fd57f6bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96f536d00a24fee52d5e2045481981c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a96f536d00a24fee52d5e2045481981c5">InitializeCPUContextX86_64</a> (const <a class="el" href="structcrashpad_1_1ThreadContext_1_1t64__t.html">ThreadContext::t64_t</a> &amp;thread_context, const <a class="el" href="structcrashpad_1_1FloatContext_1_1f64__t.html">FloatContext::f64_t</a> &amp;float_context, <a class="el" href="structcrashpad_1_1CPUContextX86__64.html">CPUContextX86_64</a> *context)</td></tr>
<tr class="memdesc:a96f536d00a24fee52d5e2045481981c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure from native context structures on Linux. <a href="#a96f536d00a24fee52d5e2045481981c5">More...</a><br /></td></tr>
<tr class="separator:a96f536d00a24fee52d5e2045481981c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5bd580ef499998bcd94b4d28f252177"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#ad5bd580ef499998bcd94b4d28f252177">InitializeCPUContextX86</a> (<a class="el" href="structcrashpad_1_1CPUContextX86.html">CPUContextX86</a> *context, thread_state_flavor_t flavor, <a class="el" href="namespacecrashpad.html#a72fa9ea632f7f1ec93ec3c1b1d300db6">ConstThreadState</a> state, mach_msg_type_number_t state_count, const x86_thread_state32_t *x86_thread_state32, const x86_float_state32_t *x86_float_state32, const x86_debug_state32_t *x86_debug_state32)</td></tr>
<tr class="memdesc:ad5bd580ef499998bcd94b4d28f252177"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure from native context structures on macOS. <a href="#ad5bd580ef499998bcd94b4d28f252177">More...</a><br /></td></tr>
<tr class="separator:ad5bd580ef499998bcd94b4d28f252177"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a806b669802cbd5edc81d1dfa66abe38b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a806b669802cbd5edc81d1dfa66abe38b">InitializeCPUContextX86_64</a> (<a class="el" href="structcrashpad_1_1CPUContextX86__64.html">CPUContextX86_64</a> *context, thread_state_flavor_t flavor, <a class="el" href="namespacecrashpad.html#a72fa9ea632f7f1ec93ec3c1b1d300db6">ConstThreadState</a> state, mach_msg_type_number_t state_count, const x86_thread_state64_t *x86_thread_state64, const x86_float_state64_t *x86_float_state64, const x86_debug_state64_t *x86_debug_state64)</td></tr>
<tr class="memdesc:a806b669802cbd5edc81d1dfa66abe38b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure from native context structures on macOS. <a href="#a806b669802cbd5edc81d1dfa66abe38b">More...</a><br /></td></tr>
<tr class="separator:a806b669802cbd5edc81d1dfa66abe38b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9b358d36faf271ec17d7e9a829610a9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#aa9b358d36faf271ec17d7e9a829610a9">ReadMinidumpSimpleStringDictionary</a> (<a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *file_reader, const <a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> &amp;location, std::map&lt; std::string, std::string &gt; *dictionary)</td></tr>
<tr class="memdesc:aa9b358d36faf271ec17d7e9a829610a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a <a class="el" href="structcrashpad_1_1MinidumpSimpleStringDictionary.html" title="A list of key-value pairs. ">MinidumpSimpleStringDictionary</a> from a minidump file <em>location</em> in <em>file_reader</em>, and returns it in <em>dictionary</em>. <a href="#aa9b358d36faf271ec17d7e9a829610a9">More...</a><br /></td></tr>
<tr class="separator:aa9b358d36faf271ec17d7e9a829610a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afac4436aa35c86be47e56179a51662ca"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#afac4436aa35c86be47e56179a51662ca">ReadMinidumpStringList</a> (<a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *file_reader, const <a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> &amp;location, std::vector&lt; std::string &gt; *list)</td></tr>
<tr class="memdesc:afac4436aa35c86be47e56179a51662ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a list of <a class="el" href="structcrashpad_1_1MinidumpUTF8String.html" title="A variable-length UTF-8-encoded string carried within a minidump file. ">MinidumpUTF8String</a> objects in a <a class="el" href="structcrashpad_1_1MinidumpRVAList.html" title="A list of RVA pointers. ">MinidumpRVAList</a> from a minidump file <em>location</em> in <em>file_reader</em>, and returns it in <em>list</em>. <a href="#afac4436aa35c86be47e56179a51662ca">More...</a><br /></td></tr>
<tr class="separator:afac4436aa35c86be47e56179a51662ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a769d4791b91e4fffea817ad2e9dda54b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a769d4791b91e4fffea817ad2e9dda54b">ReadMinidumpUTF8String</a> (<a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *file_reader, <a class="el" href="dbghelp_8h.html#acf465a1a77ecf067a9d946583bc6a3f8">RVA</a> rva, std::string *string)</td></tr>
<tr class="memdesc:a769d4791b91e4fffea817ad2e9dda54b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a <a class="el" href="structcrashpad_1_1MinidumpUTF8String.html" title="A variable-length UTF-8-encoded string carried within a minidump file. ">MinidumpUTF8String</a> from a minidump file at offset <em>rva</em> in <em>file_reader</em>, and returns it in <em>string</em>. <a href="#a769d4791b91e4fffea817ad2e9dda54b">More...</a><br /></td></tr>
<tr class="separator:a769d4791b91e4fffea817ad2e9dda54b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7292eaf3187362eada8aafa56951aacd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacecrashpad.html#a25465a3a2d289a06addf93c346c6f917">FileOperationResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a7292eaf3187362eada8aafa56951aacd">NativeWriteFile</a> (<a class="el" href="namespacecrashpad.html#a07f8e33c4fdeba3783277f9f2563e48a">FileHandle</a> file, const void *buffer, size_t size)</td></tr>
<tr class="memdesc:a7292eaf3187362eada8aafa56951aacd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes to a file, retrying when interrupted on POSIX. <a href="#a7292eaf3187362eada8aafa56951aacd">More...</a><br /></td></tr>
<tr class="separator:a7292eaf3187362eada8aafa56951aacd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a7df2be061e3ff4811fff22fbcb158e"><td class="memItemLeft" align="right" valign="top"><a id="a2a7df2be061e3ff4811fff22fbcb158e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>ReinterpretBytesImpl</b> (const char *data, size_t data_size, char *dest, size_t dest_size)</td></tr>
<tr class="separator:a2a7df2be061e3ff4811fff22fbcb158e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009fda01516a2f6e3bec94db18c60a27"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a009fda01516a2f6e3bec94db18c60a27">AlignedAllocate</a> (size_t alignment, size_t size)</td></tr>
<tr class="memdesc:a009fda01516a2f6e3bec94db18c60a27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates memory with the specified alignment constraint. <a href="#a009fda01516a2f6e3bec94db18c60a27">More...</a><br /></td></tr>
<tr class="separator:a009fda01516a2f6e3bec94db18c60a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a248fec963c49d172027231280c27fc60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a248fec963c49d172027231280c27fc60">AlignedFree</a> (void *pointer)</td></tr>
<tr class="memdesc:a248fec963c49d172027231280c27fc60"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees memory allocated by <a class="el" href="namespacecrashpad_1_1internal.html#a009fda01516a2f6e3bec94db18c60a27" title="Allocates memory with the specified alignment constraint. ">AlignedAllocate()</a>. <a href="#a248fec963c49d172027231280c27fc60">More...</a><br /></td></tr>
<tr class="separator:a248fec963c49d172027231280c27fc60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa982a8cad0e72cddf1989d135db3c338"><td class="memItemLeft" align="right" valign="top">FARPROC&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#aa982a8cad0e72cddf1989d135db3c338">GetFunctionInternal</a> (const wchar_t *library, const char *function, bool required)</td></tr>
<tr class="memdesc:aa982a8cad0e72cddf1989d135db3c338"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a function pointer to a named function in a library. <a href="#aa982a8cad0e72cddf1989d135db3c338">More...</a><br /></td></tr>
<tr class="separator:aa982a8cad0e72cddf1989d135db3c338"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a334a660002ce6e6f06432ccf7d3cc50f"><td class="memTemplParams" colspan="2">template&lt;typename FunctionType &gt; </td></tr>
<tr class="memitem:a334a660002ce6e6f06432ccf7d3cc50f"><td class="memTemplItemLeft" align="right" valign="top">FunctionType *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a334a660002ce6e6f06432ccf7d3cc50f">GetFunction</a> (const wchar_t *library, const char *function, bool required)</td></tr>
<tr class="memdesc:a334a660002ce6e6f06432ccf7d3cc50f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a function pointer to a named function in a library. <a href="#a334a660002ce6e6f06432ccf7d3cc50f">More...</a><br /></td></tr>
<tr class="separator:a334a660002ce6e6f06432ccf7d3cc50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:ad721931863942c751ca4852cb2f0112e"><td class="memItemLeft" align="right" valign="top">constexpr char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#ad721931863942c751ca4852cb2f0112e">kNativeReadFunctionName</a> [] = &quot;read&quot;</td></tr>
<tr class="memdesc:ad721931863942c751ca4852cb2f0112e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The name of the native read function used by <a class="el" href="namespacecrashpad.html#a8599600814a17d622766decd5f122a96" title="Reads from a file, retrying when interrupted before reading any data on POSIX. ">ReadFile()</a>. <a href="#ad721931863942c751ca4852cb2f0112e">More...</a><br /></td></tr>
<tr class="separator:ad721931863942c751ca4852cb2f0112e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e88f1d108a5961424fa705b4284e6af"><td class="memItemLeft" align="right" valign="top">constexpr char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecrashpad_1_1internal.html#a3e88f1d108a5961424fa705b4284e6af">kNativeWriteFunctionName</a> [] = &quot;write&quot;</td></tr>
<tr class="memdesc:a3e88f1d108a5961424fa705b4284e6af"><td class="mdescLeft">&#160;</td><td class="mdescRight">The name of the native write function used by <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a>. <a href="#a3e88f1d108a5961424fa705b4284e6af">More...</a><br /></td></tr>
<tr class="separator:a3e88f1d108a5961424fa705b4284e6af"><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 internal namespace, not for public use. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a009fda01516a2f6e3bec94db18c60a27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a009fda01516a2f6e3bec94db18c60a27">&#9670;&nbsp;</a></span>AlignedAllocate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void * crashpad::internal::AlignedAllocate </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>alignment</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>
</div><div class="memdoc">
<p>Allocates memory with the specified alignment constraint. </p>
<p>This function wraps <code>posix_memalign()</code> or <code>_aligned_malloc()</code>. Memory allocated by this function must be released by AlignFree(). </p>
</div>
</div>
<a id="a248fec963c49d172027231280c27fc60"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a248fec963c49d172027231280c27fc60">&#9670;&nbsp;</a></span>AlignedFree()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::internal::AlignedFree </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>pointer</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Frees memory allocated by <a class="el" href="namespacecrashpad_1_1internal.html#a009fda01516a2f6e3bec94db18c60a27" title="Allocates memory with the specified alignment constraint. ">AlignedAllocate()</a>. </p>
<p>This function wraps <code>free()</code> or <code>_aligned_free()</code>. </p>
</div>
</div>
<a id="a334a660002ce6e6f06432ccf7d3cc50f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a334a660002ce6e6f06432ccf7d3cc50f">&#9670;&nbsp;</a></span>GetFunction()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename FunctionType &gt; </div>
<table class="memname">
<tr>
<td class="memname">FunctionType* crashpad::internal::GetFunction </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>library</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>function</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>required</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a function pointer to a named function in a library. </p>
<p>Do not call this directly, use the <a class="el" href="get__function_8h.html#a0997574e7522725516242d78632ed686" title="Returns a function pointer to a named function in a library without requiring that it be found...">GET_FUNCTION()</a> or <a class="el" href="get__function_8h.html#ae87bc4c8800c7e6f35c06bf48cb636f3" title="Returns a function pointer to a named function in a library, requiring that it be found...">GET_FUNCTION_REQUIRED()</a> macros instead.</p>
<p>This accesses <em>library</em> by calling <code>LoadLibrary()</code> and is subject to the same restrictions as that function. Notably, it cant be used from a <code>DllMain()</code> entry point.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">library</td><td>The library to search in. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>The function to search for. If a leading <code>::</code> is present, it will be stripped. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">required</td><td>If <code>true</code>, require the function to resolve by <code>DCHECK</code>.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the requested function on success. If <em>required</em> is <code>true</code>, triggers a <code>DCHECK</code> assertion on failure, otherwise, <code>nullptr</code> on failure. </dd></dl>
</div>
</div>
<a id="aa982a8cad0e72cddf1989d135db3c338"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa982a8cad0e72cddf1989d135db3c338">&#9670;&nbsp;</a></span>GetFunctionInternal()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">FARPROC crashpad::internal::GetFunctionInternal </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>library</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>function</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>required</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a function pointer to a named function in a library. </p>
<p>Do not call this directly, use the <a class="el" href="get__function_8h.html#a0997574e7522725516242d78632ed686" title="Returns a function pointer to a named function in a library without requiring that it be found...">GET_FUNCTION()</a> or <a class="el" href="get__function_8h.html#ae87bc4c8800c7e6f35c06bf48cb636f3" title="Returns a function pointer to a named function in a library, requiring that it be found...">GET_FUNCTION_REQUIRED()</a> macros instead.</p>
<p>This accesses <em>library</em> by calling <code>LoadLibrary()</code> and is subject to the same restrictions as that function. Notably, it cant be used from a <code>DllMain()</code> entry point.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">library</td><td>The library to search in. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>The function to search for. If a leading <code>::</code> is present, it will be stripped. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">required</td><td>If <code>true</code>, require the function to resolve by <code>DCHECK</code>.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the requested function on success. If <em>required</em> is <code>true</code>, triggers a <code>DCHECK</code> assertion on failure, otherwise, <code>nullptr</code> on failure. </dd></dl>
</div>
</div>
<a id="a6b476aa47305d2678612d890fd57f6bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b476aa47305d2678612d890fd57f6bd">&#9670;&nbsp;</a></span>InitializeCPUContextX86() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::internal::InitializeCPUContextX86 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structcrashpad_1_1ThreadContext_1_1t32__t.html">ThreadContext::t32_t</a> &amp;&#160;</td>
<td class="paramname"><em>thread_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structcrashpad_1_1FloatContext_1_1f32__t.html">FloatContext::f32_t</a> &amp;&#160;</td>
<td class="paramname"><em>float_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcrashpad_1_1CPUContextX86.html">CPUContextX86</a> *&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure from native context structures on Linux. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">thread_context</td><td>The native thread context. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">float_context</td><td>The native float context. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">context</td><td>The <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure to initialize. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad5bd580ef499998bcd94b4d28f252177"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5bd580ef499998bcd94b4d28f252177">&#9670;&nbsp;</a></span>InitializeCPUContextX86() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::internal::InitializeCPUContextX86 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcrashpad_1_1CPUContextX86.html">CPUContextX86</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">thread_state_flavor_t&#160;</td>
<td class="paramname"><em>flavor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacecrashpad.html#a72fa9ea632f7f1ec93ec3c1b1d300db6">ConstThreadState</a>&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">mach_msg_type_number_t&#160;</td>
<td class="paramname"><em>state_count</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_thread_state32_t *&#160;</td>
<td class="paramname"><em>x86_thread_state32</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_float_state32_t *&#160;</td>
<td class="paramname"><em>x86_float_state32</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_debug_state32_t *&#160;</td>
<td class="paramname"><em>x86_debug_state32</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure from native context structures on macOS. </p>
<p><em>flavor</em>, <em>state</em>, and <em>state_count</em> may be supplied by exception handlers in order for the <em>context</em> parameter to be initialized by the thread state received by the exception handler to the extent possible. In that case, whatever thread state specified by these three parameters will supersede <em>x86_thread_state32</em>, <em>x86_float_state32</em>, or <em>x86_debug_state32</em>. If thread state in this format is not available, <em>flavor</em> may be set to <code>THREAD_STATE_NONE</code>, and all of <em>x86_thread_state32</em>, <em>x86_float_state32</em>, and <em>x86_debug_state32</em> will be honored.</p>
<p>If <em>flavor</em>, <em>state</em>, and <em>state_count</em> are provided but do not contain valid values, a message will be logged and their values will be ignored as though <em>flavor</em> were specified as <code>THREAD_STATE_NONE</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">context</td><td>The <a class="el" href="structcrashpad_1_1CPUContextX86.html" title="A context structure carrying 32-bit x86 CPU state. ">CPUContextX86</a> structure to initialize. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">flavor</td><td>The native thread state flavor of <em>state</em>. This may be <code>x86_THREAD_STATE32</code>, <code>x86_FLOAT_STATE32</code>, <code>x86_DEBUG_STATE32</code>, <code>x86_THREAD_STATE</code>, <code>x86_FLOAT_STATE</code>, or <code>x86_DEBUG_STATE</code>. It may also be <code>THREAD_STATE_NONE</code> if <em>state</em> is not supplied (and is <code>nullptr</code>). </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The native thread state, which may be a casted pointer to <code>x86_thread_state32_t</code>, <code>x86_float_state32_t</code>, <code>x86_debug_state32_t</code>, <code>x86_thread_state</code>, <code>x86_float_state</code>, or <code>x86_debug_state</code>. This parameter may be <code>nullptr</code> to not supply this data, in which case <em>flavor</em> must be <code>THREAD_STATE_NONE</code>. If a “universal” structure is used, it must carry 32-bit state data of the correct type. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">state_count</td><td>The number of <code>natural_t</code>-sized (<code>int</code>-sized) units in <em>state</em>. This may be 0 if <em>state</em> is <code>nullptr</code>. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_thread_state32</td><td>The state of the threads integer registers. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_float_state32</td><td>The state of the threads floating-point registers. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_debug_state32</td><td>The state of the threads debug registers. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a96f536d00a24fee52d5e2045481981c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96f536d00a24fee52d5e2045481981c5">&#9670;&nbsp;</a></span>InitializeCPUContextX86_64() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::internal::InitializeCPUContextX86_64 </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structcrashpad_1_1ThreadContext_1_1t64__t.html">ThreadContext::t64_t</a> &amp;&#160;</td>
<td class="paramname"><em>thread_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structcrashpad_1_1FloatContext_1_1f64__t.html">FloatContext::f64_t</a> &amp;&#160;</td>
<td class="paramname"><em>float_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcrashpad_1_1CPUContextX86__64.html">CPUContextX86_64</a> *&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure from native context structures on Linux. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">thread_context</td><td>The native thread context. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">float_context</td><td>The native float context. </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">context</td><td>The <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure to initialize. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a806b669802cbd5edc81d1dfa66abe38b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a806b669802cbd5edc81d1dfa66abe38b">&#9670;&nbsp;</a></span>InitializeCPUContextX86_64() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void crashpad::internal::InitializeCPUContextX86_64 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structcrashpad_1_1CPUContextX86__64.html">CPUContextX86_64</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">thread_state_flavor_t&#160;</td>
<td class="paramname"><em>flavor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespacecrashpad.html#a72fa9ea632f7f1ec93ec3c1b1d300db6">ConstThreadState</a>&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">mach_msg_type_number_t&#160;</td>
<td class="paramname"><em>state_count</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_thread_state64_t *&#160;</td>
<td class="paramname"><em>x86_thread_state64</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_float_state64_t *&#160;</td>
<td class="paramname"><em>x86_float_state64</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const x86_debug_state64_t *&#160;</td>
<td class="paramname"><em>x86_debug_state64</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure from native context structures on macOS. </p>
<p><em>flavor</em>, <em>state</em>, and <em>state_count</em> may be supplied by exception handlers in order for the <em>context</em> parameter to be initialized by the thread state received by the exception handler to the extent possible. In that case, whatever thread state specified by these three parameters will supersede <em>x86_thread_state64</em>, <em>x86_float_state64</em>, or <em>x86_debug_state64</em>. If thread state in this format is not available, <em>flavor</em> may be set to <code>THREAD_STATE_NONE</code>, and all of <em>x86_thread_state64</em>, <em>x86_float_state64</em>, and <em>x86_debug_state64</em> will be honored.</p>
<p>If <em>flavor</em>, <em>state</em>, and <em>state_count</em> are provided but do not contain valid values, a message will be logged and their values will be ignored as though <em>flavor</em> were specified as <code>THREAD_STATE_NONE</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">context</td><td>The <a class="el" href="structcrashpad_1_1CPUContextX86__64.html" title="A context structure carrying x86_64 CPU state. ">CPUContextX86_64</a> structure to initialize. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">flavor</td><td>The native thread state flavor of <em>state</em>. This may be <code>x86_THREAD_STATE64</code>, <code>x86_FLOAT_STATE64</code>, <code>x86_DEBUG_STATE64</code>, <code>x86_THREAD_STATE</code>, <code>x86_FLOAT_STATE</code>, or <code>x86_DEBUG_STATE</code>. It may also be <code>THREAD_STATE_NONE</code> if <em>state</em> is not supplied (and is <code>nullptr</code>). </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The native thread state, which may be a casted pointer to <code>x86_thread_state64_t</code>, <code>x86_float_state64_t</code>, <code>x86_debug_state64_t</code>, <code>x86_thread_state</code>, <code>x86_float_state</code>, or <code>x86_debug_state</code>. This parameter may be <code>nullptr</code> to not supply this data, in which case <em>flavor</em> must be <code>THREAD_STATE_NONE</code>. If a “universal” structure is used, it must carry 64-bit state data of the correct type. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">state_count</td><td>The number of <code>int</code>-sized units in <em>state</em>. This may be 0 if <em>state</em> is <code>nullptr</code>. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_thread_state64</td><td>The state of the threads integer registers. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_float_state64</td><td>The state of the threads floating-point registers. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">x86_debug_state64</td><td>The state of the threads debug registers. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a55cbb2f61a8a593e5861e0634eb7a4ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a55cbb2f61a8a593e5861e0634eb7a4ee">&#9670;&nbsp;</a></span>MinidumpMiscInfoDebugBuildString()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string crashpad::internal::MinidumpMiscInfoDebugBuildString </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the string to set in <a class="el" href="structMINIDUMP__MISC__INFO__4.html#a75b120e8a596ddc38c414a317da33132" title="The minidump producers “build string”, a string identifying the module that produced a minidump f...">MINIDUMP_MISC_INFO_4::DbgBldStr</a>. </p>
<p>dbghelp produces strings like <code>"dbghelp.i386,6.3.9600.16520"</code> and <code>"dbghelp.amd64,6.3.9600.16520"</code>. This function mimics that format, and adds the OS that wrote the minidump along with any relevant platform-specific data describing the compilation environment.</p>
<p>This function is an implementation detail of <a class="el" href="classcrashpad_1_1MinidumpMiscInfoWriter.html#a25ccb6770c07d55f1d1756d04a9d42e9" title="Initializes MINIDUMP_MISC_INFO_N based on process_snapshot. ">MinidumpMiscInfoWriter::InitializeFromSnapshot()</a> and is only exposed for testing purposes. </p>
</div>
</div>
<a id="a7292eaf3187362eada8aafa56951aacd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7292eaf3187362eada8aafa56951aacd">&#9670;&nbsp;</a></span>NativeWriteFile()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacecrashpad.html#a25465a3a2d289a06addf93c346c6f917">FileOperationResult</a> crashpad::internal::NativeWriteFile </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacecrashpad.html#a07f8e33c4fdeba3783277f9f2563e48a">FileHandle</a>&#160;</td>
<td class="paramname"><em>file</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void *&#160;</td>
<td class="paramname"><em>buffer</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>
</div><div class="memdoc">
<p>Writes to a file, retrying when interrupted on POSIX. </p>
<p>Fewer than <em>size</em> bytes may be written to <em>file</em>. This can happen if the underlying write operation returns before writing the entire buffer, or if the buffer is too large to write in a single operation, possibly due to a limitation of a data type used to express the number of bytes written.</p>
<p>This function adapts native write operations for uniform use by <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a>. This function should only be called by <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a>. Other code should call <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a> or another function that wraps <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>The file to write to. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buffer</td><td>A buffer containing data to be written. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The number of bytes from <em>buffer</em> to write.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of bytes actually written from <em>buffer</em> to <em>file</em> on success. <code>-1</code> on error, with <code>errno</code> or <code>GetLastError()</code> set appropriately. </dd></dl>
</div>
</div>
<a id="aa9b358d36faf271ec17d7e9a829610a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9b358d36faf271ec17d7e9a829610a9">&#9670;&nbsp;</a></span>ReadMinidumpSimpleStringDictionary()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool crashpad::internal::ReadMinidumpSimpleStringDictionary </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *&#160;</td>
<td class="paramname"><em>file_reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> &amp;&#160;</td>
<td class="paramname"><em>location</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::map&lt; std::string, std::string &gt; *&#160;</td>
<td class="paramname"><em>dictionary</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a <a class="el" href="structcrashpad_1_1MinidumpSimpleStringDictionary.html" title="A list of key-value pairs. ">MinidumpSimpleStringDictionary</a> from a minidump file <em>location</em> in <em>file_reader</em>, and returns it in <em>dictionary</em>. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success, with <em>dictionary</em> set by replacing its contents. <code>false</code> on failure, with a message logged. </dd></dl>
</div>
</div>
<a id="afac4436aa35c86be47e56179a51662ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afac4436aa35c86be47e56179a51662ca">&#9670;&nbsp;</a></span>ReadMinidumpStringList()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool crashpad::internal::ReadMinidumpStringList </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *&#160;</td>
<td class="paramname"><em>file_reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> &amp;&#160;</td>
<td class="paramname"><em>location</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::vector&lt; std::string &gt; *&#160;</td>
<td class="paramname"><em>list</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a list of <a class="el" href="structcrashpad_1_1MinidumpUTF8String.html" title="A variable-length UTF-8-encoded string carried within a minidump file. ">MinidumpUTF8String</a> objects in a <a class="el" href="structcrashpad_1_1MinidumpRVAList.html" title="A list of RVA pointers. ">MinidumpRVAList</a> from a minidump file <em>location</em> in <em>file_reader</em>, and returns it in <em>list</em>. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success, with <em>list</em> set by replacing its contents. <code>false</code> on failure, with a message logged. </dd></dl>
</div>
</div>
<a id="a769d4791b91e4fffea817ad2e9dda54b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a769d4791b91e4fffea817ad2e9dda54b">&#9670;&nbsp;</a></span>ReadMinidumpUTF8String()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool crashpad::internal::ReadMinidumpUTF8String </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classcrashpad_1_1FileReaderInterface.html">FileReaderInterface</a> *&#160;</td>
<td class="paramname"><em>file_reader</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="dbghelp_8h.html#acf465a1a77ecf067a9d946583bc6a3f8">RVA</a>&#160;</td>
<td class="paramname"><em>rva</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string *&#160;</td>
<td class="paramname"><em>string</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a <a class="el" href="structcrashpad_1_1MinidumpUTF8String.html" title="A variable-length UTF-8-encoded string carried within a minidump file. ">MinidumpUTF8String</a> from a minidump file at offset <em>rva</em> in <em>file_reader</em>, and returns it in <em>string</em>. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success, with <em>string</em> set. <code>false</code> on failure, with a message logged. </dd></dl>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="ad721931863942c751ca4852cb2f0112e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad721931863942c751ca4852cb2f0112e">&#9670;&nbsp;</a></span>kNativeReadFunctionName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">constexpr char crashpad::internal::kNativeReadFunctionName[] = &quot;read&quot;</td>
</tr>
</table>
</div><div class="memdoc">
<p>The name of the native read function used by <a class="el" href="namespacecrashpad.html#a8599600814a17d622766decd5f122a96" title="Reads from a file, retrying when interrupted before reading any data on POSIX. ">ReadFile()</a>. </p>
<p>This value may be useful for logging.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="namespacecrashpad_1_1internal.html#a3e88f1d108a5961424fa705b4284e6af" title="The name of the native write function used by WriteFile(). ">kNativeWriteFunctionName</a> </dd></dl>
</div>
</div>
<a id="a3e88f1d108a5961424fa705b4284e6af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e88f1d108a5961424fa705b4284e6af">&#9670;&nbsp;</a></span>kNativeWriteFunctionName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">constexpr char crashpad::internal::kNativeWriteFunctionName[] = &quot;write&quot;</td>
</tr>
</table>
</div><div class="memdoc">
<p>The name of the native write function used by <a class="el" href="namespacecrashpad.html#ada530c306bf30e9ed9274c20d05c0db4" title="Writes to a file, retrying when interrupted on POSIX or following a short write. ">WriteFile()</a>. </p>
<p>This value may be useful for logging.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="namespacecrashpad_1_1internal.html#ad721931863942c751ca4852cb2f0112e" title="The name of the native read function used by ReadFile(). ">kNativeReadFunctionName</a> </dd></dl>
</div>
</div>
</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.13
</small></address>
</body>
</html>