<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libopenraw: OpenRaw::IO::MemStream 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="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">libopenraw </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <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&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceOpenRaw.html">OpenRaw</a></li><li class="navelem"><b>IO</b></li><li class="navelem"><a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html">MemStream</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="classOpenRaw_1_1IO_1_1MemStream-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">OpenRaw::IO::MemStream Class Reference</div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Inheritance diagram for OpenRaw::IO::MemStream:</div> <div class="dyncontent"> <div class="center"> <img src="classOpenRaw_1_1IO_1_1MemStream.png" usemap="#OpenRaw::IO::MemStream_map" alt=""/> <map id="OpenRaw::IO::MemStream_map" name="OpenRaw::IO::MemStream_map"> <area href="classOpenRaw_1_1IO_1_1Stream.html" title="base virtual class for IO " alt="OpenRaw::IO::Stream" shape="rect" coords="0,0,158,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:a86a891c7a6550ab33238da4fdb853fbb"><td class="memItemLeft" align="right" valign="top"><a id="a86a891c7a6550ab33238da4fdb853fbb"></a>  </td><td class="memItemRight" valign="bottom"><b>MemStream</b> (void *ptr, size_t s)</td></tr> <tr class="separator:a86a891c7a6550ab33238da4fdb853fbb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a42f877040a1a522b0be8f68f789e602e"><td class="memItemLeft" align="right" valign="top"><a id="a42f877040a1a522b0be8f68f789e602e"></a>  </td><td class="memItemRight" valign="bottom"><b>MemStream</b> (const <a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html">MemStream</a> &f)=delete</td></tr> <tr class="separator:a42f877040a1a522b0be8f68f789e602e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a333d3b259a991f88af3c4ca06620a5a0"><td class="memItemLeft" align="right" valign="top"><a id="a333d3b259a991f88af3c4ca06620a5a0"></a> <a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html">MemStream</a> & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html">MemStream</a> &)=delete</td></tr> <tr class="separator:a333d3b259a991f88af3c4ca06620a5a0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acc5ac0d3fd506431478471f651a83a08"><td class="memItemLeft" align="right" valign="top">virtual or_error </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html#acc5ac0d3fd506431478471f651a83a08">open</a> () override</td></tr> <tr class="separator:acc5ac0d3fd506431478471f651a83a08"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5667c4bef1c37b4e5e2bf07452e98d84"><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html#a5667c4bef1c37b4e5e2bf07452e98d84">close</a> () override</td></tr> <tr class="separator:a5667c4bef1c37b4e5e2bf07452e98d84"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:affa7a0eab12a648e64436338cbd832cc"><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html#affa7a0eab12a648e64436338cbd832cc">seek</a> (off_t offset, int whence) override</td></tr> <tr class="separator:affa7a0eab12a648e64436338cbd832cc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8a65a64a0c93949230c8c15974d37fc4"><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html#a8a65a64a0c93949230c8c15974d37fc4">read</a> (void *buf, size_t count) override</td></tr> <tr class="separator:a8a65a64a0c93949230c8c15974d37fc4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5840ab0e91667368282b6e21b4d455f2"><td class="memItemLeft" align="right" valign="top"><a id="a5840ab0e91667368282b6e21b4d455f2"></a> virtual off_t </td><td class="memItemRight" valign="bottom"><b>filesize</b> () override</td></tr> <tr class="separator:a5840ab0e91667368282b6e21b4d455f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pub_methods_classOpenRaw_1_1IO_1_1Stream"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classOpenRaw_1_1IO_1_1Stream')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html">OpenRaw::IO::Stream</a></td></tr> <tr class="memitem:a5437a97b8941ba593273ab8d6a41f094 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a5437a97b8941ba593273ab8d6a41f094">Stream</a> (const char *filename)</td></tr> <tr class="separator:a5437a97b8941ba593273ab8d6a41f094 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9d33bf9d8cd2b2bb033f264f3051c5fc inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top"><a id="a9d33bf9d8cd2b2bb033f264f3051c5fc"></a> <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a31943b38cba6c7ae975509859f9021c0">Error</a> </td><td class="memItemRight" valign="bottom"><b>get_error</b> ()</td></tr> <tr class="separator:a9d33bf9d8cd2b2bb033f264f3051c5fc inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1f70d50b7ce59d77c67ed42025e66b67 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a1f70d50b7ce59d77c67ed42025e66b67">get_path</a> () const</td></tr> <tr class="separator:a1f70d50b7ce59d77c67ed42025e66b67 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afc3a102d07c7e9e2ccb8456159665477 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top"><a id="afc3a102d07c7e9e2ccb8456159665477"></a> uint8_t </td><td class="memItemRight" valign="bottom"><b>readByte</b> () noexcept(false)</td></tr> <tr class="separator:afc3a102d07c7e9e2ccb8456159665477 inherit pub_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </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 pub_types_classOpenRaw_1_1IO_1_1Stream"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classOpenRaw_1_1IO_1_1Stream')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html">OpenRaw::IO::Stream</a></td></tr> <tr class="memitem:a70bedac36689ff683dd6457fb98c7bad inherit pub_types_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top"><a id="a70bedac36689ff683dd6457fb98c7bad"></a> typedef std::shared_ptr< <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html">Stream</a> > </td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr> <tr class="separator:a70bedac36689ff683dd6457fb98c7bad inherit pub_types_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a31943b38cba6c7ae975509859f9021c0 inherit pub_types_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top">typedef ::or_error </td><td class="memItemRight" valign="bottom"><a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a31943b38cba6c7ae975509859f9021c0">Error</a></td></tr> <tr class="separator:a31943b38cba6c7ae975509859f9021c0 inherit pub_types_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> <tr class="inherit_header pro_methods_classOpenRaw_1_1IO_1_1Stream"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classOpenRaw_1_1IO_1_1Stream')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html">OpenRaw::IO::Stream</a></td></tr> <tr class="memitem:ade1759cd8b17cd74f355ddab9e2da9ad inherit pro_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memItemLeft" align="right" valign="top"><a id="ade1759cd8b17cd74f355ddab9e2da9ad"></a> void </td><td class="memItemRight" valign="bottom"><b>set_error</b> (<a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a31943b38cba6c7ae975509859f9021c0">Error</a> error)</td></tr> <tr class="separator:ade1759cd8b17cd74f355ddab9e2da9ad inherit pro_methods_classOpenRaw_1_1IO_1_1Stream"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"> <p class="definition">Definition at line <a class="el" href="memstream_8hpp_source.html#l00035">35</a> of file <a class="el" href="memstream_8hpp_source.html">memstream.hpp</a>.</p> </div><h2 class="groupheader">Member Function Documentation</h2> <a id="a5667c4bef1c37b4e5e2bf07452e98d84"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5667c4bef1c37b4e5e2bf07452e98d84">◆ </a></span>close()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int OpenRaw::IO::MemStream::close </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">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>close the file </p> <p>Implements <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a2929d3da1fe4d2102ee38c75cc1e2ee7">OpenRaw::IO::Stream</a>.</p> <p class="definition">Definition at line <a class="el" href="memstream_8cpp_source.html#l00051">51</a> of file <a class="el" href="memstream_8cpp_source.html">memstream.cpp</a>.</p> </div> </div> <a id="acc5ac0d3fd506431478471f651a83a08"></a> <h2 class="memtitle"><span class="permalink"><a href="#acc5ac0d3fd506431478471f651a83a08">◆ </a></span>open()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">or_error OpenRaw::IO::MemStream::open </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">virtual</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>open the file </p> <p>Implements <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a2331c05ce11fbd9443810c333c9d7ef1">OpenRaw::IO::Stream</a>.</p> <p class="definition">Definition at line <a class="el" href="memstream_8cpp_source.html#l00044">44</a> of file <a class="el" href="memstream_8cpp_source.html">memstream.cpp</a>.</p> </div> </div> <a id="a8a65a64a0c93949230c8c15974d37fc4"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8a65a64a0c93949230c8c15974d37fc4">◆ </a></span>read()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int OpenRaw::IO::MemStream::read </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>count</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></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>read in the file. Semantics are similar to POSIX <a class="el" href="classOpenRaw_1_1IO_1_1MemStream.html#a8a65a64a0c93949230c8c15974d37fc4">read()</a> </p> <p>Implements <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#a644cac743aa92c0b2dcc12d82d8356e2">OpenRaw::IO::Stream</a>.</p> <p class="definition">Definition at line <a class="el" href="memstream_8cpp_source.html#l00088">88</a> of file <a class="el" href="memstream_8cpp_source.html">memstream.cpp</a>.</p> </div> </div> <a id="affa7a0eab12a648e64436338cbd832cc"></a> <h2 class="memtitle"><span class="permalink"><a href="#affa7a0eab12a648e64436338cbd832cc">◆ </a></span>seek()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">int OpenRaw::IO::MemStream::seek </td> <td>(</td> <td class="paramtype">off_t </td> <td class="paramname"><em>offset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>whence</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></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>seek in the file. Semantics are similar to POSIX lseek() </p> <p>Implements <a class="el" href="classOpenRaw_1_1IO_1_1Stream.html#af3f62e12445433f96b060446130f11f7">OpenRaw::IO::Stream</a>.</p> <p class="definition">Definition at line <a class="el" href="memstream_8cpp_source.html#l00057">57</a> of file <a class="el" href="memstream_8cpp_source.html">memstream.cpp</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li>lib/io/<a class="el" href="memstream_8hpp_source.html">memstream.hpp</a></li> <li>lib/io/<a class="el" href="memstream_8cpp_source.html">memstream.cpp</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.14 </small></address> </body> </html>