<ahref="#pub-methods">Public Member Functions</a>|
<ahref="#pro-methods">Protected Member Functions</a>|
<ahref="classcrashpad_1_1MinidumpMiscInfoWriter-members.html">List of all members</a></div>
<divclass="headertitle">
<divclass="title">crashpad::MinidumpMiscInfoWriter Class Reference<spanclass="mlabels"><spanclass="mlabel">final</span></span></div></div>
</div><!--header-->
<divclass="contents">
<p>The writer for a stream in the <aclass="el"href="structMINIDUMP__MISC__INFO.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO</a> family in a minidump file.
<areahref="classcrashpad_1_1internal_1_1MinidumpStreamWriter.html"title="The base class for all second-level objects (“streams”) in a minidump file. "alt="crashpad::internal::MinidumpStreamWriter"shape="rect"coords="0,56,246,80"/>
<areahref="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,246,24"/>
<trclass="memdesc:a25ccb6770c07d55f1d1756d04a9d42e9"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Initializes MINIDUMP_MISC_INFO_N based on <em>process_snapshot</em>. <ahref="#a25ccb6770c07d55f1d1756d04a9d42e9">More...</a><br/></td></tr>
<trclass="memdesc:ab5df42dd8537208f1c92b34cc161b0ae"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the field referenced by <aclass="el"href="dbghelp_8h.html#a7c45d36c41d28289bb5966da1eb4df1e"title="MINIDUMP_MISC_INFO::ProcessId is valid. ">MINIDUMP_MISC1_PROCESS_ID</a>. <br/></td></tr>
<trclass="memdesc:a648daff5be008580b0f2281bae9fa253"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the fields referenced by <aclass="el"href="dbghelp_8h.html#ab3edfa814438bfee50c43b21693ca121"title="The time-related fields in MINIDUMP_MISC_INFO are valid. ">MINIDUMP_MISC1_PROCESS_TIMES</a>. <br/></td></tr>
<trclass="memdesc:aeb9f80912ac661dcc7418441f5815e8f"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the fields referenced by <aclass="el"href="dbghelp_8h.html#aaae1499c48b3277b847f6a3bc6b71c78"title="The CPU-related fields in MINIDUMP_MISC_INFO_2 are valid. ">MINIDUMP_MISC1_PROCESSOR_POWER_INFO</a>. <br/></td></tr>
<trclass="memdesc:a356e7b7ddde8b5a029f72ac38643fab4"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the field referenced by <aclass="el"href="dbghelp_8h.html#a7fcbcd210bea531bf9cca1ed9d10113f"title="MINIDUMP_MISC_INFO_3::ProcessIntegrityLevel is valid. ">MINIDUMP_MISC3_PROCESS_INTEGRITY</a>. <br/></td></tr>
<trclass="memdesc:a051170e6d531b31e0988397f47c58684"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the field referenced by <aclass="el"href="dbghelp_8h.html#a467ca1ad62bc613f3f0d8b015adcd513"title="MINIDUMP_MISC_INFO_3::ProcessExecuteFlags is valid. ">MINIDUMP_MISC3_PROCESS_EXECUTE_FLAGS</a>. <br/></td></tr>
<trclass="memdesc:aa5a80abd6211e75ec07591a4364235d0"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the field referenced by <aclass="el"href="dbghelp_8h.html#af2a0c259e3c9b1e03cc3f2b07dede231"title="MINIDUMP_MISC_INFO_3::ProtectedProcess is valid. ">MINIDUMP_MISC3_PROTECTED_PROCESS</a>. <br/></td></tr>
<trclass="memdesc:aadc3b9bbfc1827a58dfbe092725750ea"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the fields referenced by <aclass="el"href="dbghelp_8h.html#a971b8f20e37258ee18f4dd59295f8eb2"title="The time zone-related fields in MINIDUMP_MISC_INFO_3 are valid. ">MINIDUMP_MISC3_TIMEZONE</a>. <br/></td></tr>
<trclass="memdesc:a7e86cd730c654049c37ae91ac7ac88eb"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the fields referenced by <aclass="el"href="dbghelp_8h.html#ae7501b999998d342bea5ece7d7188142"title="The build string-related fields in MINIDUMP_MISC_INFO_4 are valid. ">MINIDUMP_MISC4_BUILDSTRING</a>. <br/></td></tr>
<trclass="memdesc:a53a3b14b07bcf0b9610f39209cb9f5e7"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets <aclass="el"href="structMINIDUMP__MISC__INFO__5.html#aa53542027a6044d0a26b67f30a5453c4"title="Information about XSAVE-managed state stored within CPU-specific context structures. ">MINIDUMP_MISC_INFO_5::XStateData</a>. <br/></td></tr>
<trclass="memdesc:a55450641e656406ac8042dd4699da15a"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the field referenced by <aclass="el"href="dbghelp_8h.html#a13c8d8acb639d70b13379960efd7d34c"title="MINIDUMP_MISC_INFO_5::ProcessCookie is valid. ">MINIDUMP_MISC5_PROCESS_COOKIE</a>. <br/></td></tr>
<trclass="inherit_header pub_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter"><tdcolspan="2"onclick="javascript:toggleInherit('pub_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter')"><imgsrc="closed.png"alt="-"/> Public Member Functions inherited from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpStreamWriter.html">crashpad::internal::MinidumpStreamWriter</a></td></tr>
<trclass="memdesc:a3d2658a99963fa9083c07dc2ddc72845 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Returns a <aclass="el"href="structMINIDUMP__DIRECTORY.html"title="A pointer to a stream within a minidump file. ">MINIDUMP_DIRECTORY</a> entry that serves as a pointer to this stream. <ahref="classcrashpad_1_1internal_1_1MinidumpStreamWriter.html#a3d2658a99963fa9083c07dc2ddc72845">More...</a><br/></td></tr>
<trclass="inherit_header pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdcolspan="2"onclick="javascript:toggleInherit('pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><imgsrc="closed.png"alt="-"/> Public Member Functions inherited from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<trclass="memdesc:a24507e918299cb566c7f15207de83a7f inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Writes an object and all of its children to a minidump file. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#a24507e918299cb566c7f15207de83a7f">More...</a><br/></td></tr>
<trclass="memdesc:a686683d78f099a07e2a1df8e6b567d37 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Registers a file offset pointer as one that should point to the object on which this method is called. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37">More...</a><br/></td></tr>
<trclass="memdesc:aed263c64ecb0597696d080e395af6400 inherit pub_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Registers a location descriptor as one that should point to the object on which this method is called. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400">More...</a><br/></td></tr>
<trclass="memdesc:a2302dcdd274fb64d38bf0cd718501eca"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Transitions the object from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665"title="The object’s properties can be modified. ">kStateMutable</a> to <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611"title="The object is “frozen”. ">kStateFrozen</a>. <ahref="#a2302dcdd274fb64d38bf0cd718501eca">More...</a><br/></td></tr>
<trclass="memdesc:a6a405e5aa1f3f2736b6eb84458163177"><tdclass="mdescLeft"> </td><tdclass="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. <ahref="#a6a405e5aa1f3f2736b6eb84458163177">More...</a><br/></td></tr>
<trclass="memdesc:acf044a02623faf79c1ce99c541656981"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Writes the object’s content. <ahref="#acf044a02623faf79c1ce99c541656981">More...</a><br/></td></tr>
<trclass="inherit_header pro_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter"><tdcolspan="2"onclick="javascript:toggleInherit('pro_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter')"><imgsrc="closed.png"alt="-"/> Protected Member Functions inherited from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpStreamWriter.html">crashpad::internal::MinidumpStreamWriter</a></td></tr>
<trclass="memdesc:a6bace0c62b1f29aa710974a2bbcb3e1c inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpStreamWriter"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Transitions the object from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665"title="The object’s properties can be modified. ">kStateMutable</a> to <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611"title="The object is “frozen”. ">kStateFrozen</a>. <ahref="classcrashpad_1_1internal_1_1MinidumpStreamWriter.html#a6bace0c62b1f29aa710974a2bbcb3e1c">More...</a><br/></td></tr>
<trclass="inherit_header pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdcolspan="2"onclick="javascript:toggleInherit('pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable')"><imgsrc="closed.png"alt="-"/> Protected Member Functions inherited from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html">crashpad::internal::MinidumpWritable</a></td></tr>
<trclass="memdesc:aed27972114564f99cda1e7648aec807a inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The state of the object. <br/></td></tr>
<trclass="memdesc:a8439e05e21ccb78a4d61cd6e817d3bf5 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Prepares the object to be written at a known file offset, transitioning it from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611"title="The object is “frozen”. ">kStateFrozen</a> to <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd"title="The object is writable. ">kStateWritable</a>. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#a8439e05e21ccb78a4d61cd6e817d3bf5">More...</a><br/></td></tr>
<trclass="memdesc:a2416cb821816b769d95b92e486713ebf inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Called once an object’s writable file offset is determined, as it transitions into <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd"title="The object is writable. ">kStateWritable</a>. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#a2416cb821816b769d95b92e486713ebf">More...</a><br/></td></tr>
<trclass="memdesc:ab82b1e92ae0eced8b8e2efe957411773 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Writes the object, transitioning it from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd"title="The object is writable. ">kStateWritable</a> to <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af0d794ed29c320fcf35c71f40cc6a510"title="The object has been written to a minidump file. ">kStateWritten</a>. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#ab82b1e92ae0eced8b8e2efe957411773">More...</a><br/></td></tr>
<trclass="memitem:ac14e05f291f5fa713b5ec82a208fa7c7 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="memItemLeft"align="right"valign="top">enum  </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">State</a><trclass="memdesc:ac14e05f291f5fa713b5ec82a208fa7c7"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Identifies the state of an object. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7">More...</a><br/></td></tr>
<trclass="memitem:a009f007265d64a5fb416848480a00ae9 inherit pro_types_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="memItemLeft"align="right"valign="top">enum  </td><tdclass="memItemRight"valign="bottom"><aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">Phase</a><trclass="memdesc:a009f007265d64a5fb416848480a00ae9"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Identifies the phase during which an object will be written to a minidump file. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#a009f007265d64a5fb416848480a00ae9">More...</a><br/></td></tr>
<trclass="memdesc:ae7c01f317a519213ac16bfeca94125d1 inherit pro_static_attribs_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">A size value used to signal failure by methods that return <code>size_t</code>. <ahref="classcrashpad_1_1internal_1_1MinidumpWritable.html#ae7c01f317a519213ac16bfeca94125d1">More...</a><br/></td></tr>
<divclass="textblock"><p>The writer for a stream in the <aclass="el"href="structMINIDUMP__MISC__INFO.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO</a> family in a minidump file. </p>
<p>The actual stream written will be a <aclass="el"href="structMINIDUMP__MISC__INFO.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO</a>, <aclass="el"href="structMINIDUMP__MISC__INFO__2.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_2</a>, <aclass="el"href="structMINIDUMP__MISC__INFO__3.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_3</a>, <aclass="el"href="structMINIDUMP__MISC__INFO__4.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_4</a>, or <aclass="el"href="structMINIDUMP__MISC__INFO__5.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO_5</a> stream. Later versions of <aclass="el"href="structMINIDUMP__MISC__INFO.html"title="Information about the process that the minidump file contains a snapshot of, as well as the system th...">MINIDUMP_MISC_INFO</a> are supersets of earlier versions. The earliest version that supports all of the information that an object of this class contains will be used. </p>
<p>Transitions the object from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665"title="The object’s properties can be modified. ">kStateMutable</a> to <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611"title="The object is “frozen”. ">kStateFrozen</a>. </p>
<p>The default implementation marks the object as frozen and recursively calls <aclass="el"href="classcrashpad_1_1MinidumpMiscInfoWriter.html#a2302dcdd274fb64d38bf0cd718501eca"title="Transitions the object from kStateMutable to kStateFrozen. ">Freeze()</a> on all of its children. Subclasses may override this method to perform processing that should only be done once callers have finished populating an object with data. Typically, a subclass implementation would call <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a686683d78f099a07e2a1df8e6b567d37"title="Registers a file offset pointer as one that should point to the object on which this method is called...">RegisterRVA()</a> or <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#aed263c64ecb0597696d080e395af6400"title="Registers a location descriptor as one that should point to the object on which this method is called...">RegisterLocationDescriptor()</a> on other objects as appropriate, because at the time <aclass="el"href="classcrashpad_1_1MinidumpMiscInfoWriter.html#a2302dcdd274fb64d38bf0cd718501eca"title="Transitions the object from kStateMutable to kStateFrozen. ">Freeze()</a> runs, the in-memory locations of RVAs and location descriptors are known and will not change for the remaining duration of an object’s lifetime.</p>
<dlclass="section return"><dt>Returns</dt><dd><code>true</code> on success. <code>false</code> on failure, with an appropriate message logged. </dd></dl>
<p>Reimplemented from <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#a773db80946a99c6a3cc29c7d4dd77bd6">crashpad::internal::MinidumpWritable</a>.</p>
<p>Initializes MINIDUMP_MISC_INFO_N based on <em>process_snapshot</em>. </p>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">process_snapshot</td><td>The process snapshot to use as source data.</td></tr>
</table>
</dd>
</dl>
<dlclass="section note"><dt>Note</dt><dd>Valid in <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a18337604dcbdbdb23ed51810f0587665"title="The object’s properties can be modified. ">kStateMutable</a>. No mutator methods may be called before this method, and it is not normally necessary to call any mutator methods after this method. </dd></dl>
<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>
<dlclass="section note"><dt>Note</dt><dd>Valid in <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7af98547144e0e8d4f878f725ef5c0d611"title="The object is “frozen”. ">kStateFrozen</a> or any subsequent state. </dd></dl>
<tr><tdclass="paramdir">[in]</td><tdclass="paramname">file_writer</td><td>The file writer to receive the object’s content.</td></tr>
</table>
</dd>
</dl>
<dlclass="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>
<dlclass="section note"><dt>Note</dt><dd>Valid in <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpWritable.html#ac14e05f291f5fa713b5ec82a208fa7c7a87483823ca30a8257b2a5fbd21805bcd"title="The object is writable. ">kStateWritable</a>. The object will transition to <aclass="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>