Sophie

Sophie

distrib > Fedora > 18 > i386 > by-pkgid > 92f84e59d4dc7cfd45889b3a0d83bc68 > files > 2532

ClanLib-devel-2.3.7-1.fc18.i686.rpm

<!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.4"/>
<title>ClanLib: CL_IODevice 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 style="padding-left: 0.5em;">
   <div id="projectname">ClanLib
   &#160;<span id="projectnumber">2.3.7</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.4 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="classCL__IODevice-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">CL_IODevice Class Reference<div class="ingroups"><a class="el" href="group__clanCore__I__O__Data.html">clanCore I/O Data</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>I/O Device interface.  
 <a href="classCL__IODevice.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="iodevice_8h_source.html">iodevice.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for CL_IODevice:</div>
<div class="dyncontent">
<div class="center"><img src="classCL__IODevice__inherit__graph.png" border="0" usemap="#CL__IODevice_inherit__map" alt="Inheritance graph"/></div>
<map name="CL__IODevice_inherit__map" id="CL__IODevice_inherit__map">
<area shape="rect" id="node3" href="classCL__File.html" title="File I/O device. " alt="" coords="219,5,283,35"/><area shape="rect" id="node5" href="classCL__HTTPServerConnection.html" title="HTTP server connection. " alt="" coords="156,59,345,88"/><area shape="rect" id="node7" href="classCL__IODevice__Memory.html" title="Memory I/O device. " alt="" coords="171,112,331,141"/><area shape="rect" id="node9" href="classCL__PipeConnection.html" title="Pipe connection I/O device. " alt="" coords="179,165,323,195"/><area shape="rect" id="node11" href="classCL__TCPConnection.html" title="TCP connection socket I/O device. " alt="" coords="181,219,320,248"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Enumerations</div></td></tr>
<tr class="memitem:af817535e020983b8144780d8f1337147"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147">SeekMode</a> { <a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147a6067e86f840a44ddafe49349c7a028b6">seek_set</a>, 
<a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147aaf071a8e107edd86c3c5f90b184f83f4">seek_cur</a>, 
<a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147adff9ffa5611c42f20cd44131e7fa59dc">seek_end</a>
 }</td></tr>
