blob: 7cd08598bd2331eef6f9fbbb50884ba5c22b1779 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::test::TestThreadSnapshot Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Crashpad
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="namespacecrashpad_1_1test.html">test</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html">TestThreadSnapshot</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcrashpad_1_1test_1_1TestThreadSnapshot-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">crashpad::test::TestThreadSnapshot Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>A test <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> that can carry arbitrary data for testing purposes.
<a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#details">More...</a></p>
<p><code>#include &quot;snapshot/test/test_thread_snapshot.h&quot;</code></p>
<div class="dynheader">
Inheritance diagram for crashpad::test::TestThreadSnapshot:</div>
<div class="dyncontent">
<div class="center">
<img src="classcrashpad_1_1test_1_1TestThreadSnapshot.png" usemap="#crashpad::test::TestThreadSnapshot_map" alt=""/>
<map id="crashpad::test::TestThreadSnapshot_map" name="crashpad::test::TestThreadSnapshot_map">
<area href="classcrashpad_1_1ThreadSnapshot.html" title="An abstract interface to a snapshot representing a thread (lightweight process) present in a snapshot..." alt="crashpad::ThreadSnapshot" shape="rect" coords="0,0,211,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9703c478f207a285d732821be657b50f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcrashpad_1_1CPUContext.html">CPUContext</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a9703c478f207a285d732821be657b50f">MutableContext</a> ()</td></tr>
<tr class="memdesc:a9703c478f207a285d732821be657b50f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Obtains a pointer to the underlying mutable <a class="el" href="structcrashpad_1_1CPUContext.html" title="A context structure capable of carrying the context of any supported CPU architecture.">CPUContext</a> structure. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a9703c478f207a285d732821be657b50f">More...</a><br /></td></tr>
<tr class="separator:a9703c478f207a285d732821be657b50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1db1c6ce49c283e763c666c3fbf5964a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a1db1c6ce49c283e763c666c3fbf5964a">SetStack</a> (std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> &gt; stack)</td></tr>
<tr class="memdesc:a1db1c6ce49c283e763c666c3fbf5964a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the memory region to be returned by <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a47ec986683a5aed362ecba9f092c61bf" title="Returns a MemorySnapshot object corresponding to the memory region that contains the thread’s stack,...">Stack()</a>. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a1db1c6ce49c283e763c666c3fbf5964a">More...</a><br /></td></tr>
<tr class="separator:a1db1c6ce49c283e763c666c3fbf5964a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48b9e147c9ba09029e71e58b9ebdb365"><td class="memItemLeft" align="right" valign="top"><a id="a48b9e147c9ba09029e71e58b9ebdb365"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetThreadID</b> (uint64_t thread_id)</td></tr>
<tr class="separator:a48b9e147c9ba09029e71e58b9ebdb365"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76cd67665e5079c61ec0ca3bda5b3a18"><td class="memItemLeft" align="right" valign="top"><a id="a76cd67665e5079c61ec0ca3bda5b3a18"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetSuspendCount</b> (int suspend_count)</td></tr>
<tr class="separator:a76cd67665e5079c61ec0ca3bda5b3a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc68f98773129dfa0d088401c90c8d5c"><td class="memItemLeft" align="right" valign="top"><a id="afc68f98773129dfa0d088401c90c8d5c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetPriority</b> (int priority)</td></tr>
<tr class="separator:afc68f98773129dfa0d088401c90c8d5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25c8c3ef70b9b6e6c25a648333867aef"><td class="memItemLeft" align="right" valign="top"><a id="a25c8c3ef70b9b6e6c25a648333867aef"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>SetThreadSpecificDataAddress</b> (uint64_t thread_specific_data_address)</td></tr>
<tr class="separator:a25c8c3ef70b9b6e6c25a648333867aef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a645715913a5fe095cba580836647ff0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a645715913a5fe095cba580836647ff0a">AddExtraMemory</a> (std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> &gt; extra_memory)</td></tr>
<tr class="memdesc:a645715913a5fe095cba580836647ff0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a memory snapshot to be returned by <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#af49ca1418d7436492c49949f2fc73a31" title="Returns a vector of additional memory blocks that should be included in a minidump.">ExtraMemory()</a>. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a645715913a5fe095cba580836647ff0a">More...</a><br /></td></tr>
<tr class="separator:a645715913a5fe095cba580836647ff0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e5256fb87404928874cec4732cfb1df"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structcrashpad_1_1CPUContext.html">CPUContext</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a3e5256fb87404928874cec4732cfb1df">Context</a> () const override</td></tr>
<tr class="memdesc:a3e5256fb87404928874cec4732cfb1df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <a class="el" href="structcrashpad_1_1CPUContext.html" title="A context structure capable of carrying the context of any supported CPU architecture.">CPUContext</a> object corresponding to the thread’s CPU context. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a3e5256fb87404928874cec4732cfb1df">More...</a><br /></td></tr>
<tr class="separator:a3e5256fb87404928874cec4732cfb1df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47ec986683a5aed362ecba9f092c61bf"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a47ec986683a5aed362ecba9f092c61bf">Stack</a> () const override</td></tr>
<tr class="memdesc:a47ec986683a5aed362ecba9f092c61bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 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> object corresponding to the memory region that contains the thread’s stack, or <code>nullptr</code> if no stack region is available. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a47ec986683a5aed362ecba9f092c61bf">More...</a><br /></td></tr>
<tr class="separator:a47ec986683a5aed362ecba9f092c61bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7a31f691da452e9935c70c5e17901d9"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#aa7a31f691da452e9935c70c5e17901d9">ThreadID</a> () const override</td></tr>
<tr class="memdesc:aa7a31f691da452e9935c70c5e17901d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the thread’s identifier. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#aa7a31f691da452e9935c70c5e17901d9">More...</a><br /></td></tr>
<tr class="separator:aa7a31f691da452e9935c70c5e17901d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa14d795531c637056d3312cf2b38a9e7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#aa14d795531c637056d3312cf2b38a9e7">SuspendCount</a> () const override</td></tr>
<tr class="memdesc:aa14d795531c637056d3312cf2b38a9e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the thread’s suspend count. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#aa14d795531c637056d3312cf2b38a9e7">More...</a><br /></td></tr>
<tr class="separator:aa14d795531c637056d3312cf2b38a9e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67070917d0ea0d06845b345f63aa2a0e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a67070917d0ea0d06845b345f63aa2a0e">Priority</a> () const override</td></tr>
<tr class="memdesc:a67070917d0ea0d06845b345f63aa2a0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the thread’s priority. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a67070917d0ea0d06845b345f63aa2a0e">More...</a><br /></td></tr>
<tr class="separator:a67070917d0ea0d06845b345f63aa2a0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ce1aa33521d2499be131d273323caf0"><td class="memItemLeft" align="right" valign="top"><a id="a7ce1aa33521d2499be131d273323caf0"></a>
uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a7ce1aa33521d2499be131d273323caf0">ThreadSpecificDataAddress</a> () const override</td></tr>
<tr class="memdesc:a7ce1aa33521d2499be131d273323caf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the base address of a region used to store thread-specific data. <br /></td></tr>
<tr class="separator:a7ce1aa33521d2499be131d273323caf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af49ca1418d7436492c49949f2fc73a31"><td class="memItemLeft" align="right" valign="top">std::vector&lt; const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#af49ca1418d7436492c49949f2fc73a31">ExtraMemory</a> () const override</td></tr>
<tr class="memdesc:af49ca1418d7436492c49949f2fc73a31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a vector of additional memory blocks that should be included in a minidump. <a href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#af49ca1418d7436492c49949f2fc73a31">More...</a><br /></td></tr>
<tr class="separator:af49ca1418d7436492c49949f2fc73a31"><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>A test <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> that can carry arbitrary data for testing purposes. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a645715913a5fe095cba580836647ff0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a645715913a5fe095cba580836647ff0a">&#9670;&nbsp;</a></span>AddExtraMemory()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void crashpad::test::TestThreadSnapshot::AddExtraMemory </td>
<td>(</td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> &gt;&#160;</td>
<td class="paramname"><em>extra_memory</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a memory snapshot to be returned by <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#af49ca1418d7436492c49949f2fc73a31" title="Returns a vector of additional memory blocks that should be included in a minidump.">ExtraMemory()</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">extra_memory</td><td>The memory snapshot that will be included in <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#af49ca1418d7436492c49949f2fc73a31" title="Returns a vector of additional memory blocks that should be included in a minidump.">ExtraMemory()</a>. The <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html" title="A test ThreadSnapshot that can carry arbitrary data for testing purposes.">TestThreadSnapshot</a> object takes ownership of <em>extra_memory</em>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3e5256fb87404928874cec4732cfb1df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e5256fb87404928874cec4732cfb1df">&#9670;&nbsp;</a></span>Context()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structcrashpad_1_1CPUContext.html">CPUContext</a> * crashpad::test::TestThreadSnapshot::Context </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a <a class="el" href="structcrashpad_1_1CPUContext.html" title="A context structure capable of carrying the context of any supported CPU architecture.">CPUContext</a> object corresponding to the thread’s CPU context. </p>
<p>The caller does not take ownership of this object, it is scoped to the lifetime of the <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> object that it was obtained from. </p>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#a6e227ceaec1f06711d620a99631ec98a">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<a id="af49ca1418d7436492c49949f2fc73a31"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af49ca1418d7436492c49949f2fc73a31">&#9670;&nbsp;</a></span>ExtraMemory()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> * &gt; crashpad::test::TestThreadSnapshot::ExtraMemory </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a vector of additional memory blocks that should be included in a minidump. </p>
<dl class="section return"><dt>Returns</dt><dd>A vector of <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> objects that will be included in the crash dump. The caller does not take ownership of these objects, they are scoped to the lifetime of the <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> object that they were obtained from. </dd></dl>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#a983c5e668ae54cbf8f4348f95da4afc8">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<a id="a9703c478f207a285d732821be657b50f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9703c478f207a285d732821be657b50f">&#9670;&nbsp;</a></span>MutableContext()</h2>
<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="structcrashpad_1_1CPUContext.html">CPUContext</a>* crashpad::test::TestThreadSnapshot::MutableContext </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Obtains a pointer to the underlying mutable <a class="el" href="structcrashpad_1_1CPUContext.html" title="A context structure capable of carrying the context of any supported CPU architecture.">CPUContext</a> structure. </p>
<p>This method is intended to be used by callers to populate the <a class="el" href="structcrashpad_1_1CPUContext.html" title="A context structure capable of carrying the context of any supported CPU architecture.">CPUContext</a> structure.</p>
<dl class="section return"><dt>Returns</dt><dd>The same pointer that <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a3e5256fb87404928874cec4732cfb1df" title="Returns a CPUContext object corresponding to the thread’s CPU context.">Context()</a> does, while treating the data as mutable.</dd></dl>
<dl class="section attention"><dt>Attention</dt><dd>This returns a non-<code>const</code> pointer to this object’s private data so that a caller can populate the context structure directly. This is done because providing setter interfaces to each field in the context structure would be unwieldy and cumbersome. Care must be taken to populate the context structure correctly. </dd></dl>
</div>
</div>
<a id="a67070917d0ea0d06845b345f63aa2a0e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67070917d0ea0d06845b345f63aa2a0e">&#9670;&nbsp;</a></span>Priority()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int crashpad::test::TestThreadSnapshot::Priority </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the thread’s priority. </p>
<p>Threads with higher priorities will have higher priority values. </p>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#affbf3f8bee03bd703bc2833c4e714f70">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<a id="a1db1c6ce49c283e763c666c3fbf5964a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1db1c6ce49c283e763c666c3fbf5964a">&#9670;&nbsp;</a></span>SetStack()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void crashpad::test::TestThreadSnapshot::SetStack </td>
<td>(</td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> &gt;&#160;</td>
<td class="paramname"><em>stack</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the memory region to be returned by <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a47ec986683a5aed362ecba9f092c61bf" title="Returns a MemorySnapshot object corresponding to the memory region that contains the thread’s stack,...">Stack()</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">stack</td><td>The memory region that <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html#a47ec986683a5aed362ecba9f092c61bf" title="Returns a MemorySnapshot object corresponding to the memory region that contains the thread’s stack,...">Stack()</a> will return. The <a class="el" href="classcrashpad_1_1test_1_1TestThreadSnapshot.html" title="A test ThreadSnapshot that can carry arbitrary data for testing purposes.">TestThreadSnapshot</a> object takes ownership of <em>stack</em>. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a47ec986683a5aed362ecba9f092c61bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47ec986683a5aed362ecba9f092c61bf">&#9670;&nbsp;</a></span>Stack()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classcrashpad_1_1MemorySnapshot.html">MemorySnapshot</a> * crashpad::test::TestThreadSnapshot::Stack </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns 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> object corresponding to the memory region that contains the thread’s stack, or <code>nullptr</code> if no stack region is available. </p>
<p>The caller does not take ownership of this object, it is scoped to the lifetime of the <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> object that it was obtained from. </p>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#a4f0eadc03965ea69a6b0462f878dd628">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<a id="aa14d795531c637056d3312cf2b38a9e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa14d795531c637056d3312cf2b38a9e7">&#9670;&nbsp;</a></span>SuspendCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int crashpad::test::TestThreadSnapshot::SuspendCount </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the thread’s suspend count. </p>
<p>A suspend count of <code>0</code> denotes a schedulable (not suspended) thread. </p>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#abe00a7e9cbc55366a545700517762d5c">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<a id="aa7a31f691da452e9935c70c5e17901d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa7a31f691da452e9935c70c5e17901d9">&#9670;&nbsp;</a></span>ThreadID()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t crashpad::test::TestThreadSnapshot::ThreadID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the thread’s identifier. </p>
<p>Thread identifiers are at least unique within a process, and may be unique system-wide. </p>
<p>Implements <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#a3c953575fadb934cd5f163560df149da">crashpad::ThreadSnapshot</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>snapshot/test/test_thread_snapshot.h</li>
<li>snapshot/test/test_thread_snapshot.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>