<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::internal::ExceptionSnapshotIOS Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

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

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="namespacecrashpad_1_1internal.html">internal</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html">ExceptionSnapshotIOS</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::internal::ExceptionSnapshotIOS Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>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 an iOS system.  
 <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#details">More...</a></p>

<p><code>#include &quot;snapshot/ios/exception_snapshot_ios.h&quot;</code></p>
<div class="dynheader">
Inheritance diagram for crashpad::internal::ExceptionSnapshotIOS:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.png" usemap="#crashpad::internal::ExceptionSnapshotIOS_map" alt=""/>
  <map id="crashpad::internal::ExceptionSnapshotIOS_map" name="crashpad::internal::ExceptionSnapshotIOS_map">
<area href="classcrashpad_1_1ExceptionSnapshot.html" title="An abstract interface to a snapshot representing an exception that a snapshot process sustained and t..." alt="crashpad::ExceptionSnapshot" shape="rect" coords="0,0,247,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:a6788df993bae0e3ff5b7d9f9fe746d98"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a6788df993bae0e3ff5b7d9f9fe746d98">InitializeFromSignal</a> (const siginfo_t *siginfo, const ucontext_t *context)</td></tr>
<tr class="memdesc:a6788df993bae0e3ff5b7d9f9fe746d98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the object from a signal.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a6788df993bae0e3ff5b7d9f9fe746d98">More...</a><br /></td></tr>
<tr class="separator:a6788df993bae0e3ff5b7d9f9fe746d98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74883f87f18b23570ad04529d52e1dd3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a74883f87f18b23570ad04529d52e1dd3">InitializeFromMachException</a> (exception_behavior_t behavior, thread_t exception_thread, exception_type_t exception, const mach_exception_data_type_t *code, mach_msg_type_number_t code_count, thread_state_flavor_t flavor, <a class="el" href="namespacecrashpad.html#a72fa9ea632f7f1ec93ec3c1b1d300db6">ConstThreadState</a> state, mach_msg_type_number_t state_count)</td></tr>
<tr class="memdesc:a74883f87f18b23570ad04529d52e1dd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the object from a Mach exception for the current task.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a74883f87f18b23570ad04529d52e1dd3">More...</a><br /></td></tr>
<tr class="separator:a74883f87f18b23570ad04529d52e1dd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1649ea95f17b560a865b39c2fe501e5c"><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_1internal_1_1ExceptionSnapshotIOS.html#a1649ea95f17b560a865b39c2fe501e5c">Context</a> () const override</td></tr>
<tr class="memdesc:a1649ea95f17b560a865b39c2fe501e5c"><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 exception thread’s CPU context at the time of the exception.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a1649ea95f17b560a865b39c2fe501e5c">More...</a><br /></td></tr>
<tr class="separator:a1649ea95f17b560a865b39c2fe501e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e4ae459b6c0d1577078b932915468e1"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a8e4ae459b6c0d1577078b932915468e1">ThreadID</a> () const override</td></tr>
<tr class="memdesc:a8e4ae459b6c0d1577078b932915468e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the thread identifier of the thread that triggered the exception.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a8e4ae459b6c0d1577078b932915468e1">More...</a><br /></td></tr>
<tr class="separator:a8e4ae459b6c0d1577078b932915468e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d94d3244df075c4ecd36e00d1b8ce44"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a4d94d3244df075c4ecd36e00d1b8ce44">Exception</a> () const override</td></tr>
<tr class="memdesc:a4d94d3244df075c4ecd36e00d1b8ce44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the top-level exception code identifying the exception.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a4d94d3244df075c4ecd36e00d1b8ce44">More...</a><br /></td></tr>
<tr class="separator:a4d94d3244df075c4ecd36e00d1b8ce44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38ad75ae8ad831794e3584cfff34e7af"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a38ad75ae8ad831794e3584cfff34e7af">ExceptionInfo</a> () const override</td></tr>
<tr class="memdesc:a38ad75ae8ad831794e3584cfff34e7af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the second-level exception code identifying the exception.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a38ad75ae8ad831794e3584cfff34e7af">More...</a><br /></td></tr>
<tr class="separator:a38ad75ae8ad831794e3584cfff34e7af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a4cfd3931862b9cafdf30bd26a248ac"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a5a4cfd3931862b9cafdf30bd26a248ac">ExceptionAddress</a> () const override</td></tr>
<tr class="memdesc:a5a4cfd3931862b9cafdf30bd26a248ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the address that triggered the exception.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#a5a4cfd3931862b9cafdf30bd26a248ac">More...</a><br /></td></tr>
<tr class="separator:a5a4cfd3931862b9cafdf30bd26a248ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb6b508ec57ad879a04c5ae07a842afc"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; uint64_t &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#afb6b508ec57ad879a04c5ae07a842afc">Codes</a> () const override</td></tr>
<tr class="memdesc:afb6b508ec57ad879a04c5ae07a842afc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a series of operating system-specific exception codes.  <a href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#afb6b508ec57ad879a04c5ae07a842afc">More...</a><br /></td></tr>
<tr class="separator:afb6b508ec57ad879a04c5ae07a842afc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b1ff7b37577d2e346016c9eaeeee9b8"><td class="memItemLeft" align="right" valign="top">virtual 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_1internal_1_1ExceptionSnapshotIOS.html#a9b1ff7b37577d2e346016c9eaeeee9b8">ExtraMemory</a> () const override</td></tr>
<tr class="memdesc:a9b1ff7b37577d2e346016c9eaeeee9b8"><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_1internal_1_1ExceptionSnapshotIOS.html#a9b1ff7b37577d2e346016c9eaeeee9b8">More...</a><br /></td></tr>
<tr class="separator:a9b1ff7b37577d2e346016c9eaeeee9b8"><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>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 an iOS system. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="afb6b508ec57ad879a04c5ae07a842afc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb6b508ec57ad879a04c5ae07a842afc">&#9670;&nbsp;</a></span>Codes()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const std::vector&lt; uint64_t &gt; &amp; crashpad::internal::ExceptionSnapshotIOS::Codes </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 series of operating system-specific exception codes. </p>
<p>The precise interpretation of these codes is specific to the snapshot operating system. These codes may provide a duplicate of information available elsewhere, they may extend information available elsewhere, or they may not be present at all. In this case, an empty vector will be returned.</p>
<p>For macOS, this will be a vector containing the original exception type and the values of <code>code[0]</code> and <code>code[1]</code> as received by a Mach exception handler.</p>
<p>For Windows, these are additional arguments (if any) as provided to <code>RaiseException()</code>. See the documentation for <code><a class="el" href="structcrashpad_1_1ExceptionInformation.html" title="Structure read out of the client process by the crash handler when an exception occurs.">ExceptionInformation</a></code> in <code>EXCEPTION_RECORD</code>. </p>