<tr class="memdesc:af817535e020983b8144780d8f1337147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Seeking modes.  <a href="classCL__IODevice.html#af817535e020983b8144780d8f1337147">More...</a><br/></td></tr>
<tr class="separator:af817535e020983b8144780d8f1337147"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Construction</div></td></tr>
<tr class="memitem:a4d97aabb481db628c39b8a2dd5fc68b8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a4d97aabb481db628c39b8a2dd5fc68b8">CL_IODevice</a> ()</td></tr>
<tr class="memdesc:a4d97aabb481db628c39b8a2dd5fc68b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a null instance.  <a href="#a4d97aabb481db628c39b8a2dd5fc68b8">More...</a><br/></td></tr>
<tr class="separator:a4d97aabb481db628c39b8a2dd5fc68b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a913c8035ed605da83e010e892a30251b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a913c8035ed605da83e010e892a30251b">CL_IODevice</a> (<a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a> *provider)</td></tr>
<tr class="memdesc:a913c8035ed605da83e010e892a30251b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a IODevice.  <a href="#a913c8035ed605da83e010e892a30251b">More...</a><br/></td></tr>
<tr class="separator:a913c8035ed605da83e010e892a30251b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4be27be74e24cc8a2573d5ab84c3082"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#af4be27be74e24cc8a2573d5ab84c3082">~CL_IODevice</a> ()</td></tr>
<tr class="separator:af4be27be74e24cc8a2573d5ab84c3082"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Attributes</div></td></tr>
<tr class="memitem:a162b0d360d23f1b55ab5348fcb990a8a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a162b0d360d23f1b55ab5348fcb990a8a">is_null</a> () const </td></tr>
<tr class="memdesc:a162b0d360d23f1b55ab5348fcb990a8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this object is invalid.  <a href="#a162b0d360d23f1b55ab5348fcb990a8a">More...</a><br/></td></tr>
<tr class="separator:a162b0d360d23f1b55ab5348fcb990a8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aaa5e271d4d6ef83e2fbdcc379e9f24"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a5aaa5e271d4d6ef83e2fbdcc379e9f24">throw_if_null</a> () const </td></tr>
<tr class="memdesc:a5aaa5e271d4d6ef83e2fbdcc379e9f24"><td class="mdescLeft">&#160;</td><td class="mdescRight">Throw an exception if this object is invalid.  <a href="#a5aaa5e271d4d6ef83e2fbdcc379e9f24">More...</a><br/></td></tr>
<tr class="separator:a5aaa5e271d4d6ef83e2fbdcc379e9f24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80957b8944ad705b3d04f082f6531cf8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a80957b8944ad705b3d04f082f6531cf8">get_size</a> () const </td></tr>
<tr class="memdesc:a80957b8944ad705b3d04f082f6531cf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of data stream.  <a href="#a80957b8944ad705b3d04f082f6531cf8">More...</a><br/></td></tr>
<tr class="separator:a80957b8944ad705b3d04f082f6531cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab14cd8f579c757425d6ff8ac0258120"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aab14cd8f579c757425d6ff8ac0258120">get_position</a> () const </td></tr>
<tr class="memdesc:aab14cd8f579c757425d6ff8ac0258120"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the position in the data stream.  <a href="#aab14cd8f579c757425d6ff8ac0258120">More...</a><br/></td></tr>
<tr class="separator:aab14cd8f579c757425d6ff8ac0258120"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b2240ba2235d8c62fe25523879e7c0d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a6b2240ba2235d8c62fe25523879e7c0d">is_little_endian</a> () const </td></tr>
<tr class="memdesc:a6b2240ba2235d8c62fe25523879e7c0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the input source is in little endian mode.  <a href="#a6b2240ba2235d8c62fe25523879e7c0d">More...</a><br/></td></tr>
<tr class="separator:a6b2240ba2235d8c62fe25523879e7c0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6aeae368b821088803d8bd7d6a58f215"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a6aeae368b821088803d8bd7d6a58f215">get_provider</a> () const </td></tr>
<tr class="memdesc:a6aeae368b821088803d8bd7d6a58f215"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the provider for this object.  <a href="#a6aeae368b821088803d8bd7d6a58f215">More...</a><br/></td></tr>
<tr class="separator:a6aeae368b821088803d8bd7d6a58f215"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84da6dbe7dfe414b5f5be85e87e14342"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a84da6dbe7dfe414b5f5be85e87e14342">get_provider</a> ()</td></tr>
<tr class="memdesc:a84da6dbe7dfe414b5f5be85e87e14342"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the provider for this object.  <a href="#a84da6dbe7dfe414b5f5be85e87e14342">More...</a><br/></td></tr>
<tr class="separator:a84da6dbe7dfe414b5f5be85e87e14342"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Operations</div></td></tr>
<tr class="memitem:afcb8a34b6abf90e541d68734598e407e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#afcb8a34b6abf90e541d68734598e407e">send</a> (const void *data, int len, bool send_all=true)</td></tr>
<tr class="memdesc:afcb8a34b6abf90e541d68734598e407e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send data to device.  <a href="#afcb8a34b6abf90e541d68734598e407e">More...</a><br/></td></tr>
<tr class="separator:afcb8a34b6abf90e541d68734598e407e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a555af6efd776a62b9abfcbb9c71bd782"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a555af6efd776a62b9abfcbb9c71bd782">receive</a> (void *data, int len, bool receive_all=true)</td></tr>
<tr class="memdesc:a555af6efd776a62b9abfcbb9c71bd782"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive data from device.  <a href="#a555af6efd776a62b9abfcbb9c71bd782">More...</a><br/></td></tr>
<tr class="separator:a555af6efd776a62b9abfcbb9c71bd782"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f43354c151299cd36a1ddf9845c8f0e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a0f43354c151299cd36a1ddf9845c8f0e">peek</a> (void *data, int len)</td></tr>
<tr class="memdesc:a0f43354c151299cd36a1ddf9845c8f0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Peek data from device (data is left in the buffer).  <a href="#a0f43354c151299cd36a1ddf9845c8f0e">More...</a><br/></td></tr>
<tr class="separator:a0f43354c151299cd36a1ddf9845c8f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabfd2f98fa83fd2c3fdb5e80012cf4ce"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aabfd2f98fa83fd2c3fdb5e80012cf4ce">seek</a> (int position, <a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147">SeekMode</a> mode=<a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147a6067e86f840a44ddafe49349c7a028b6">seek_set</a>)</td></tr>
<tr class="memdesc:aabfd2f98fa83fd2c3fdb5e80012cf4ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Seek in data stream.  <a href="#aabfd2f98fa83fd2c3fdb5e80012cf4ce">More...</a><br/></td></tr>
<tr class="separator:aabfd2f98fa83fd2c3fdb5e80012cf4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac226fa00f860b402ab9128db04f02463"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#ac226fa00f860b402ab9128db04f02463">read</a> (void *data, int len, bool receive_all=true)</td></tr>
<tr class="memdesc:ac226fa00f860b402ab9128db04f02463"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias for receive(data, len, receive_all)  <a href="#ac226fa00f860b402ab9128db04f02463">More...</a><br/></td></tr>
<tr class="separator:ac226fa00f860b402ab9128db04f02463"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a532b8046dd734578eeb8ff60c9f49416"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a532b8046dd734578eeb8ff60c9f49416">write</a> (const void *data, int len, bool send_all=true)</td></tr>
<tr class="memdesc:a532b8046dd734578eeb8ff60c9f49416"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias for send(data, len, send_all)  <a href="#a532b8046dd734578eeb8ff60c9f49416">More...</a><br/></td></tr>
<tr class="separator:a532b8046dd734578eeb8ff60c9f49416"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff9cf532b349cc9724627b264b27c56b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aff9cf532b349cc9724627b264b27c56b">set_system_mode</a> ()</td></tr>
<tr class="memdesc:aff9cf532b349cc9724627b264b27c56b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes input data endianess to the local systems mode.  <a href="#aff9cf532b349cc9724627b264b27c56b">More...</a><br/></td></tr>
<tr class="separator:aff9cf532b349cc9724627b264b27c56b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7c426dfdc335a7dc13e5b784b20f9df"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#ad7c426dfdc335a7dc13e5b784b20f9df">set_big_endian_mode</a> ()</td></tr>
<tr class="memdesc:ad7c426dfdc335a7dc13e5b784b20f9df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes input data endianess to big endian mode. (Default is little endian)  <a href="#ad7c426dfdc335a7dc13e5b784b20f9df">More...</a><br/></td></tr>
<tr class="separator:ad7c426dfdc335a7dc13e5b784b20f9df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23831b48e0689cdc4057aebf13374e67"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a23831b48e0689cdc4057aebf13374e67">set_little_endian_mode</a> ()</td></tr>
<tr class="memdesc:a23831b48e0689cdc4057aebf13374e67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes input data endianess to little endian mode. This is the default setting.  <a href="#a23831b48e0689cdc4057aebf13374e67">More...</a><br/></td></tr>
<tr class="separator:a23831b48e0689cdc4057aebf13374e67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3faf5a7288be802dd2eb52e9d8f30ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#ad3faf5a7288be802dd2eb52e9d8f30ac">write_int64</a> (<a class="el" href="group__clanCore__System.html#gaa2b4edadb0beb11c93b52b47eb22eeb1">cl_byte64</a> data)</td></tr>
<tr class="memdesc:ad3faf5a7288be802dd2eb52e9d8f30ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a signed 64 bit integer to output source.  <a href="#ad3faf5a7288be802dd2eb52e9d8f30ac">More...</a><br/></td></tr>
<tr class="separator:ad3faf5a7288be802dd2eb52e9d8f30ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac723052e3ca9f957e66120376fc3453c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#ac723052e3ca9f957e66120376fc3453c">write_uint64</a> (<a class="el" href="group__clanCore__System.html#gac9287d777cdd90e46eafe13b149f0048">cl_ubyte64</a> data)</td></tr>
<tr class="memdesc:ac723052e3ca9f957e66120376fc3453c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an unsigned 64 bit integer to output source.  <a href="#ac723052e3ca9f957e66120376fc3453c">More...</a><br/></td></tr>
<tr class="separator:ac723052e3ca9f957e66120376fc3453c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b070f53d074f5ccc6e5490487ad1d2c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a3b070f53d074f5ccc6e5490487ad1d2c">write_int32</a> (<a class="el" href="group__clanCore__System.html#ga5b79427b0457649a359c574315cac728">cl_byte32</a> data)</td></tr>
<tr class="memdesc:a3b070f53d074f5ccc6e5490487ad1d2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a signed 32 bit integer to output source.  <a href="#a3b070f53d074f5ccc6e5490487ad1d2c">More...</a><br/></td></tr>
<tr class="separator:a3b070f53d074f5ccc6e5490487ad1d2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a835ec7bd0bcdc8f2779817add992dc26"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a835ec7bd0bcdc8f2779817add992dc26">write_uint32</a> (<a class="el" href="group__clanCore__System.html#ga5bfdd1fea9c1ebdd5b37d6ae1eb0cff2">cl_ubyte32</a> data)</td></tr>
<tr class="memdesc:a835ec7bd0bcdc8f2779817add992dc26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an unsigned 32 bit integer to output source.  <a href="#a835ec7bd0bcdc8f2779817add992dc26">More...</a><br/></td></tr>
<tr class="separator:a835ec7bd0bcdc8f2779817add992dc26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a974a85493042b7506e89ea435ec7b2d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a974a85493042b7506e89ea435ec7b2d7">write_int16</a> (<a class="el" href="group__clanCore__System.html#ga02f2de8d86d6a2965e6b4b7e556cc496">cl_byte16</a> data)</td></tr>
<tr class="memdesc:a974a85493042b7506e89ea435ec7b2d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a signed 16 bit integer to output source.  <a href="#a974a85493042b7506e89ea435ec7b2d7">More...</a><br/></td></tr>
<tr class="separator:a974a85493042b7506e89ea435ec7b2d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62f529059af6ade860cfe2d331b43105"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a62f529059af6ade860cfe2d331b43105">write_uint16</a> (<a class="el" href="group__clanCore__System.html#gaa509bbe1b1df17c7d1f07629235b591e">cl_ubyte16</a> data)</td></tr>
<tr class="memdesc:a62f529059af6ade860cfe2d331b43105"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an unsigned 16 bit integer to output source.  <a href="#a62f529059af6ade860cfe2d331b43105">More...</a><br/></td></tr>
<tr class="separator:a62f529059af6ade860cfe2d331b43105"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71a65aad032a5bad12972a4472c7e2e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a71a65aad032a5bad12972a4472c7e2e0">write_int8</a> (<a class="el" href="group__clanCore__System.html#ga427977e16644a3cafbf1feffe9167dea">cl_byte8</a> data)</td></tr>
<tr class="memdesc:a71a65aad032a5bad12972a4472c7e2e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a signed 8 bit integer to output source.  <a href="#a71a65aad032a5bad12972a4472c7e2e0">More...</a><br/></td></tr>
<tr class="separator:a71a65aad032a5bad12972a4472c7e2e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a632881bfa240acc1f82d893cbfa1a68c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a632881bfa240acc1f82d893cbfa1a68c">write_uint8</a> (<a class="el" href="group__clanCore__System.html#ga20bec4bbe1e01f68d2717319bfc0ad3d">cl_ubyte8</a> data)</td></tr>
<tr class="memdesc:a632881bfa240acc1f82d893cbfa1a68c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes an unsigned 8 bit integer to output source.  <a href="#a632881bfa240acc1f82d893cbfa1a68c">More...</a><br/></td></tr>
<tr class="separator:a632881bfa240acc1f82d893cbfa1a68c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac9a223d7541adca37a6c6b2f7bed3c2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aac9a223d7541adca37a6c6b2f7bed3c2">write_float</a> (float data)</td></tr>
<tr class="memdesc:aac9a223d7541adca37a6c6b2f7bed3c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a float to output source.  <a href="#aac9a223d7541adca37a6c6b2f7bed3c2">More...</a><br/></td></tr>
<tr class="separator:aac9a223d7541adca37a6c6b2f7bed3c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40bf9529e2784c220f10b626b924a2f1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a40bf9529e2784c220f10b626b924a2f1">write_string_a</a> (const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;str)</td></tr>
<tr class="memdesc:a40bf9529e2784c220f10b626b924a2f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a string to the output source.  <a href="#a40bf9529e2784c220f10b626b924a2f1">More...</a><br/></td></tr>
<tr class="separator:a40bf9529e2784c220f10b626b924a2f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d800d371cdeac107fa32abd3b9b5185"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a9d800d371cdeac107fa32abd3b9b5185">write_string_nul</a> (const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;str)</td></tr>
<tr class="memdesc:a9d800d371cdeac107fa32abd3b9b5185"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a nul terminated string to the output source.  <a href="#a9d800d371cdeac107fa32abd3b9b5185">More...</a><br/></td></tr>
<tr class="separator:a9d800d371cdeac107fa32abd3b9b5185"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a943fd4c6e5eaaeec80c157461b12504e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a943fd4c6e5eaaeec80c157461b12504e">write_string_text</a> (const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;str)</td></tr>
<tr class="memdesc:a943fd4c6e5eaaeec80c157461b12504e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a text string to the output source.  <a href="#a943fd4c6e5eaaeec80c157461b12504e">More...</a><br/></td></tr>
<tr class="separator:a943fd4c6e5eaaeec80c157461b12504e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a099608714792893924c1292a2673878e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#gaa2b4edadb0beb11c93b52b47eb22eeb1">cl_byte64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a099608714792893924c1292a2673878e">read_int64</a> ()</td></tr>
<tr class="memdesc:a099608714792893924c1292a2673878e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a signed 64 bit integer from input source.  <a href="#a099608714792893924c1292a2673878e">More...</a><br/></td></tr>
<tr class="separator:a099608714792893924c1292a2673878e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66cb6dfaa4faa59b5690572a8b8d19f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#gac9287d777cdd90e46eafe13b149f0048">cl_ubyte64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a66cb6dfaa4faa59b5690572a8b8d19f9">read_uint64</a> ()</td></tr>
<tr class="memdesc:a66cb6dfaa4faa59b5690572a8b8d19f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an unsigned 64 bit integer from input source.  <a href="#a66cb6dfaa4faa59b5690572a8b8d19f9">More...</a><br/></td></tr>
<tr class="separator:a66cb6dfaa4faa59b5690572a8b8d19f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1030003a4f984f2738bb70e26529fd2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga5b79427b0457649a359c574315cac728">cl_byte32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a1030003a4f984f2738bb70e26529fd2c">read_int32</a> ()</td></tr>
<tr class="memdesc:a1030003a4f984f2738bb70e26529fd2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a signed 32 bit integer from input source.  <a href="#a1030003a4f984f2738bb70e26529fd2c">More...</a><br/></td></tr>
<tr class="separator:a1030003a4f984f2738bb70e26529fd2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a821d44eb86e50067c079772221f5d01b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga5bfdd1fea9c1ebdd5b37d6ae1eb0cff2">cl_ubyte32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a821d44eb86e50067c079772221f5d01b">read_uint32</a> ()</td></tr>
<tr class="memdesc:a821d44eb86e50067c079772221f5d01b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an unsigned 32 bit integer from input source.  <a href="#a821d44eb86e50067c079772221f5d01b">More...</a><br/></td></tr>
<tr class="separator:a821d44eb86e50067c079772221f5d01b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab63c17bda9c6520e8010c4b0a1f3332"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga02f2de8d86d6a2965e6b4b7e556cc496">cl_byte16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aab63c17bda9c6520e8010c4b0a1f3332">read_int16</a> ()</td></tr>
<tr class="memdesc:aab63c17bda9c6520e8010c4b0a1f3332"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a signed 16 bit integer from input source.  <a href="#aab63c17bda9c6520e8010c4b0a1f3332">More...</a><br/></td></tr>
<tr class="separator:aab63c17bda9c6520e8010c4b0a1f3332"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a059c00c7e3479e207d4ff941bfcef17a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#gaa509bbe1b1df17c7d1f07629235b591e">cl_ubyte16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a059c00c7e3479e207d4ff941bfcef17a">read_uint16</a> ()</td></tr>
<tr class="memdesc:a059c00c7e3479e207d4ff941bfcef17a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an unsigned 16 bit integer from input source.  <a href="#a059c00c7e3479e207d4ff941bfcef17a">More...</a><br/></td></tr>
<tr class="separator:a059c00c7e3479e207d4ff941bfcef17a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7ef3919daa9ed68e7962148fa4b9a0c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga427977e16644a3cafbf1feffe9167dea">cl_byte8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#ab7ef3919daa9ed68e7962148fa4b9a0c">read_int8</a> ()</td></tr>
<tr class="memdesc:ab7ef3919daa9ed68e7962148fa4b9a0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a signed 8 bit integer from input source.  <a href="#ab7ef3919daa9ed68e7962148fa4b9a0c">More...</a><br/></td></tr>
<tr class="separator:ab7ef3919daa9ed68e7962148fa4b9a0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1947d9b107f482ea26ec6ae18050e164"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga20bec4bbe1e01f68d2717319bfc0ad3d">cl_ubyte8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a1947d9b107f482ea26ec6ae18050e164">read_uint8</a> ()</td></tr>
<tr class="memdesc:a1947d9b107f482ea26ec6ae18050e164"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an unsigned 8 bit integer from input source.  <a href="#a1947d9b107f482ea26ec6ae18050e164">More...</a><br/></td></tr>
<tr class="separator:a1947d9b107f482ea26ec6ae18050e164"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec04b44e9cc3d5a74f5134e6ee5274c6"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aec04b44e9cc3d5a74f5134e6ee5274c6">read_float</a> ()</td></tr>
<tr class="memdesc:aec04b44e9cc3d5a74f5134e6ee5274c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a float from input source.  <a href="#aec04b44e9cc3d5a74f5134e6ee5274c6">More...</a><br/></td></tr>
<tr class="separator:aec04b44e9cc3d5a74f5134e6ee5274c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a516cfcc0a9a8a7a9aa69a7175e161f81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCL__String8.html">CL_String8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a516cfcc0a9a8a7a9aa69a7175e161f81">read_string_a</a> ()</td></tr>
<tr class="memdesc:a516cfcc0a9a8a7a9aa69a7175e161f81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a string from the input source.  <a href="#a516cfcc0a9a8a7a9aa69a7175e161f81">More...</a><br/></td></tr>
<tr class="separator:a516cfcc0a9a8a7a9aa69a7175e161f81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6788567189695aff55bf7c5740b8cbc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCL__String8.html">CL_String8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a6788567189695aff55bf7c5740b8cbc0">read_string_nul</a> ()</td></tr>
<tr class="memdesc:a6788567189695aff55bf7c5740b8cbc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a nul terminated string from the input source.  <a href="#a6788567189695aff55bf7c5740b8cbc0">More...</a><br/></td></tr>
<tr class="separator:a6788567189695aff55bf7c5740b8cbc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f9f80534fd97d3e97a9b501afce2b4d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCL__String8.html">CL_String8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a0f9f80534fd97d3e97a9b501afce2b4d">read_string_text</a> (const char *skip_initial_chars, const char *read_until_chars, bool allow_eof=true)</td></tr>
<tr class="memdesc:a0f9f80534fd97d3e97a9b501afce2b4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a string from the input source where the source is a text file.  <a href="#a0f9f80534fd97d3e97a9b501afce2b4d">More...</a><br/></td></tr>
<tr class="separator:a0f9f80534fd97d3e97a9b501afce2b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaafd1b464ea66479ba380c0871ad343d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCL__IODevice.html">CL_IODevice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#aaafd1b464ea66479ba380c0871ad343d">duplicate</a> ()</td></tr>
<tr class="memdesc:aaafd1b464ea66479ba380c0871ad343d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new <a class="el" href="classCL__IODevice.html" title="I/O Device interface. ">CL_IODevice</a> referencing the same resource.  <a href="#aaafd1b464ea66479ba380c0871ad343d">More...</a><br/></td></tr>
<tr class="separator:aaafd1b464ea66479ba380c0871ad343d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Implementation</div></td></tr>
<tr class="memitem:a0db2a72cc74e28a30de029bab9ad25c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__clanCore__System.html#ga7cb9c8948833d1bc13cffda88aff832b">CL_SharedPtr</a>&lt; CL_IODevice_Impl &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCL__IODevice.html#a0db2a72cc74e28a30de029bab9ad25c5">impl</a></td></tr>
<tr class="separator:a0db2a72cc74e28a30de029bab9ad25c5"><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>I/O Device interface. </p>
<p>This class can store basic datatypes and retain portability (using the specified endian mode)<br/>
 The supported datatypes are: cl_byte64, cl_byte32, cl_byte16 and cl_byte8<br/>
 The CL_String datatype is supported - Using Size(cl_byte32), Charactor Data (<a class="el" href="classCL__StringRef8.html" title="String reference template. ">CL_StringRef8</a> characters)  </div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="af817535e020983b8144780d8f1337147"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147">CL_IODevice::SeekMode</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Seeking modes. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="af817535e020983b8144780d8f1337147a6067e86f840a44ddafe49349c7a028b6"></a>seek_set</em>&nbsp;</td><td class="fielddoc">
