<!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::MinidumpModuleCodeViewRecordPDBLinkWriter&lt; CodeViewRecordType &gt; Class Template 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_1MinidumpModuleCodeViewRecordPDBLinkWriter.html">MinidumpModuleCodeViewRecordPDBLinkWriter</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter&lt; CodeViewRecordType &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>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></p>

<p><code>#include &quot;minidump/minidump_module_writer.h&quot;</code></p>
<div class="dynheader">
Inheritance diagram for crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter&lt; CodeViewRecordType &gt;:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.png" usemap="#crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter_3C_20CodeViewRecordType_20_3E_map" alt=""/>
  <map id="crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter_3C_20CodeViewRecordType_20_3E_map" name="crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter_3C_20CodeViewRecordType_20_3E_map">
<area href="classcrashpad_1_1MinidumpModuleCodeViewRecordWriter.html" title="The base class for writers of CodeView records referenced by MINIDUMP_MODULE::CvRecord in minidump fi..." alt="crashpad::MinidumpModuleCodeViewRecordWriter" shape="rect" coords="0,56,547,80"/>
<area href="classcrashpad_1_1internal_1_1MinidumpWritable.html" title="The base class for all content that might be written to a minidump file." alt="crashpad::internal::MinidumpWritable" shape="rect" coords="0,0,547,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:a6c1428cc193f29f49a47d0779c1d75c3"><td class="memItemLeft" align="right" valign="top"><a id="a6c1428cc193f29f49a47d0779c1d75c3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#a6c1428cc193f29f49a47d0779c1d75c3">SetPDBName</a> (const std::string &amp;pdb_name)</td></tr>
<tr class="memdesc:a6c1428cc193f29f49a47d0779c1d75c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the name of the <code>.pdb</code> file being linked to. <br /></td></tr>
<tr class="separator:a6c1428cc193f29f49a47d0779c1d75c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a24507e918299cb566c7f15207de83a7f">WriteEverything</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer)</td></tr>
<tr class="memdesc:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an object and all of its children to a minidump file.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a24507e918299cb566c7f15207de83a7f">More...</a><br /></td></tr>
<tr class="separator:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37">RegisterRVA</a> (<a class="el" href="dbghelp_8h.html#acf465a1a77ecf067a9d946583bc6a3f8">RVA</a> *rva)</td></tr>
<tr class="memdesc:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a file offset pointer as one that should point to the object on which this method is called.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37">More...</a><br /></td></tr>
<tr class="separator:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400">RegisterLocationDescriptor</a> (<a class="el" href="structMINIDUMP__LOCATION__DESCRIPTOR.html">MINIDUMP_LOCATION_DESCRIPTOR</a> *location_descriptor)</td></tr>
<tr class="memdesc:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a location descriptor as one that should point to the object on which this method is called.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400">More...</a><br /></td></tr>
<tr class="separator:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aba77387047cbc03ecd6aa4810fb1e635"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#aba77387047cbc03ecd6aa4810fb1e635">SizeOfObject</a> () override</td></tr>
<tr class="memdesc:aba77387047cbc03ecd6aa4810fb1e635"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the amount of space that this object will consume when written to a minidump file, in bytes, not including any leading or trailing padding necessary to maintain proper alignment.  <a href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#aba77387047cbc03ecd6aa4810fb1e635">More...</a><br /></td></tr>
<tr class="separator:aba77387047cbc03ecd6aa4810fb1e635"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a697e2c1bd9e93d74cf68a84d9074b346"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#a697e2c1bd9e93d74cf68a84d9074b346">WriteObject</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer) override</td></tr>
<tr class="memdesc:a697e2c1bd9e93d74cf68a84d9074b346"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the object’s content.  <a href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#a697e2c1bd9e93d74cf68a84d9074b346">More...</a><br /></td></tr>
<tr class="separator:a697e2c1bd9e93d74cf68a84d9074b346"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21655109744c291bf043086438d65f16"><td class="memItemLeft" align="right" valign="top">CodeViewRecordType *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#a21655109744c291bf043086438d65f16">codeview_record</a> ()</td></tr>
<tr class="memdesc:a21655109744c291bf043086438d65f16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the raw CodeView record’s data.  <a href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html#a21655109744c291bf043086438d65f16">More...</a><br /></td></tr>
<tr class="separator:a21655109744c291bf043086438d65f16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:aed27972114564f99cda1e7648aec807a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top"><a id="aed27972114564f99cda1e7648aec807a"></a>
<a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">State</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed27972114564f99cda1e7648aec807a">state</a> () const</td></tr>
<tr class="memdesc:aed27972114564f99cda1e7648aec807a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">The state of the object. <br /></td></tr>
<tr class="separator:aed27972114564f99cda1e7648aec807a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a773db80946a99c6a3cc29c7d4dd77bd6 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a773db80946a99c6a3cc29c7d4dd77bd6">Freeze</a> ()</td></tr>
<tr class="memdesc:a773db80946a99c6a3cc29c7d4dd77bd6 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transitions the object from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665" title="The object’s properties can be modified.">kStateMutable</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”.">kStateFrozen</a>.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a773db80946a99c6a3cc29c7d4dd77bd6">More...</a><br /></td></tr>
<tr class="separator:a773db80946a99c6a3cc29c7d4dd77bd6 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4e92c46984eb73dbc1315ff5f4c7a9a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#af4e92c46984eb73dbc1315ff5f4c7a9a">Alignment</a> ()</td></tr>
<tr class="memdesc:af4e92c46984eb73dbc1315ff5f4c7a9a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object’s desired byte-boundary alignment.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#af4e92c46984eb73dbc1315ff5f4c7a9a">More...</a><br /></td></tr>
<tr class="separator:af4e92c46984eb73dbc1315ff5f4c7a9a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">MinidumpWritable</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a32460b7fe2154fbabc3c58bf10dc7861">Children</a> ()</td></tr>
<tr class="memdesc:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object’s children.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a32460b7fe2154fbabc3c58bf10dc7861">More...</a><br /></td></tr>
<tr class="separator:a32460b7fe2154fbabc3c58bf10dc7861 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a389b0ac1986698e80ebbc49198676ac7 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a389b0ac1986698e80ebbc49198676ac7">WritePhase</a> ()</td></tr>
<tr class="memdesc:a389b0ac1986698e80ebbc49198676ac7 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object’s desired write phase.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a389b0ac1986698e80ebbc49198676ac7">More...</a><br /></td></tr>
<tr class="separator:a389b0ac1986698e80ebbc49198676ac7 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a712fac2ada227f53c55eb0c4d042f239">WillWriteAtOffset</a> (<a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a> phase, <a class="el" href="namespacecrashpad.html#a1e53a1957d9edcba8b406ea632b6daf2">FileOffset</a> *offset, std::vector&lt; <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">MinidumpWritable</a> * &gt; *write_sequence)</td></tr>
<tr class="memdesc:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepares the object to be written at a known file offset, transitioning it from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”.">kStateFrozen</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable.">kStateWritable</a>.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a712fac2ada227f53c55eb0c4d042f239">More...</a><br /></td></tr>
<tr class="separator:a712fac2ada227f53c55eb0c4d042f239 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2416cb821816b769d95b92e486713ebf inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2416cb821816b769d95b92e486713ebf">WillWriteAtOffsetImpl</a> (<a class="el" href="namespacecrashpad.html#a1e53a1957d9edcba8b406ea632b6daf2">FileOffset</a> offset)</td></tr>
<tr class="memdesc:a2416cb821816b769d95b92e486713ebf inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called once an object’s writable file offset is determined, as it transitions into <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable.">kStateWritable</a>.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2416cb821816b769d95b92e486713ebf">More...</a><br /></td></tr>
<tr class="separator:a2416cb821816b769d95b92e486713ebf inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ab82b1e92ae0eced8b8e2efe957411773">WritePaddingAndObject</a> (<a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *file_writer)</td></tr>
<tr class="memdesc:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes the object, transitioning it from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable.">kStateWritable</a> to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af0d794ed29c320fcf35c71f40cc6a510" title="The object has been written to a minidump file.">kStateWritten</a>.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ab82b1e92ae0eced8b8e2efe957411773">More...</a><br /></td></tr>
<tr class="separator:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_types_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Protected Types inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:ac14e05f291f5fa713b5ec82a208fa7c7 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">State</a> </td></tr>
<tr class="memdesc:ac14e05f291f5fa713b5ec82a208fa7c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies the state of an object.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">More...</a><br /></td></tr>
<tr class="separator:ac14e05f291f5fa713b5ec82a208fa7c7 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009f007265d64a5fb416848480a00ae9 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a> </td></tr>
<tr class="memdesc:a009f007265d64a5fb416848480a00ae9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identifies the phase during which an object will be written to a minidump file.  <a href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">More...</a><br /></td></tr>
<tr class="separator:a009f007265d64a5fb416848480a00ae9 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<tr class="memitem:ac2b31049c4fedaabb24857d82531d6d6 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memItemLeft" align="right" valign="top"><a id="ac2b31049c4fedaabb24857d82531d6d6"></a>
static constexpr size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac2b31049c4fedaabb24857d82531d6d6">kInvalidSize</a> = std::numeric_limits&lt;size_t&gt;::max()</td></tr>
<tr class="memdesc:ac2b31049c4fedaabb24857d82531d6d6 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="mdescLeft">&#160;</td><td class="mdescRight">A size value used to signal failure by methods that return <code>size_t</code>. <br /></td></tr>
<tr class="separator:ac2b31049c4fedaabb24857d82531d6d6 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename CodeViewRecordType&gt;<br />
class crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter&lt; CodeViewRecordType &gt;</h3>

<p>The base class for writers of CodeView records that serve as links to <code>.pdb</code> (program database) files. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a21655109744c291bf043086438d65f16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21655109744c291bf043086438d65f16">&#9670;&nbsp;</a></span>codeview_record()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename CodeViewRecordType &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CodeViewRecordType* <a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html">crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter</a>&lt; CodeViewRecordType &gt;::codeview_record </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 class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a pointer to the raw CodeView record’s data. </p>
<p>Subclasses can use this to set fields in their codeview records other than the <code>pdb_name</code> field. </p>

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

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename CodeViewRecordType &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html">crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter</a>&lt; CodeViewRecordType &gt;::SizeOfObject </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the amount of space that this object will consume when written to a minidump file, in bytes, not including any leading or trailing padding necessary to maintain proper alignment. </p>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611" title="The object is “frozen”.">kStateFrozen</a> or any subsequent state. </dd></dl>

<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a1483275a3acbdfcecffb7f3c27cd2feb">crashpad::internal::MinidumpWritable</a>.</p>

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

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename CodeViewRecordType &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classcrashpad_1_1internal_1_1MinidumpModuleCodeViewRecordPDBLinkWriter.html">crashpad::internal::MinidumpModuleCodeViewRecordPDBLinkWriter</a>&lt; CodeViewRecordType &gt;::WriteObject </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcrashpad_1_1FileWriterInterface.html">FileWriterInterface</a> *&#160;</td>
          <td class="paramname"><em>file_writer</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Writes the object’s content. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">file_writer</td><td>The file writer to receive the object’s content.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> on success. <code>false</code> on error, indicating that the content could not be written to the minidump file.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Valid in <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd" title="The object is writable.">kStateWritable</a>. The object will transition to <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af0d794ed29c320fcf35c71f40cc6a510" title="The object has been written to a minidump file.">kStateWritten</a> after this method returns. </dd></dl>

<p>Implements <a class="el" href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2d3472b11ec3c12184f5d8f946fbb4a1">crashpad::internal::MinidumpWritable</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>minidump/minidump_module_writer.h</li>
<li>minidump/minidump_module_writer.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>
