<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,295,24"/>
<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:a561dc9ddd4e0a71845dbcdc12f47efe4"><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="#a561dc9ddd4e0a71845dbcdc12f47efe4">More...</a><br/></td></tr>
<trclass="memdesc:a3a80435e084246a8087aea516b8b40e6"><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="#a3a80435e084246a8087aea516b8b40e6">More...</a><br/></td></tr>
<trclass="memdesc:a8c9d56b1b0468a07effb67973369b913"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Writes the object’s content. <ahref="#a8c9d56b1b0468a07effb67973369b913">More...</a><br/></td></tr>
<trclass="memdesc:a0a1ca4e29de41579469a40c7fa5a0908"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the string to be written. <ahref="#a0a1ca4e29de41579469a40c7fa5a0908">More...</a><br/></td></tr>
<trclass="memdesc:aee04f05cb91b1f47d1c0e9e969043ec2"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Retrieves the string to be written. <ahref="#aee04f05cb91b1f47d1c0e9e969043ec2">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:a665d2de47970d796e904f0dfce406814 inherit pro_methods_classcrashpad_1_1internal_1_1MinidumpWritable"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The state of the object. <br/></td></tr>
<trclass="memdesc:a712fac2ada227f53c55eb0c4d042f239 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="#a712fac2ada227f53c55eb0c4d042f239">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="#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="#ab82b1e92ae0eced8b8e2efe957411773">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="#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="#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="#aed263c64ecb0597696d080e395af6400">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="#ae7c01f317a519213ac16bfeca94125d1">More...</a><br/></td></tr>
class crashpad::internal::MinidumpStringWriter< Traits ></h3>
<p>Writes a variable-length string to a minidump file in accordance with the string type’s characteristics. </p>
<p><aclass="el"href="classcrashpad_1_1internal_1_1MinidumpStringWriter.html"title="Writes a variable-length string to a minidump file in accordance with the string type’s characterist...">MinidumpStringWriter</a> objects should not be instantiated directly. To write strings to minidump file, use the <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpUTF16StringWriter.html"title="Writes a variable-length UTF-16-encoded MINIDUMP_STRING to a minidump file. ">MinidumpUTF16StringWriter</a> and <aclass="el"href="classcrashpad_1_1internal_1_1MinidumpUTF8StringWriter.html"title="Writes a variable-length UTF-8-encoded MinidumpUTF8String to a minidump file. ">MinidumpUTF8StringWriter</a> subclasses instead. </p>
</div><h2class="groupheader">Member Function Documentation</h2>
<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_1internal_1_1MinidumpStringWriter.html#a561dc9ddd4e0a71845dbcdc12f47efe4"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_1internal_1_1MinidumpStringWriter.html#a561dc9ddd4e0a71845dbcdc12f47efe4"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>
<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>. </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>