<p>Set to a specific value from the start. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af817535e020983b8144780d8f1337147aaf071a8e107edd86c3c5f90b184f83f4"></a>seek_cur</em>&nbsp;</td><td class="fielddoc">
<p>Set relative to the current position. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af817535e020983b8144780d8f1337147adff9ffa5611c42f20cd44131e7fa59dc"></a>seek_end</em>&nbsp;</td><td class="fielddoc">
<p>Set to a specific value from the end (use negative position) </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a4d97aabb481db628c39b8a2dd5fc68b8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CL_IODevice::CL_IODevice </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a null instance. </p>

</div>
</div>
<a class="anchor" id="a913c8035ed605da83e010e892a30251b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CL_IODevice::CL_IODevice </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a> *&#160;</td>
          <td class="paramname"><em>provider</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a IODevice. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">provider</td><td>= IODevice Provider </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af4be27be74e24cc8a2573d5ab84c3082"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CL_IODevice::~CL_IODevice </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aaafd1b464ea66479ba380c0871ad343d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCL__IODevice.html">CL_IODevice</a> CL_IODevice::duplicate </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a new <a class="el" href="classCL__IODevice.html" title="I/O Device interface. ">CL_IODevice</a> referencing the same resource. </p>

</div>
</div>
<a class="anchor" id="aab14cd8f579c757425d6ff8ac0258120"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::get_position </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the position in the data stream. </p>
<p>Returns -1 if the position is unknown.</p>
<dl class="section return"><dt>Returns</dt><dd>The size (-1 if position is unknown) </dd></dl>