<p>Implements <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html#a1b98ff58b73e105c39ccba39dad5a2d7">crashpad::ExceptionSnapshot</a>.</p>

</div>
</div>
<a id="a1649ea95f17b560a865b39c2fe501e5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1649ea95f17b560a865b39c2fe501e5c">&#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::internal::ExceptionSnapshotIOS::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 exception thread’s CPU context at the time of the exception. </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_1ExceptionSnapshot.html#a9ba62f24e17805f436feda32c01f353e">crashpad::ExceptionSnapshot</a>.</p>

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

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t crashpad::internal::ExceptionSnapshotIOS::Exception </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 top-level exception code identifying the exception. </p>
<p>This is an operating system-specific value.</p>
<p>For macOS, this will be an <a class="el" href="mach_8h.html#EXC_x">EXC_*</a> exception type, such as <code>EXC_BAD_ACCESS</code>. <code>EXC_CRASH</code> will not appear here for exceptions processed as <code>EXC_CRASH</code> when generated from another preceding exception: the original exception code will appear instead. The exception type as it was received will appear at index 0 of <a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#afb6b508ec57ad879a04c5ae07a842afc" title="Returns a series of operating system-specific exception codes.">Codes()</a>.</p>
<p>For Windows, this will be an <code>EXCEPTION_*</code> exception type, such as <code>EXCEPTION_ACCESS_VIOLATION</code>. </p>

<p>Implements <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html#af73f1ae2f0572a10bd1b62dee1472607">crashpad::ExceptionSnapshot</a>.</p>