</div>
</div>
<a class="anchor" id="a6aeae368b821088803d8bd7d6a58f215"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a>* CL_IODevice::get_provider </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the provider for this object. </p>

</div>
</div>
<a class="anchor" id="a84da6dbe7dfe414b5f5be85e87e14342"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCL__IODeviceProvider.html">CL_IODeviceProvider</a>* CL_IODevice::get_provider </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the provider for this object. </p>

</div>
</div>
<a class="anchor" id="a80957b8944ad705b3d04f082f6531cf8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::get_size </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the size of data stream. </p>
<p>Returns -1 if the size is unknown.</p>
<dl class="section return"><dt>Returns</dt><dd>The size (-1 if size is unknown) </dd></dl>

</div>
</div>
<a class="anchor" id="a6b2240ba2235d8c62fe25523879e7c0d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CL_IODevice::is_little_endian </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns true if the input source is in little endian mode. </p>
<dl class="section return"><dt>Returns</dt><dd>true if little endian </dd></dl>

</div>
</div>
<a class="anchor" id="a162b0d360d23f1b55ab5348fcb990a8a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool CL_IODevice::is_null </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">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns true if this object is invalid. </p>

</div>
</div>
<a class="anchor" id="a0f43354c151299cd36a1ddf9845c8f0e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::peek </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Peek data from device (data is left in the buffer). </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Data to receive </td></tr>
    <tr><td class="paramname">len</td><td>Maximum length of data to receive </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of data received. </dd></dl>

</div>
</div>
<a class="anchor" id="ac226fa00f860b402ab9128db04f02463"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::read </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>receive_all</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Alias for receive(data, len, receive_all) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Data to receive </td></tr>
    <tr><td class="paramname">len</td><td>Length to receive </td></tr>
    <tr><td class="paramname">receive_all</td><td>true to receive all the data. false = receive part of the data, if it would block</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of data received </dd></dl>

</div>
</div>
<a class="anchor" id="aec04b44e9cc3d5a74f5134e6ee5274c6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float CL_IODevice::read_float </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a float from input source. </p>
<p>Warning, this is not portable </p>
<dl class="section return"><dt>Returns</dt><dd>The float read. </dd></dl>

</div>
</div>
<a class="anchor" id="aab63c17bda9c6520e8010c4b0a1f3332"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga02f2de8d86d6a2965e6b4b7e556cc496">cl_byte16</a> CL_IODevice::read_int16 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a signed 16 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a1030003a4f984f2738bb70e26529fd2c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga5b79427b0457649a359c574315cac728">cl_byte32</a> CL_IODevice::read_int32 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a signed 32 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a099608714792893924c1292a2673878e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#gaa2b4edadb0beb11c93b52b47eb22eeb1">cl_byte64</a> CL_IODevice::read_int64 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a signed 64 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="ab7ef3919daa9ed68e7962148fa4b9a0c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga427977e16644a3cafbf1feffe9167dea">cl_byte8</a> CL_IODevice::read_int8 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a signed 8 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a516cfcc0a9a8a7a9aa69a7175e161f81"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCL__String8.html">CL_String8</a> CL_IODevice::read_string_a </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a string from the input source. </p>
<p>The binary format expected in the input source is first an uint32 telling the length of the string, and then the string itself.</p>
<dl class="section return"><dt>Returns</dt><dd>The string read. </dd></dl>