</div>
</div>
<a id="a5a4cfd3931862b9cafdf30bd26a248ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a4cfd3931862b9cafdf30bd26a248ac">&#9670;&nbsp;</a></span>ExceptionAddress()</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::internal::ExceptionSnapshotIOS::ExceptionAddress </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 address that triggered the exception. </p>
<p>This may be the address that caused a fault on data access, or it may be the instruction pointer that contained an offending instruction. For exceptions where this value cannot be determined, it will be <code>0</code>.</p>
<p>For macOS, this will be the value of the exception code at index 1 as received by a Mach exception handler. </p>

<p>Implements <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html#a12bf01b499037e2ad642d5e131f23f86">crashpad::ExceptionSnapshot</a>.</p>

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

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t crashpad::internal::ExceptionSnapshotIOS::ExceptionInfo </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 second-level exception code identifying the exception. </p>
<p>This is an operating system-specific value.</p>
<p>For macOS, this will be the value of the exception code at index 0 as received by a Mach exception handler, except:</p><ul>
<li>For <code>EXC_CRASH</code> exceptions generated from another preceding exception, the original exception code will appear here, not the code as received by the Mach exception handler.</li>
<li>For <code>EXC_RESOURCE</code> and <code>EXC_GUARD</code> exceptions, the high 32 bits of the exception code at index 0 will appear here.</li>
</ul>
<p>In all cases on macOS, the full exception code at index 0 as it was received will appear at index 1 of <a class="el" href="classcrashpad_1_1internal_1_1ExceptionSnapshotIOS.html#afb6b508ec57ad879a04c5ae07a842afc" title="Returns a series of operating system-specific exception codes.">Codes()</a>.</p>
<p>On Windows, this will either be <code>0</code> if the exception is continuable, or <code>EXCEPTION_NONCONTINUABLE</code> to indicate a noncontinuable exception. </p>

<p>Implements <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html#ae1c97187c37fa378252415f7f3b4e6cb">crashpad::ExceptionSnapshot</a>.</p>

</div>
</div>
<a id="a9b1ff7b37577d2e346016c9eaeeee9b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b1ff7b37577d2e346016c9eaeeee9b8">&#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::internal::ExceptionSnapshotIOS::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_1ExceptionSnapshot.html#a85e992db62e56bc47242a186b94208f4">crashpad::ExceptionSnapshot</a>.</p>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::internal::ExceptionSnapshotIOS::InitializeFromMachException </td>
          <td>(</td>
          <td class="paramtype">exception_behavior_t&#160;</td>
          <td class="paramname"><em>behavior</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">thread_t&#160;</td>
          <td class="paramname"><em>exception_thread</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">exception_type_t&#160;</td>
          <td class="paramname"><em>exception</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const mach_exception_data_type_t *&#160;</td>
          <td class="paramname"><em>code</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mach_msg_type_number_t&#160;</td>
          <td class="paramname"><em>code_count</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>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize the object from a Mach exception for the current task. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the snapshot could be created, <code>false</code> otherwise with an appropriate message logged. </dd></dl>

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

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::internal::ExceptionSnapshotIOS::InitializeFromSignal </td>
          <td>(</td>
          <td class="paramtype">const siginfo_t *&#160;</td>
          <td class="paramname"><em>siginfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const ucontext_t *&#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 the object from a signal. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the snapshot could be created, <code>false</code> otherwise with an appropriate message logged. </dd></dl>

</div>
</div>
<a id="a8e4ae459b6c0d1577078b932915468e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e4ae459b6c0d1577078b932915468e1">&#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::internal::ExceptionSnapshotIOS::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 identifier of the thread that triggered the exception. </p>
<p>This value can be compared to <a class="el" href="classcrashpad_1_1ThreadSnapshot.html#a3c953575fadb934cd5f163560df149da" title="Returns the thread’s identifier.">ThreadSnapshot::ThreadID()</a> to associate 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> object with 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> that contains a snapshot of the thread that triggered the exception. </p>

<p>Implements <a class="el" href="classcrashpad_1_1ExceptionSnapshot.html#aef11b2d8ffb00bb38688e09c0b62ac51">crashpad::ExceptionSnapshot</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>snapshot/ios/exception_snapshot_ios.h</li>
<li>snapshot/ios/exception_snapshot_ios.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>