</div>
</div>
<a class="anchor" id="a6788567189695aff55bf7c5740b8cbc0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCL__String8.html">CL_String8</a> CL_IODevice::read_string_nul </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a nul terminated string from the input source. </p>
<p>The binary format expected in the input source is a nul terminated string. (The NUL termintor is read, so that the file position is set after the NUL) </p>
<dl class="section return"><dt>Returns</dt><dd>The string read. </dd></dl>

</div>
</div>
<a class="anchor" id="a0f9f80534fd97d3e97a9b501afce2b4d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCL__String8.html">CL_String8</a> CL_IODevice::read_string_text </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>skip_initial_chars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>read_until_chars</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>allow_eof</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads a string from the input source where the source is a text file. </p>
<p>After reading the input source up to "read_until_chars", the file position is set to the first character that was not read. If the file contains NUL characters, then the input is read up to the NUL character, and the file position is set AFTER the NUL)</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">skip_initial_chars</td><td>Ignore any of these characters at the start of the string. NULL = Do not ignore any characters </td></tr>
    <tr><td class="paramname">read_until_chars</td><td>Read from the input until any of these characters are found. NULL = Read until the end of the file </td></tr>
    <tr><td class="paramname">allow_eof</td><td>Allow EOF </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The string read. </dd></dl>

</div>
</div>
<a class="anchor" id="a059c00c7e3479e207d4ff941bfcef17a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#gaa509bbe1b1df17c7d1f07629235b591e">cl_ubyte16</a> CL_IODevice::read_uint16 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads an unsigned 16 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a821d44eb86e50067c079772221f5d01b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga5bfdd1fea9c1ebdd5b37d6ae1eb0cff2">cl_ubyte32</a> CL_IODevice::read_uint32 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads an unsigned 32 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a66cb6dfaa4faa59b5690572a8b8d19f9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#gac9287d777cdd90e46eafe13b149f0048">cl_ubyte64</a> CL_IODevice::read_uint64 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads an unsigned 64 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a1947d9b107f482ea26ec6ae18050e164"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga20bec4bbe1e01f68d2717319bfc0ad3d">cl_ubyte8</a> CL_IODevice::read_uint8 </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reads an unsigned 8 bit integer from input source. </p>
<dl class="section return"><dt>Returns</dt><dd>The integer read. </dd></dl>

</div>
</div>
<a class="anchor" id="a555af6efd776a62b9abfcbb9c71bd782"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::receive </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>receive_all</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Receive data from device. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Data to receive </td></tr>
    <tr><td class="paramname">len</td><td>Length to receive </td></tr>
    <tr><td class="paramname">receive_all</td><td>true to receive all the data. false = receive part of the data, if it would block</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of data received </dd></dl>

</div>
</div>
<a class="anchor" id="aabfd2f98fa83fd2c3fdb5e80012cf4ce"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CL_IODevice::seek </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147">SeekMode</a>&#160;</td>
          <td class="paramname"><em>mode</em> = <code><a class="el" href="classCL__IODevice.html#af817535e020983b8144780d8f1337147a6067e86f840a44ddafe49349c7a028b6">seek_set</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Seek in data stream. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">position</td><td>Position to use (usage depends on the seek mode) </td></tr>
    <tr><td class="paramname">mode</td><td>Seek mode </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>false = Failed </dd></dl>

</div>
</div>
<a class="anchor" id="afcb8a34b6abf90e541d68734598e407e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::send </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>send_all</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Send data to device. </p>
<p>If the device databuffer is too small, it will be extended (ie grow memory block size or file size) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Data to send </td></tr>
    <tr><td class="paramname">len</td><td>Length to send </td></tr>
    <tr><td class="paramname">send_all</td><td>true to send all the data. false = send part of the data, if it would block </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of data sent </dd></dl>

</div>
</div>
<a class="anchor" id="ad7c426dfdc335a7dc13e5b784b20f9df"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::set_big_endian_mode </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes input data endianess to big endian mode. (Default is little endian) </p>

</div>
</div>
<a class="anchor" id="a23831b48e0689cdc4057aebf13374e67"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::set_little_endian_mode </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes input data endianess to little endian mode. This is the default setting. </p>

</div>
</div>
<a class="anchor" id="aff9cf532b349cc9724627b264b27c56b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::set_system_mode </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes input data endianess to the local systems mode. </p>

</div>
</div>
<a class="anchor" id="a5aaa5e271d4d6ef83e2fbdcc379e9f24"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::throw_if_null </td>
          <td>(</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Throw an exception if this object is invalid. </p>

</div>
</div>
<a class="anchor" id="a532b8046dd734578eeb8ff60c9f49416"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CL_IODevice::write </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>send_all</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Alias for send(data, len, send_all) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Data to send </td></tr>
    <tr><td class="paramname">len</td><td>Length to send </td></tr>
    <tr><td class="paramname">send_all</td><td>true to send all the data. false = send part of the data, if it would block</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>size of data sent </dd></dl>

</div>
</div>
<a class="anchor" id="aac9a223d7541adca37a6c6b2f7bed3c2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_float </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a float to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>= Float to write</td></tr>
  </table>
  </dd>
</dl>
<p>Warning, this is not portable. </p>

</div>
</div>
<a class="anchor" id="a974a85493042b7506e89ea435ec7b2d7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_int16 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#ga02f2de8d86d6a2965e6b4b7e556cc496">cl_byte16</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a signed 16 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3b070f53d074f5ccc6e5490487ad1d2c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_int32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#ga5b79427b0457649a359c574315cac728">cl_byte32</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a signed 32 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad3faf5a7288be802dd2eb52e9d8f30ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_int64 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#gaa2b4edadb0beb11c93b52b47eb22eeb1">cl_byte64</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a signed 64 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a71a65aad032a5bad12972a4472c7e2e0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_int8 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#ga427977e16644a3cafbf1feffe9167dea">cl_byte8</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a signed 8 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a40bf9529e2784c220f10b626b924a2f1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_string_a </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;&#160;</td>
          <td class="paramname"><em>str</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a string to the output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>String to write</td></tr>
  </table>
  </dd>
</dl>
<p>The binary format written to the output source is first an uint32 telling the length of the string, and then the string itself. </p>

</div>
</div>
<a class="anchor" id="a9d800d371cdeac107fa32abd3b9b5185"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_string_nul </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;&#160;</td>
          <td class="paramname"><em>str</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a nul terminated string to the output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>String to write</td></tr>
  </table>
  </dd>
</dl>
<p>The binary format written to the output source is the string content followed by the NUL character. </p>

</div>
</div>
<a class="anchor" id="a943fd4c6e5eaaeec80c157461b12504e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_string_text </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCL__StringRef8.html">CL_StringRef8</a> &amp;&#160;</td>
          <td class="paramname"><em>str</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes a text string to the output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>String to write</td></tr>
  </table>
  </dd>
</dl>
<p>The binary format written to the output source is the string content appended with a native newline. On Windows the newline is CR+LF sequence and on other platforms it is only LF character. This function is intended for use with text files. </p>

</div>
</div>
<a class="anchor" id="a62f529059af6ade860cfe2d331b43105"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_uint16 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#gaa509bbe1b1df17c7d1f07629235b591e">cl_ubyte16</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes an unsigned 16 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a835ec7bd0bcdc8f2779817add992dc26"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_uint32 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#ga5bfdd1fea9c1ebdd5b37d6ae1eb0cff2">cl_ubyte32</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes an unsigned 32 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac723052e3ca9f957e66120376fc3453c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_uint64 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#gac9287d777cdd90e46eafe13b149f0048">cl_ubyte64</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes an unsigned 64 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a632881bfa240acc1f82d893cbfa1a68c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CL_IODevice::write_uint8 </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__clanCore__System.html#ga20bec4bbe1e01f68d2717319bfc0ad3d">cl_ubyte8</a>&#160;</td>
          <td class="paramname"><em>data</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Writes an unsigned 8 bit integer to output source. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>Integer to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a0db2a72cc74e28a30de029bab9ad25c5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__clanCore__System.html#ga7cb9c8948833d1bc13cffda88aff832b">CL_SharedPtr</a>&lt;CL_IODevice_Impl&gt; CL_IODevice::impl</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classCL__HTTPServerConnection.html#ab2b0f238dbb88485aaa48ea4b585f179">CL_HTTPServerConnection::is_null()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="iodevice_8h_source.html">iodevice.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jun 14 2013 13:05:57 for ClanLib by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.4
</small></address>
</body>
</html>