athena/classathena_1_1io_1_1_memor...

984 lines
135 KiB
HTML
Raw Permalink Normal View History

2016-09-17 20:12:02 +00:00
<!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.11"/>
<title>Athena IO Library: athena::io::MemoryReader 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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</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">Athena IO Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</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 id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classathena_1_1io_1_1_memory_reader.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classathena_1_1io_1_1_memory_reader-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">athena::io::MemoryReader Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>A Stream class for reading data from a memory position.
<a href="classathena_1_1io_1_1_memory_reader.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="_memory_reader_8hpp_source.html">MemoryReader.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for athena::io::MemoryReader:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader__inherit__graph.png" border="0" usemap="#athena_1_1io_1_1_memory_reader_inherit__map" alt="Inheritance graph"/></div>
<map name="athena_1_1io_1_1_memory_reader_inherit__map" id="athena_1_1io_1_1_memory_reader_inherit__map">
<area shape="rect" id="node4" href="classathena_1_1io_1_1_memory_copy_reader.html" title="{athena::io::MemoryCopyReader\n|# m_dataCopy\l# m_filepath\l|+ MemoryCopyReader()\l+ MemoryCopyReader()\l+ setData()\l# loadData()\l}" alt="" coords="544,880,771,1016"/>
<area shape="rect" id="node2" href="classathena_1_1io_1_1_i_stream_reader.html" title="The IStreamReader class defines a basic API for reading from streams, Implementors are provided with ..." alt="" coords="562,307,753,531"/>
<area shape="rect" id="node3" href="classathena_1_1io_1_1_i_stream.html" title="{athena::io::IStream\n|# m_hasError\l# m_endian\l|+ IStream()\l+ ~IStream()\l+ setEndian()\l+ endian()\l+ isBigEndian()\l+ isLittleEndian()\l+ seek()\l+ atEnd()\l+ position()\l+ length()\l+ hasError()\l# setError()\l}" alt="" coords="584,5,731,259"/>
<area shape="rect" id="node5" href="classathena_1_1io_1_1_a_l_t_t_p_file_reader.html" title="A Link to the Past save data reader class. " alt="" coords="5,1071,205,1178"/>
<area shape="rect" id="node6" href="classathena_1_1io_1_1_m_c_file_reader.html" title="The Minish Cap Save save data reader class. " alt="" coords="230,1071,413,1178"/>
<area shape="rect" id="node7" href="classathena_1_1io_1_1_skyward_sword_file_reader.html" title="{athena::io::SkywardSword\lFileReader\n||+ SkywardSwordFileReader()\l+ SkywardSwordFileReader()\l+ read()\l}" alt="" coords="437,1064,648,1185"/>
<area shape="rect" id="node8" href="classathena_1_1io_1_1_sprite_file_reader.html" title="{athena::io::SpriteFileReader\n||+ SpriteFileReader()\l+ SpriteFileReader()\l+ readFile()\l}" alt="" coords="672,1071,872,1178"/>
<area shape="rect" id="node9" href="classathena_1_1io_1_1_wii_save_reader.html" title="Wii data.bin reader class. " alt="" coords="897,1071,1090,1178"/>
<area shape="rect" id="node10" href="classathena_1_1io_1_1_z_quest_file_reader.html" title="The ZQuestFileReader class. " alt="" coords="1114,1071,1323,1178"/>
</map>
</div>
<div class="dynheader">
Collaboration diagram for athena::io::MemoryReader:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader__coll__graph.png" border="0" usemap="#athena_1_1io_1_1_memory_reader_coll__map" alt="Collaboration graph"/></div>
<map name="athena_1_1io_1_1_memory_reader_coll__map" id="athena_1_1io_1_1_memory_reader_coll__map">
<area shape="rect" id="node2" href="classathena_1_1io_1_1_i_stream_reader.html" title="The IStreamReader class defines a basic API for reading from streams, Implementors are provided with ..." alt="" coords="7,307,197,531"/>
<area shape="rect" id="node3" href="classathena_1_1io_1_1_i_stream.html" title="{athena::io::IStream\n|# m_hasError\l# m_endian\l|+ IStream()\l+ ~IStream()\l+ setEndian()\l+ endian()\l+ isBigEndian()\l+ isLittleEndian()\l+ seek()\l+ atEnd()\l+ position()\l+ length()\l+ hasError()\l# setError()\l}" alt="" coords="29,5,175,259"/>
</map>
</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:afb167397942306196f3f3a7a4d0a6319"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#afb167397942306196f3f3a7a4d0a6319">MemoryReader</a> (const void *<a class="el" href="classathena_1_1io_1_1_memory_reader.html#a0ec143d492341f61cd3acef61afe8358">data</a>, atUint64 <a class="el" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c">length</a>, bool takeOwnership=false, bool globalErr=true)</td></tr>
<tr class="memdesc:afb167397942306196f3f3a7a4d0a6319"><td class="mdescLeft">&#160;</td><td class="mdescRight">This constructor references an existing buffer to read from. <a href="#afb167397942306196f3f3a7a4d0a6319">More...</a><br /></td></tr>
<tr class="separator:afb167397942306196f3f3a7a4d0a6319"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47ee0f076c1639fa15d9233cf7d3b470"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#a47ee0f076c1639fa15d9233cf7d3b470">seek</a> (atInt64 pos, SeekOrigin origin=SeekOrigin::Current)</td></tr>
<tr class="memdesc:a47ee0f076c1639fa15d9233cf7d3b470"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the buffers position relative to the specified position.<br />
It seeks relative to the current position by default. <a href="#a47ee0f076c1639fa15d9233cf7d3b470">More...</a><br /></td></tr>
<tr class="separator:a47ee0f076c1639fa15d9233cf7d3b470"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a459addc7be3dc1918f995ebae5e0c6ae"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#a459addc7be3dc1918f995ebae5e0c6ae">position</a> () const </td></tr>
<tr class="memdesc:a459addc7be3dc1918f995ebae5e0c6ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current position in the stream. <a href="#a459addc7be3dc1918f995ebae5e0c6ae">More...</a><br /></td></tr>
<tr class="separator:a459addc7be3dc1918f995ebae5e0c6ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f0f0efc43af6000fc68f16db258e50c"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c">length</a> () const </td></tr>
<tr class="memdesc:a2f0f0efc43af6000fc68f16db258e50c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether or not the stream is at the end. <a href="#a2f0f0efc43af6000fc68f16db258e50c">More...</a><br /></td></tr>
<tr class="separator:a2f0f0efc43af6000fc68f16db258e50c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a955cb812ebff99467d6efd11e3b9ccdd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#a955cb812ebff99467d6efd11e3b9ccdd">setData</a> (const atUint8 *<a class="el" href="classathena_1_1io_1_1_memory_reader.html#a0ec143d492341f61cd3acef61afe8358">data</a>, atUint64 <a class="el" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c">length</a>, bool takeOwnership=false)</td></tr>
<tr class="memdesc:a955cb812ebff99467d6efd11e3b9ccdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the buffer to the given one, deleting the current one.<br />
<b>BEWARE:</b> As this deletes the current buffer it WILL cause a loss of data if that was not the intent.<br />
Once you pass the data to setData <b>DO NOT</b> delete the buffer as Stream now owns the address, this is done to keep memory usage down. <a href="#a955cb812ebff99467d6efd11e3b9ccdd">More...</a><br /></td></tr>
<tr class="separator:a955cb812ebff99467d6efd11e3b9ccdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ec143d492341f61cd3acef61afe8358"><td class="memItemLeft" align="right" valign="top">atUint8 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#a0ec143d492341f61cd3acef61afe8358">data</a> () const </td></tr>
<tr class="memdesc:a0ec143d492341f61cd3acef61afe8358"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a copy of the current buffer.<br />
Changes to the copy do not affect the buffer so it's perfectly safe to directly edit the buffer and use setData to set the new information.<br />
However once you pass the data to setData <b>DO NOT</b> delete the buffer as Stream now owns the address, this is done to keep memory usage down. <a href="#a0ec143d492341f61cd3acef61afe8358">More...</a><br /></td></tr>
<tr class="separator:a0ec143d492341f61cd3acef61afe8358"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3f62edd3db169a3276e7e3f230c930c"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_memory_reader.html#af3f62edd3db169a3276e7e3f230c930c">readUBytesToBuf</a> (void *buf, atUint64 len)</td></tr>
<tr class="memdesc:af3f62edd3db169a3276e7e3f230c930c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a specified number of bytes to user-allocated buffer. <a href="#af3f62edd3db169a3276e7e3f230c930c">More...</a><br /></td></tr>
<tr class="separator:af3f62edd3db169a3276e7e3f230c930c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classathena_1_1io_1_1_i_stream_reader"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classathena_1_1io_1_1_i_stream_reader')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html">athena::io::IStreamReader</a></td></tr>
<tr class="memitem:a2181ca1983f9bdab8125e898405b7ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2181ca1983f9bdab8125e898405b7ba0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a2181ca1983f9bdab8125e898405b7ba0">seekAlign64</a> ()</td></tr>
<tr class="memdesc:a2181ca1983f9bdab8125e898405b7ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the buffer's position relative to the next 64-byte aligned position.<br />
<br /></td></tr>
<tr class="separator:a2181ca1983f9bdab8125e898405b7ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b1a617c8d43b2da1bc476b67691fcdd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b1a617c8d43b2da1bc476b67691fcdd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a9b1a617c8d43b2da1bc476b67691fcdd">seekAlign32</a> ()</td></tr>
<tr class="memdesc:a9b1a617c8d43b2da1bc476b67691fcdd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the buffers position relative to the next 32-byte aligned position.<br />
<br /></td></tr>
<tr class="separator:a9b1a617c8d43b2da1bc476b67691fcdd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3084d8f6a6fdfc9a3575504af814eeea inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3084d8f6a6fdfc9a3575504af814eeea"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a3084d8f6a6fdfc9a3575504af814eeea">seekAlign16</a> ()</td></tr>
<tr class="memdesc:a3084d8f6a6fdfc9a3575504af814eeea inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the buffer's position relative to the next 16-byte aligned position.<br />
<br /></td></tr>
<tr class="separator:a3084d8f6a6fdfc9a3575504af814eeea inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb4be1f8a71727c016cee4fd73522c64 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#afb4be1f8a71727c016cee4fd73522c64">atEnd</a> () const </td></tr>
<tr class="memdesc:afb4be1f8a71727c016cee4fd73522c64 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether or not the stream is at the end. <a href="#afb4be1f8a71727c016cee4fd73522c64">More...</a><br /></td></tr>
<tr class="separator:afb4be1f8a71727c016cee4fd73522c64 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a686f0ec7b089e479ec9732ed2637f31b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a686f0ec7b089e479ec9732ed2637f31b">readByte</a> ()</td></tr>
<tr class="memdesc:a686f0ec7b089e479ec9732ed2637f31b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a byte at the current position and advances the current position. <a href="#a686f0ec7b089e479ec9732ed2637f31b">More...</a><br /></td></tr>
<tr class="separator:a686f0ec7b089e479ec9732ed2637f31b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e7ff86ce8fd702f86e5fa83f9249a66 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a6e7ff86ce8fd702f86e5fa83f9249a66"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a6e7ff86ce8fd702f86e5fa83f9249a66 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a6e7ff86ce8fd702f86e5fa83f9249a66 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac961774421227428ca47bb14e40dc159 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ac961774421227428ca47bb14e40dc159"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ac961774421227428ca47bb14e40dc159 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ac961774421227428ca47bb14e40dc159 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a86ef105c960c9fe4ddc0e06dc50a8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a5a86ef105c960c9fe4ddc0e06dc50a8f"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a5a86ef105c960c9fe4ddc0e06dc50a8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a5a86ef105c960c9fe4ddc0e06dc50a8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade572d05e65dfeafadf1d746d357cdb2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint8&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ade572d05e65dfeafadf1d746d357cdb2">readUByte</a> ()</td></tr>
<tr class="memdesc:ade572d05e65dfeafadf1d746d357cdb2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a byte at the current position and advances the current position. <a href="#ade572d05e65dfeafadf1d746d357cdb2">More...</a><br /></td></tr>
<tr class="separator:ade572d05e65dfeafadf1d746d357cdb2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac558cf0512c50f26679bbcd0748e6f1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ac558cf0512c50f26679bbcd0748e6f1f"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ac558cf0512c50f26679bbcd0748e6f1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ac558cf0512c50f26679bbcd0748e6f1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c77da03c6b554770b7bb6a986ca24c5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a5c77da03c6b554770b7bb6a986ca24c5"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a5c77da03c6b554770b7bb6a986ca24c5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a5c77da03c6b554770b7bb6a986ca24c5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d8756383ddfa147804b97ce5504e63 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="aa0d8756383ddfa147804b97ce5504e63"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:aa0d8756383ddfa147804b97ce5504e63 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint8&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint8 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:aa0d8756383ddfa147804b97ce5504e63 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dfb8c1afbccefdd54613e15083bd11c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; atInt8[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a7dfb8c1afbccefdd54613e15083bd11c">readBytes</a> (atUint64 <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acab99b9b1dce30ab7993f3754e62280f">length</a>)</td></tr>
<tr class="memdesc:a7dfb8c1afbccefdd54613e15083bd11c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a byte at the current position and advances the current position. <a href="#a7dfb8c1afbccefdd54613e15083bd11c">More...</a><br /></td></tr>
<tr class="separator:a7dfb8c1afbccefdd54613e15083bd11c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d2dd422e375d89d64682eb2920a05da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; atUint8[]&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a3d2dd422e375d89d64682eb2920a05da">readUBytes</a> (atUint64 <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acab99b9b1dce30ab7993f3754e62280f">length</a>)</td></tr>
<tr class="memdesc:a3d2dd422e375d89d64682eb2920a05da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a byte at the current position and advances the current position. <a href="#a3d2dd422e375d89d64682eb2920a05da">More...</a><br /></td></tr>
<tr class="separator:a3d2dd422e375d89d64682eb2920a05da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5331741020b85bd0303404c10ccb9eb3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a5331741020b85bd0303404c10ccb9eb3">readBytesToBuf</a> (void *buf, atUint64 len)</td></tr>
<tr class="memdesc:a5331741020b85bd0303404c10ccb9eb3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempts to read a fixed length of data into a pre-allocated buffer. <a href="#a5331741020b85bd0303404c10ccb9eb3">More...</a><br /></td></tr>
<tr class="separator:a5331741020b85bd0303404c10ccb9eb3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e7dba89014af4e1de0e4b88c9571dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a2e7dba89014af4e1de0e4b88c9571dfd">readInt16</a> ()</td></tr>
<tr class="memdesc:a2e7dba89014af4e1de0e4b88c9571dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int16 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#a2e7dba89014af4e1de0e4b88c9571dfd">More...</a><br /></td></tr>
<tr class="separator:a2e7dba89014af4e1de0e4b88c9571dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33b54b1349a54b63a593cb87bb4de1ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a33b54b1349a54b63a593cb87bb4de1ef"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a33b54b1349a54b63a593cb87bb4de1ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a33b54b1349a54b63a593cb87bb4de1ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87f37dce7304fcb3e5099b63dde893f3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a87f37dce7304fcb3e5099b63dde893f3">readInt16Little</a> ()</td></tr>
<tr class="memdesc:a87f37dce7304fcb3e5099b63dde893f3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int16 and swaps against little endianness depending on platform and advances the current position. <a href="#a87f37dce7304fcb3e5099b63dde893f3">More...</a><br /></td></tr>
<tr class="separator:a87f37dce7304fcb3e5099b63dde893f3 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10745c4ebbcf6457bdc3f8f95e7b9622 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a10745c4ebbcf6457bdc3f8f95e7b9622"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a10745c4ebbcf6457bdc3f8f95e7b9622 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a10745c4ebbcf6457bdc3f8f95e7b9622 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43476cea5f9ad12007626e6142715618 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a43476cea5f9ad12007626e6142715618">readInt16Big</a> ()</td></tr>
<tr class="memdesc:a43476cea5f9ad12007626e6142715618 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int16 and swaps against big endianness depending on platform and advances the current position. <a href="#a43476cea5f9ad12007626e6142715618">More...</a><br /></td></tr>
<tr class="separator:a43476cea5f9ad12007626e6142715618 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f5410b1489504a1727fea9ac4433968 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a1f5410b1489504a1727fea9ac4433968"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a1f5410b1489504a1727fea9ac4433968 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a1f5410b1489504a1727fea9ac4433968 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7e62052d98e338ae4ce297823436c98 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ab7e62052d98e338ae4ce297823436c98">readUint16</a> ()</td></tr>
<tr class="memdesc:ab7e62052d98e338ae4ce297823436c98 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint16 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#ab7e62052d98e338ae4ce297823436c98">More...</a><br /></td></tr>
<tr class="separator:ab7e62052d98e338ae4ce297823436c98 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4277a4392367bb795d8e2c8b5745ae7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ad4277a4392367bb795d8e2c8b5745ae7"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ad4277a4392367bb795d8e2c8b5745ae7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ad4277a4392367bb795d8e2c8b5745ae7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09c8a88e32daef59795ae84e0693849c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a09c8a88e32daef59795ae84e0693849c">readUint16Little</a> ()</td></tr>
<tr class="memdesc:a09c8a88e32daef59795ae84e0693849c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint16 and swaps against little endianness depending on platform and advances the current position. <a href="#a09c8a88e32daef59795ae84e0693849c">More...</a><br /></td></tr>
<tr class="separator:a09c8a88e32daef59795ae84e0693849c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a203a7888f243efcad2ff8a1bc921ea91 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a203a7888f243efcad2ff8a1bc921ea91"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a203a7888f243efcad2ff8a1bc921ea91 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a203a7888f243efcad2ff8a1bc921ea91 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af668e842f3860cd30ddda94b8851734e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#af668e842f3860cd30ddda94b8851734e">readUint16Big</a> ()</td></tr>
<tr class="memdesc:af668e842f3860cd30ddda94b8851734e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint16 and swaps against big endianness depending on platform and advances the current position. <a href="#af668e842f3860cd30ddda94b8851734e">More...</a><br /></td></tr>
<tr class="separator:af668e842f3860cd30ddda94b8851734e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8f1374828f22bdc5cb9f5a96da3fc8c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ab8f1374828f22bdc5cb9f5a96da3fc8c"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ab8f1374828f22bdc5cb9f5a96da3fc8c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint16&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint16 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ab8f1374828f22bdc5cb9f5a96da3fc8c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2affb0e5de0028675619204d5e9017b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ae2affb0e5de0028675619204d5e9017b">readInt32</a> ()</td></tr>
<tr class="memdesc:ae2affb0e5de0028675619204d5e9017b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int32 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#ae2affb0e5de0028675619204d5e9017b">More...</a><br /></td></tr>
<tr class="separator:ae2affb0e5de0028675619204d5e9017b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b990a806cbf2fc3f91b0563bc4684da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a6b990a806cbf2fc3f91b0563bc4684da"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a6b990a806cbf2fc3f91b0563bc4684da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a6b990a806cbf2fc3f91b0563bc4684da inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18417240ce7c4ca97767b25d00acf279 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a18417240ce7c4ca97767b25d00acf279">readInt32Little</a> ()</td></tr>
<tr class="memdesc:a18417240ce7c4ca97767b25d00acf279 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int32 and swaps against little endianness depending on platform and advances the current position. <a href="#a18417240ce7c4ca97767b25d00acf279">More...</a><br /></td></tr>
<tr class="separator:a18417240ce7c4ca97767b25d00acf279 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3e2b46d6702a9d460a4e8e396605b9b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ad3e2b46d6702a9d460a4e8e396605b9b"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ad3e2b46d6702a9d460a4e8e396605b9b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ad3e2b46d6702a9d460a4e8e396605b9b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4790ee5c59219ac096f31d0943eb20ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a4790ee5c59219ac096f31d0943eb20ef">readInt32Big</a> ()</td></tr>
<tr class="memdesc:a4790ee5c59219ac096f31d0943eb20ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int32 and swaps against big endianness depending on platform and advances the current position. <a href="#a4790ee5c59219ac096f31d0943eb20ef">More...</a><br /></td></tr>
<tr class="separator:a4790ee5c59219ac096f31d0943eb20ef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f16905e6f27549cd976dbbab83a50ed inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a0f16905e6f27549cd976dbbab83a50ed"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a0f16905e6f27549cd976dbbab83a50ed inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a0f16905e6f27549cd976dbbab83a50ed inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5492c49ca81ea9edaab28f55cf62ad1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ac5492c49ca81ea9edaab28f55cf62ad1">readUint32</a> ()</td></tr>
<tr class="memdesc:ac5492c49ca81ea9edaab28f55cf62ad1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint32 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#ac5492c49ca81ea9edaab28f55cf62ad1">More...</a><br /></td></tr>
<tr class="separator:ac5492c49ca81ea9edaab28f55cf62ad1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d6a04064e7043d1959d359c3bb48a97 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a6d6a04064e7043d1959d359c3bb48a97"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a6d6a04064e7043d1959d359c3bb48a97 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a6d6a04064e7043d1959d359c3bb48a97 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae11292c8569763943f25eeae7ec3f2de inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ae11292c8569763943f25eeae7ec3f2de">readUint32Little</a> ()</td></tr>
<tr class="memdesc:ae11292c8569763943f25eeae7ec3f2de inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint32 and swaps against little endianness depending on platform and advances the current position. <a href="#ae11292c8569763943f25eeae7ec3f2de">More...</a><br /></td></tr>
<tr class="separator:ae11292c8569763943f25eeae7ec3f2de inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca3f59a7ebdb4d25aeef293506ae8c28 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="aca3f59a7ebdb4d25aeef293506ae8c28"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:aca3f59a7ebdb4d25aeef293506ae8c28 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:aca3f59a7ebdb4d25aeef293506ae8c28 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06dc7dad4ecb0f29f70815cbfdccb316 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a06dc7dad4ecb0f29f70815cbfdccb316">readUint32Big</a> ()</td></tr>
<tr class="memdesc:a06dc7dad4ecb0f29f70815cbfdccb316 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint32 and swaps against big endianness depending on platform and advances the current position. <a href="#a06dc7dad4ecb0f29f70815cbfdccb316">More...</a><br /></td></tr>
<tr class="separator:a06dc7dad4ecb0f29f70815cbfdccb316 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f120acb0667dcd36091c49e19cafa80 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a5f120acb0667dcd36091c49e19cafa80"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a5f120acb0667dcd36091c49e19cafa80 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint32&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint32 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a5f120acb0667dcd36091c49e19cafa80 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa399f00e829d592a8df092cd5202f948 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#aa399f00e829d592a8df092cd5202f948">readInt64</a> ()</td></tr>
<tr class="memdesc:aa399f00e829d592a8df092cd5202f948 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int64 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#aa399f00e829d592a8df092cd5202f948">More...</a><br /></td></tr>
<tr class="separator:aa399f00e829d592a8df092cd5202f948 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6ce74495c30217fe9c6794030c3714d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="af6ce74495c30217fe9c6794030c3714d"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:af6ce74495c30217fe9c6794030c3714d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:af6ce74495c30217fe9c6794030c3714d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35be192262e54344e766f9fed24af184 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a35be192262e54344e766f9fed24af184">readInt64Little</a> ()</td></tr>
<tr class="memdesc:a35be192262e54344e766f9fed24af184 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int64 and swaps against little endianness depending on platform and advances the current position. <a href="#a35be192262e54344e766f9fed24af184">More...</a><br /></td></tr>
<tr class="separator:a35be192262e54344e766f9fed24af184 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea7214a3ddda1bfdf66d8e625be83ab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="aea7214a3ddda1bfdf66d8e625be83ab0"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:aea7214a3ddda1bfdf66d8e625be83ab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:aea7214a3ddda1bfdf66d8e625be83ab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37a274d6008ba0a8925e2d849f193474 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a37a274d6008ba0a8925e2d849f193474">readInt64Big</a> ()</td></tr>
<tr class="memdesc:a37a274d6008ba0a8925e2d849f193474 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Int64 and swaps against big endianness depending on platform and advances the current position. <a href="#a37a274d6008ba0a8925e2d849f193474">More...</a><br /></td></tr>
<tr class="separator:a37a274d6008ba0a8925e2d849f193474 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa382322ddb9aa2965b52b852ce355138 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="aa382322ddb9aa2965b52b852ce355138"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:aa382322ddb9aa2965b52b852ce355138 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atInt64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atInt64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:aa382322ddb9aa2965b52b852ce355138 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1c3d4d24e7f9e86169e885855316e40 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#af1c3d4d24e7f9e86169e885855316e40">readUint64</a> ()</td></tr>
<tr class="memdesc:af1c3d4d24e7f9e86169e885855316e40 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint64 and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#af1c3d4d24e7f9e86169e885855316e40">More...</a><br /></td></tr>
<tr class="separator:af1c3d4d24e7f9e86169e885855316e40 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7658b6856d2d9e117a728481efbb5816 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7658b6856d2d9e117a728481efbb5816"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a7658b6856d2d9e117a728481efbb5816 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a7658b6856d2d9e117a728481efbb5816 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a482b54002979f9e4a4d7b0e739fc70 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a7a482b54002979f9e4a4d7b0e739fc70">readUint64Little</a> ()</td></tr>
<tr class="memdesc:a7a482b54002979f9e4a4d7b0e739fc70 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint64 and swaps against little endianness depending on platform and advances the current position. <a href="#a7a482b54002979f9e4a4d7b0e739fc70">More...</a><br /></td></tr>
<tr class="separator:a7a482b54002979f9e4a4d7b0e739fc70 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50c7a9f0330421fce029f95646842074 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a50c7a9f0330421fce029f95646842074"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a50c7a9f0330421fce029f95646842074 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a50c7a9f0330421fce029f95646842074 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc315776b1e0e540748e7a0cde50d123 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acc315776b1e0e540748e7a0cde50d123">readUint64Big</a> ()</td></tr>
<tr class="memdesc:acc315776b1e0e540748e7a0cde50d123 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a Uint64 and swaps against big endianness depending on platform and advances the current position. <a href="#acc315776b1e0e540748e7a0cde50d123">More...</a><br /></td></tr>
<tr class="separator:acc315776b1e0e540748e7a0cde50d123 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90442189399ee601ac65c342a148e563 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a90442189399ee601ac65c342a148e563"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a90442189399ee601ac65c342a148e563 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">atUint64&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, atUint64 &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a90442189399ee601ac65c342a148e563 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8b1be9d105e2059cee959b733935723 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ac8b1be9d105e2059cee959b733935723">readFloat</a> ()</td></tr>
<tr class="memdesc:ac8b1be9d105e2059cee959b733935723 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a float and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#ac8b1be9d105e2059cee959b733935723">More...</a><br /></td></tr>
<tr class="separator:ac8b1be9d105e2059cee959b733935723 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf9e68c76529894fbdf39a444c93dd96 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="adf9e68c76529894fbdf39a444c93dd96"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:adf9e68c76529894fbdf39a444c93dd96 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, float &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:adf9e68c76529894fbdf39a444c93dd96 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a923a3c3bfd40f4043506ec9a896f733d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a923a3c3bfd40f4043506ec9a896f733d">readFloatLittle</a> ()</td></tr>
<tr class="memdesc:a923a3c3bfd40f4043506ec9a896f733d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a float and swaps against little endianness depending on platform and advances the current position. <a href="#a923a3c3bfd40f4043506ec9a896f733d">More...</a><br /></td></tr>
<tr class="separator:a923a3c3bfd40f4043506ec9a896f733d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a1e3a92ed87ad6973cc0fc51413f4bf inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a1a1e3a92ed87ad6973cc0fc51413f4bf"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a1a1e3a92ed87ad6973cc0fc51413f4bf inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, float &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a1a1e3a92ed87ad6973cc0fc51413f4bf inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a332e4905fea3f5360718f5efec3f5b83 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a332e4905fea3f5360718f5efec3f5b83">readFloatBig</a> ()</td></tr>
<tr class="memdesc:a332e4905fea3f5360718f5efec3f5b83 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a float and swaps against big endianness depending on platform and advances the current position. <a href="#a332e4905fea3f5360718f5efec3f5b83">More...</a><br /></td></tr>
<tr class="separator:a332e4905fea3f5360718f5efec3f5b83 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab52ae044f919404539f2e27544abfbef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ab52ae044f919404539f2e27544abfbef"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ab52ae044f919404539f2e27544abfbef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">float&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, float &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ab52ae044f919404539f2e27544abfbef inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb734496af936d1e0152a53156ec0731 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#abb734496af936d1e0152a53156ec0731">readDouble</a> ()</td></tr>
<tr class="memdesc:abb734496af936d1e0152a53156ec0731 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a double and swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#abb734496af936d1e0152a53156ec0731">More...</a><br /></td></tr>
<tr class="separator:abb734496af936d1e0152a53156ec0731 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71192606db2fb9f483db91405bd5871c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a71192606db2fb9f483db91405bd5871c"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a71192606db2fb9f483db91405bd5871c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, double &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a71192606db2fb9f483db91405bd5871c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af996e1c5e375379b22d4795d90690644 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#af996e1c5e375379b22d4795d90690644">readDoubleLittle</a> ()</td></tr>
<tr class="memdesc:af996e1c5e375379b22d4795d90690644 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a double and swaps against little endianness depending on platform and advances the current position. <a href="#af996e1c5e375379b22d4795d90690644">More...</a><br /></td></tr>
<tr class="separator:af996e1c5e375379b22d4795d90690644 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab87dfa33d7819e1e699dc81987376f1a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ab87dfa33d7819e1e699dc81987376f1a"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ab87dfa33d7819e1e699dc81987376f1a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, double &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ab87dfa33d7819e1e699dc81987376f1a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa14cecb0144c4530c450e927beacb90d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#aa14cecb0144c4530c450e927beacb90d">readDoubleBig</a> ()</td></tr>
<tr class="memdesc:aa14cecb0144c4530c450e927beacb90d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a double and swaps against big endianness depending on platform and advances the current position. <a href="#aa14cecb0144c4530c450e927beacb90d">More...</a><br /></td></tr>
<tr class="separator:aa14cecb0144c4530c450e927beacb90d inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24ed5806efbef808cb3e1483b54aa524 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a24ed5806efbef808cb3e1483b54aa524"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a24ed5806efbef808cb3e1483b54aa524 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">double&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, double &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a24ed5806efbef808cb3e1483b54aa524 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f7f429a4e86af9a5f38f341a3419006 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a4f7f429a4e86af9a5f38f341a3419006">readBool</a> ()</td></tr>
<tr class="memdesc:a4f7f429a4e86af9a5f38f341a3419006 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a bool and advances the current position. <a href="#a4f7f429a4e86af9a5f38f341a3419006">More...</a><br /></td></tr>
<tr class="separator:a4f7f429a4e86af9a5f38f341a3419006 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83fb262ee3e29b0e4874012fd46d46ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a83fb262ee3e29b0e4874012fd46d46ce"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a83fb262ee3e29b0e4874012fd46d46ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, bool &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a83fb262ee3e29b0e4874012fd46d46ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a94870038a12a6003b2bfd2fefdf1c0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a0a94870038a12a6003b2bfd2fefdf1c0"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a0a94870038a12a6003b2bfd2fefdf1c0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, bool &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a0a94870038a12a6003b2bfd2fefdf1c0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c61a49defd1dcd762b86310aec3da8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7c61a49defd1dcd762b86310aec3da8f"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a7c61a49defd1dcd762b86310aec3da8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, bool &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a7c61a49defd1dcd762b86310aec3da8f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add3c1709a0b4864fe3c0cea923bd8c49 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#add3c1709a0b4864fe3c0cea923bd8c49">readVec2f</a> ()</td></tr>
<tr class="memdesc:add3c1709a0b4864fe3c0cea923bd8c49 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2f (8 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#add3c1709a0b4864fe3c0cea923bd8c49">More...</a><br /></td></tr>
<tr class="separator:add3c1709a0b4864fe3c0cea923bd8c49 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acffcb4270cca15f95ca23d8d28ab6a5b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="acffcb4270cca15f95ca23d8d28ab6a5b"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:acffcb4270cca15f95ca23d8d28ab6a5b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:acffcb4270cca15f95ca23d8d28ab6a5b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17b185205271b21a1a70dc839719f0b9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a17b185205271b21a1a70dc839719f0b9">readVec2fLittle</a> ()</td></tr>
<tr class="memdesc:a17b185205271b21a1a70dc839719f0b9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2f (8 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#a17b185205271b21a1a70dc839719f0b9">More...</a><br /></td></tr>
<tr class="separator:a17b185205271b21a1a70dc839719f0b9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e037c70f41c4537e735fb76b28d5fcc inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7e037c70f41c4537e735fb76b28d5fcc"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a7e037c70f41c4537e735fb76b28d5fcc inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a7e037c70f41c4537e735fb76b28d5fcc inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09e2c8abf6ade874b1a7b262bb18a135 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a09e2c8abf6ade874b1a7b262bb18a135">readVec2fBig</a> ()</td></tr>
<tr class="memdesc:a09e2c8abf6ade874b1a7b262bb18a135 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2f (8 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#a09e2c8abf6ade874b1a7b262bb18a135">More...</a><br /></td></tr>
<tr class="separator:a09e2c8abf6ade874b1a7b262bb18a135 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00d1f29850af4820234475d1911c2c1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a00d1f29850af4820234475d1911c2c1f"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a00d1f29850af4820234475d1911c2c1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a00d1f29850af4820234475d1911c2c1f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acce04185b1459cf37d60e4ebe436969a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acce04185b1459cf37d60e4ebe436969a">readVec3f</a> ()</td></tr>
<tr class="memdesc:acce04185b1459cf37d60e4ebe436969a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3f (12 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#acce04185b1459cf37d60e4ebe436969a">More...</a><br /></td></tr>
<tr class="separator:acce04185b1459cf37d60e4ebe436969a inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8482e7464146ccdb0da539b45e6eb28c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a8482e7464146ccdb0da539b45e6eb28c"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a8482e7464146ccdb0da539b45e6eb28c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a8482e7464146ccdb0da539b45e6eb28c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9e0cebc8e86789a53bc08c236d458e6 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ad9e0cebc8e86789a53bc08c236d458e6">readVec3fLittle</a> ()</td></tr>
<tr class="memdesc:ad9e0cebc8e86789a53bc08c236d458e6 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3f (12 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#ad9e0cebc8e86789a53bc08c236d458e6">More...</a><br /></td></tr>
<tr class="separator:ad9e0cebc8e86789a53bc08c236d458e6 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a692207997dec61b3600207c7de368107 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a692207997dec61b3600207c7de368107"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a692207997dec61b3600207c7de368107 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a692207997dec61b3600207c7de368107 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab701342a9e02aefc7e85674a6008ea7c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ab701342a9e02aefc7e85674a6008ea7c">readVec3fBig</a> ()</td></tr>
<tr class="memdesc:ab701342a9e02aefc7e85674a6008ea7c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3f (12 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#ab701342a9e02aefc7e85674a6008ea7c">More...</a><br /></td></tr>
<tr class="separator:ab701342a9e02aefc7e85674a6008ea7c inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a3dca2ca0ff5a5aea53533abedb22f1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a8a3dca2ca0ff5a5aea53533abedb22f1"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a8a3dca2ca0ff5a5aea53533abedb22f1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a8a3dca2ca0ff5a5aea53533abedb22f1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4071d5fc3ab6f80bf3526afc890863b5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a4071d5fc3ab6f80bf3526afc890863b5">readVec4f</a> ()</td></tr>
<tr class="memdesc:a4071d5fc3ab6f80bf3526afc890863b5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4f (16 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#a4071d5fc3ab6f80bf3526afc890863b5">More...</a><br /></td></tr>
<tr class="separator:a4071d5fc3ab6f80bf3526afc890863b5 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64bc09eca82d3f69ebff9fe929e0aeeb inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a64bc09eca82d3f69ebff9fe929e0aeeb"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a64bc09eca82d3f69ebff9fe929e0aeeb inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a64bc09eca82d3f69ebff9fe929e0aeeb inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a949734836c91441951cb252a1017539f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a949734836c91441951cb252a1017539f">readVec4fLittle</a> ()</td></tr>
<tr class="memdesc:a949734836c91441951cb252a1017539f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4f (16 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#a949734836c91441951cb252a1017539f">More...</a><br /></td></tr>
<tr class="separator:a949734836c91441951cb252a1017539f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12265c9b09323c4c8b73452b1d8ecc14 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a12265c9b09323c4c8b73452b1d8ecc14"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a12265c9b09323c4c8b73452b1d8ecc14 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a12265c9b09323c4c8b73452b1d8ecc14 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2e3fb46e93ecef7391b668efe23cab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ab2e3fb46e93ecef7391b668efe23cab0">readVec4fBig</a> ()</td></tr>
<tr class="memdesc:ab2e3fb46e93ecef7391b668efe23cab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4f (16 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#ab2e3fb46e93ecef7391b668efe23cab0">More...</a><br /></td></tr>
<tr class="separator:ab2e3fb46e93ecef7391b668efe23cab0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77f841fb8eba8233c04e2fdb06c72894 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a77f841fb8eba8233c04e2fdb06c72894"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a77f841fb8eba8233c04e2fdb06c72894 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4f</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a77f841fb8eba8233c04e2fdb06c72894 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af74c932a391b1659a7567632f81e829f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#af74c932a391b1659a7567632f81e829f">readVec2d</a> ()</td></tr>
<tr class="memdesc:af74c932a391b1659a7567632f81e829f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2d (16 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#af74c932a391b1659a7567632f81e829f">More...</a><br /></td></tr>
<tr class="separator:af74c932a391b1659a7567632f81e829f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82f852f26319511fe2d1c74162230da7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a82f852f26319511fe2d1c74162230da7"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a82f852f26319511fe2d1c74162230da7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a82f852f26319511fe2d1c74162230da7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a588658b87d3db813bd49f3a34c4eebf4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a588658b87d3db813bd49f3a34c4eebf4">readVec2dLittle</a> ()</td></tr>
<tr class="memdesc:a588658b87d3db813bd49f3a34c4eebf4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2d (16 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#a588658b87d3db813bd49f3a34c4eebf4">More...</a><br /></td></tr>
<tr class="separator:a588658b87d3db813bd49f3a34c4eebf4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd3f552b1daece537eabf6ab155a5bf1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="abd3f552b1daece537eabf6ab155a5bf1"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:abd3f552b1daece537eabf6ab155a5bf1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:abd3f552b1daece537eabf6ab155a5bf1 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4930ad33ca2477d9af820e42ccefde inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a7d4930ad33ca2477d9af820e42ccefde">readVec2dBig</a> ()</td></tr>
<tr class="memdesc:a7d4930ad33ca2477d9af820e42ccefde inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec2d (16 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#a7d4930ad33ca2477d9af820e42ccefde">More...</a><br /></td></tr>
<tr class="separator:a7d4930ad33ca2477d9af820e42ccefde inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76ac81c005d8c38870853a5a86a60ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a76ac81c005d8c38870853a5a86a60ba0"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a76ac81c005d8c38870853a5a86a60ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec2d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a76ac81c005d8c38870853a5a86a60ba0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87b83abc30833b2bae21d02b716dcd1b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a87b83abc30833b2bae21d02b716dcd1b">readVec3d</a> ()</td></tr>
<tr class="memdesc:a87b83abc30833b2bae21d02b716dcd1b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3d (24 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#a87b83abc30833b2bae21d02b716dcd1b">More...</a><br /></td></tr>
<tr class="separator:a87b83abc30833b2bae21d02b716dcd1b inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2738596a63604d17c0cd82cc7146307 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ab2738596a63604d17c0cd82cc7146307"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ab2738596a63604d17c0cd82cc7146307 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ab2738596a63604d17c0cd82cc7146307 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19fe7d04b3031d3cb33981d32ea43327 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a19fe7d04b3031d3cb33981d32ea43327">readVec3dLittle</a> ()</td></tr>
<tr class="memdesc:a19fe7d04b3031d3cb33981d32ea43327 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3d (24 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#a19fe7d04b3031d3cb33981d32ea43327">More...</a><br /></td></tr>
<tr class="separator:a19fe7d04b3031d3cb33981d32ea43327 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a858dc830d4b6a420ab3620b2bc77f187 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a858dc830d4b6a420ab3620b2bc77f187"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a858dc830d4b6a420ab3620b2bc77f187 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a858dc830d4b6a420ab3620b2bc77f187 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee1d00844de0738bcf03fc5389cab293 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#aee1d00844de0738bcf03fc5389cab293">readVec3dBig</a> ()</td></tr>
<tr class="memdesc:aee1d00844de0738bcf03fc5389cab293 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec3d (24 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#aee1d00844de0738bcf03fc5389cab293">More...</a><br /></td></tr>
<tr class="separator:aee1d00844de0738bcf03fc5389cab293 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43358fc7dcf7b746bc235e0795f1d3ad inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a43358fc7dcf7b746bc235e0795f1d3ad"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a43358fc7dcf7b746bc235e0795f1d3ad inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec3d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a43358fc7dcf7b746bc235e0795f1d3ad inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a140b2d6da8d78251d01569253b9a88aa inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a140b2d6da8d78251d01569253b9a88aa">readVec4d</a> ()</td></tr>
<tr class="memdesc:a140b2d6da8d78251d01569253b9a88aa inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4d (32 bytes), swaps to endianness specified by setEndian depending on platform and advances the current position. <a href="#a140b2d6da8d78251d01569253b9a88aa">More...</a><br /></td></tr>
<tr class="separator:a140b2d6da8d78251d01569253b9a88aa inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8858b4545f1884e09d2642ecd0ff4a62 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a8858b4545f1884e09d2642ecd0ff4a62"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a8858b4545f1884e09d2642ecd0ff4a62 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a8858b4545f1884e09d2642ecd0ff4a62 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79da790ce808d6af66bbf62e5b3d25e2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a79da790ce808d6af66bbf62e5b3d25e2">readVec4dLittle</a> ()</td></tr>
<tr class="memdesc:a79da790ce808d6af66bbf62e5b3d25e2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4d (32 bytes), swaps against little endianness depending on platform and advances the current position. <a href="#a79da790ce808d6af66bbf62e5b3d25e2">More...</a><br /></td></tr>
<tr class="separator:a79da790ce808d6af66bbf62e5b3d25e2 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af388cc7c7fa544c05fa4a648af7c7c8e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="af388cc7c7fa544c05fa4a648af7c7c8e"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:af388cc7c7fa544c05fa4a648af7c7c8e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:af388cc7c7fa544c05fa4a648af7c7c8e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1eec27263842efa1466b581eec4ef582 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a1eec27263842efa1466b581eec4ef582">readVec4dBig</a> ()</td></tr>
<tr class="memdesc:a1eec27263842efa1466b581eec4ef582 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads an atVec4d (32 bytes), swaps against big endianness depending on platform and advances the current position. <a href="#a1eec27263842efa1466b581eec4ef582">More...</a><br /></td></tr>
<tr class="separator:a1eec27263842efa1466b581eec4ef582 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeef3da76a7754559dec3240343be5dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="aeef3da76a7754559dec3240343be5dfd"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:aeef3da76a7754559dec3240343be5dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="unionalignas.html">atVec4d</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4d</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:aeef3da76a7754559dec3240343be5dfd inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1e2c0114677d05fd2a79cc5f7fb35a7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ac1e2c0114677d05fd2a79cc5f7fb35a7">readWStringAsString</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:ac1e2c0114677d05fd2a79cc5f7fb35a7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wide-char string (using endianness from setEndian), converts to UTF8 and advances the position in the file. <a href="#ac1e2c0114677d05fd2a79cc5f7fb35a7">More...</a><br /></td></tr>
<tr class="separator:ac1e2c0114677d05fd2a79cc5f7fb35a7 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae85ae79951ff223a22305ac197f0ed90 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ae85ae79951ff223a22305ac197f0ed90">readWStringAsStringLittle</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:ae85ae79951ff223a22305ac197f0ed90 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wide-char string (against little-endian), converts to UTF8 and advances the position in the file. <a href="#ae85ae79951ff223a22305ac197f0ed90">More...</a><br /></td></tr>
<tr class="separator:ae85ae79951ff223a22305ac197f0ed90 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f4b561c89ef8c4f1e75ae0a66fdd5ba inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a1f4b561c89ef8c4f1e75ae0a66fdd5ba">readWStringAsStringBig</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:a1f4b561c89ef8c4f1e75ae0a66fdd5ba inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wide-char string (against big-endian), converts to UTF8 and advances the position in the file. <a href="#a1f4b561c89ef8c4f1e75ae0a66fdd5ba">More...</a><br /></td></tr>
<tr class="separator:a1f4b561c89ef8c4f1e75ae0a66fdd5ba inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a525eeaf5c6571b4067a35ab951a66703 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a525eeaf5c6571b4067a35ab951a66703">readString</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:a525eeaf5c6571b4067a35ab951a66703 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a string and advances the position in the file. <a href="#a525eeaf5c6571b4067a35ab951a66703">More...</a><br /></td></tr>
<tr class="separator:a525eeaf5c6571b4067a35ab951a66703 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ead04d167875f0f9532751c808aad05 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a9ead04d167875f0f9532751c808aad05"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a9ead04d167875f0f9532751c808aad05 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, std::string &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a9ead04d167875f0f9532751c808aad05 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebbd3a9f64e552d76a2392e2ae3fe9f8 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#aebbd3a9f64e552d76a2392e2ae3fe9f8">readWString</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:aebbd3a9f64e552d76a2392e2ae3fe9f8 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wstring and advances the position in the file. <a href="#aebbd3a9f64e552d76a2392e2ae3fe9f8">More...</a><br /></td></tr>
<tr class="separator:aebbd3a9f64e552d76a2392e2ae3fe9f8 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7ea2b9411536edbf6055a8290bd1ed9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="ad7ea2b9411536edbf6055a8290bd1ed9"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:ad7ea2b9411536edbf6055a8290bd1ed9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readVal</b> (typename std::enable_if&lt; std::is_same&lt; T, std::wstring &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:ad7ea2b9411536edbf6055a8290bd1ed9 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8280d8caeb0ea9a5f38247a38e97f324 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a8280d8caeb0ea9a5f38247a38e97f324">readWStringLittle</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:a8280d8caeb0ea9a5f38247a38e97f324 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wstring assuming little-endian characters and advances the position in the file. <a href="#a8280d8caeb0ea9a5f38247a38e97f324">More...</a><br /></td></tr>
<tr class="separator:a8280d8caeb0ea9a5f38247a38e97f324 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7994469dc390534149b2b44eb6b7ccce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7994469dc390534149b2b44eb6b7ccce"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a7994469dc390534149b2b44eb6b7ccce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValLittle</b> (typename std::enable_if&lt; std::is_same&lt; T, std::wstring &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a7994469dc390534149b2b44eb6b7ccce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afee5e6a8dcb4fc7c20d21e96369ed9a0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#afee5e6a8dcb4fc7c20d21e96369ed9a0">readWStringBig</a> (atInt32 fixedLen=-1)</td></tr>
<tr class="memdesc:afee5e6a8dcb4fc7c20d21e96369ed9a0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a wstring assuming big-endian characters and advances the position in the file. <a href="#afee5e6a8dcb4fc7c20d21e96369ed9a0">More...</a><br /></td></tr>
<tr class="separator:afee5e6a8dcb4fc7c20d21e96369ed9a0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40b0d4ab3d9ad8bf9f9c7af80befcf7f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2"><a class="anchor" id="a40b0d4ab3d9ad8bf9f9c7af80befcf7f"></a>
template&lt;class T &gt; </td></tr>
<tr class="memitem:a40b0d4ab3d9ad8bf9f9c7af80befcf7f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memTemplItemRight" valign="bottom"><b>readValBig</b> (typename std::enable_if&lt; std::is_same&lt; T, std::wstring &gt;::value &gt;::type *=0)</td></tr>
<tr class="separator:a40b0d4ab3d9ad8bf9f9c7af80befcf7f inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa4ab889fb5fb09ac4a3b427e9e7c2d4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:aaa4ab889fb5fb09ac4a3b427e9e7c2d4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#aaa4ab889fb5fb09ac4a3b427e9e7c2d4">enumerate</a> (std::vector&lt; T &gt; &amp;vector, size_t count, typename std::enable_if&lt; std::is_arithmetic&lt; T &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="memdesc:aaa4ab889fb5fb09ac4a3b427e9e7c2d4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs automatic std::vector enumeration reads using numeric type T. <a href="#aaa4ab889fb5fb09ac4a3b427e9e7c2d4">More...</a><br /></td></tr>
<tr class="separator:aaa4ab889fb5fb09ac4a3b427e9e7c2d4 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc650d7dc599c42a92639debadb040ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:acc650d7dc599c42a92639debadb040ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acc650d7dc599c42a92639debadb040ce">enumerateLittle</a> (std::vector&lt; T &gt; &amp;vector, size_t count, typename std::enable_if&lt; std::is_arithmetic&lt; T &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="memdesc:acc650d7dc599c42a92639debadb040ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs automatic std::vector enumeration reads using numeric type T. <a href="#acc650d7dc599c42a92639debadb040ce">More...</a><br /></td></tr>
<tr class="separator:acc650d7dc599c42a92639debadb040ce inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a910b9ecefcfdaa34e6c59bb2bc4beed0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a910b9ecefcfdaa34e6c59bb2bc4beed0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a910b9ecefcfdaa34e6c59bb2bc4beed0">enumerateBig</a> (std::vector&lt; T &gt; &amp;vector, size_t count, typename std::enable_if&lt; std::is_arithmetic&lt; T &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value||std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="memdesc:a910b9ecefcfdaa34e6c59bb2bc4beed0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs automatic std::vector enumeration reads using numeric type T. <a href="#a910b9ecefcfdaa34e6c59bb2bc4beed0">More...</a><br /></td></tr>
<tr class="separator:a910b9ecefcfdaa34e6c59bb2bc4beed0 inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af37c9608f89060c758c595ba4c41500e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:af37c9608f89060c758c595ba4c41500e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#af37c9608f89060c758c595ba4c41500e">enumerate</a> (std::vector&lt; T &gt; &amp;vector, size_t count, typename std::enable_if&lt;!std::is_arithmetic&lt; T &gt;::value &amp;&amp;!std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec2f</a> &gt;::value &amp;&amp;!std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec3f</a> &gt;::value &amp;&amp;!std::is_same&lt; T, <a class="el" href="unionalignas.html">atVec4f</a> &gt;::value &gt;::type *=0)</td></tr>
<tr class="memdesc:af37c9608f89060c758c595ba4c41500e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs automatic std::vector enumeration reads using non-numeric type T. <a href="#af37c9608f89060c758c595ba4c41500e">More...</a><br /></td></tr>
<tr class="separator:af37c9608f89060c758c595ba4c41500e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acacf47c4983455ba471b05d97df59d4e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:acacf47c4983455ba471b05d97df59d4e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acacf47c4983455ba471b05d97df59d4e">enumerate</a> (std::vector&lt; T &gt; &amp;vector, size_t count, std::function&lt; void(<a class="el" href="classathena_1_1io_1_1_i_stream_reader.html">IStreamReader</a> &amp;, T &amp;)&gt; readf)</td></tr>
<tr class="memdesc:acacf47c4983455ba471b05d97df59d4e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs lambda-assisted std::vector enumeration reads using type T. <a href="#acacf47c4983455ba471b05d97df59d4e">More...</a><br /></td></tr>
<tr class="separator:acacf47c4983455ba471b05d97df59d4e inherit pub_methods_classathena_1_1io_1_1_i_stream_reader"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classathena_1_1io_1_1_i_stream"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classathena_1_1io_1_1_i_stream')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classathena_1_1io_1_1_i_stream.html">athena::io::IStream</a></td></tr>
<tr class="memitem:ac2beff267a6ac8991f088d2cd010bf59 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2beff267a6ac8991f088d2cd010bf59"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setEndian</b> (Endian endian)</td></tr>
<tr class="separator:ac2beff267a6ac8991f088d2cd010bf59 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab230982b81f34d7ea53521006eb31a09 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab230982b81f34d7ea53521006eb31a09"></a>
Endian&#160;</td><td class="memItemRight" valign="bottom"><b>endian</b> () const </td></tr>
<tr class="separator:ab230982b81f34d7ea53521006eb31a09 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f850abc54c6eb53e3a0cb4aec8619d9 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f850abc54c6eb53e3a0cb4aec8619d9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isBigEndian</b> () const </td></tr>
<tr class="separator:a2f850abc54c6eb53e3a0cb4aec8619d9 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76bdbe0dcbe80698014b7b038591db72 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76bdbe0dcbe80698014b7b038591db72"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isLittleEndian</b> () const </td></tr>
<tr class="separator:a76bdbe0dcbe80698014b7b038591db72 inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf5d44cdffbeb864a62c442a6e8e68ea inherit pub_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf5d44cdffbeb864a62c442a6e8e68ea"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>hasError</b> () const </td></tr>
<tr class="separator:aaf5d44cdffbeb864a62c442a6e8e68ea inherit pub_methods_classathena_1_1io_1_1_i_stream"><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 class="memitem:a44011a36fde04203a2b6779eaa2cc77e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44011a36fde04203a2b6779eaa2cc77e"></a>
const void *&#160;</td><td class="memItemRight" valign="bottom"><b>m_data</b> = nullptr</td></tr>
<tr class="separator:a44011a36fde04203a2b6779eaa2cc77e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9325be9942b04ed6115675c6e4dd260"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9325be9942b04ed6115675c6e4dd260"></a>
atUint64&#160;</td><td class="memItemRight" valign="bottom"><b>m_length</b> = 0</td></tr>
<tr class="separator:af9325be9942b04ed6115675c6e4dd260"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab64721a50921a03aee1e1816aa0e3cba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab64721a50921a03aee1e1816aa0e3cba"></a>
atUint64&#160;</td><td class="memItemRight" valign="bottom"><b>m_position</b> = 0</td></tr>
<tr class="separator:ab64721a50921a03aee1e1816aa0e3cba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b97406b7a5752e5309528609fd47f71"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b97406b7a5752e5309528609fd47f71"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>m_owns</b> = false</td></tr>
<tr class="separator:a9b97406b7a5752e5309528609fd47f71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bb4e40a87717efa40218736ed75ccf9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2bb4e40a87717efa40218736ed75ccf9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>m_globalErr</b> = true</td></tr>
<tr class="separator:a2bb4e40a87717efa40218736ed75ccf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classathena_1_1io_1_1_i_stream"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classathena_1_1io_1_1_i_stream')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classathena_1_1io_1_1_i_stream.html">athena::io::IStream</a></td></tr>
<tr class="memitem:aba5eb4fdae1f1ef99a03707357372ee2 inherit pro_attribs_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba5eb4fdae1f1ef99a03707357372ee2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>m_hasError</b> = false</td></tr>
<tr class="separator:aba5eb4fdae1f1ef99a03707357372ee2 inherit pro_attribs_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77b71fd50c9d9aaeb49fca48e1c6d728 inherit pro_attribs_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77b71fd50c9d9aaeb49fca48e1c6d728"></a>
Endian&#160;</td><td class="memItemRight" valign="bottom"><b>m_endian</b> = BigEndian</td></tr>
<tr class="separator:a77b71fd50c9d9aaeb49fca48e1c6d728 inherit pro_attribs_classathena_1_1io_1_1_i_stream"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_methods_classathena_1_1io_1_1_i_stream"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classathena_1_1io_1_1_i_stream')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classathena_1_1io_1_1_i_stream.html">athena::io::IStream</a></td></tr>
<tr class="memitem:a2e7892edca216aef9ba3a20108defbbb inherit pro_methods_classathena_1_1io_1_1_i_stream"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e7892edca216aef9ba3a20108defbbb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setError</b> ()</td></tr>
<tr class="separator:a2e7892edca216aef9ba3a20108defbbb inherit pro_methods_classathena_1_1io_1_1_i_stream"><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>A Stream class for reading data from a memory position. </p>
<p>A Class for reading binary data from a file or memory stream, all work is done using a memory buffer, and not read directly from the disk this allows for fast, flexible code as well as the ability to quickly modify data </p><dl class="section see"><dt>See also</dt><dd>Stream </dd></dl>
<p>Definition at line <a class="el" href="_memory_reader_8hpp_source.html#l00021">21</a> of file <a class="el" href="_memory_reader_8hpp_source.html">MemoryReader.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="afb167397942306196f3f3a7a4d0a6319"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">athena::io::MemoryReader::MemoryReader </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">atUint64&#160;</td>
<td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>takeOwnership</em> = <code>false</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>globalErr</em> = <code>true</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This constructor references an existing buffer to read from. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>The existing buffer </td></tr>
<tr><td class="paramname">length</td><td>The length of the existing buffer </td></tr>
<tr><td class="paramname">takeOwnership</td><td>Memory will be freed with the reader if set </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0ec143d492341f61cd3acef61afe8358"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">atUint8* athena::io::MemoryReader::data </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a copy of the current buffer.<br />
Changes to the copy do not affect the buffer so it's perfectly safe to directly edit the buffer and use setData to set the new information.<br />
However once you pass the data to setData <b>DO NOT</b> delete the buffer as Stream now owns the address, this is done to keep memory usage down. </p>
<dl class="section return"><dt>Returns</dt><dd>Uint8* The copy of the buffer. </dd></dl>
<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader_a0ec143d492341f61cd3acef61afe8358_icgraph.png" border="0" usemap="#classathena_1_1io_1_1_memory_reader_a0ec143d492341f61cd3acef61afe8358_icgraph" alt=""/></div>
<map name="classathena_1_1io_1_1_memory_reader_a0ec143d492341f61cd3acef61afe8358_icgraph" id="classathena_1_1io_1_1_memory_reader_a0ec143d492341f61cd3acef61afe8358_icgraph">
<area shape="rect" id="node2" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c" title="Returns whether or not the stream is at the end. " alt="" coords="247,5,440,47"/>
</map>
</div>
</p>
</div>
</div>
<a class="anchor" id="a2f0f0efc43af6000fc68f16db258e50c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">atUint64 athena::io::MemoryReader::length </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 class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns whether or not the stream is at the end. </p>
<dl class="section return"><dt>Returns</dt><dd>bool True if at end; False otherwise. </dd></dl>
<p>Implements <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#acab99b9b1dce30ab7993f3754e62280f">athena::io::IStreamReader</a>.</p>
<p>Definition at line <a class="el" href="_memory_reader_8hpp_source.html#l00054">54</a> of file <a class="el" href="_memory_reader_8hpp_source.html">MemoryReader.hpp</a>.</p>
<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader_a2f0f0efc43af6000fc68f16db258e50c_cgraph.png" border="0" usemap="#classathena_1_1io_1_1_memory_reader_a2f0f0efc43af6000fc68f16db258e50c_cgraph" alt=""/></div>
<map name="classathena_1_1io_1_1_memory_reader_a2f0f0efc43af6000fc68f16db258e50c_cgraph" id="classathena_1_1io_1_1_memory_reader_a2f0f0efc43af6000fc68f16db258e50c_cgraph">
<area shape="rect" id="node2" href="classathena_1_1io_1_1_memory_reader.html#a955cb812ebff99467d6efd11e3b9ccdd" title="Sets the buffer to the given one, deleting the current one. &#160;BEWARE: As this deletes the current buff..." alt="" coords="247,5,440,47"/>
<area shape="rect" id="node3" href="classathena_1_1io_1_1_memory_reader.html#a0ec143d492341f61cd3acef61afe8358" title="Returns a copy of the current buffer. &#160;Changes to the copy do not affect the buffer so it&#39;s perfectly..." alt="" coords="247,71,440,112"/>
<area shape="rect" id="node4" href="classathena_1_1io_1_1_memory_reader.html#af3f62edd3db169a3276e7e3f230c930c" title="Reads a specified number of bytes to user&#45;allocated buffer. " alt="" coords="247,136,440,177"/>
</map>
</div>
</p>
</div>
</div>
<a class="anchor" id="a459addc7be3dc1918f995ebae5e0c6ae"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">atUint64 athena::io::MemoryReader::position </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 class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the current position in the stream. </p>
<dl class="section return"><dt>Returns</dt><dd>Int64 The current position in the stream. </dd></dl>
<p>Implements <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ab02b8fd04541d1c87c6bafab84842463">athena::io::IStreamReader</a>.</p>
<p>Definition at line <a class="el" href="_memory_reader_8hpp_source.html#l00047">47</a> of file <a class="el" href="_memory_reader_8hpp_source.html">MemoryReader.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="af3f62edd3db169a3276e7e3f230c930c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">atUint64 athena::io::MemoryReader::readUBytesToBuf </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">atUint64&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a specified number of bytes to user-allocated buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">buf</td><td>User-allocated buffer pointer </td></tr>
<tr><td class="paramname">len</td><td>Length to read </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bytes read </dd></dl>
<p>Implements <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#ad90233be645b52f421b1560d63cd07bd">athena::io::IStreamReader</a>.</p>
<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader_af3f62edd3db169a3276e7e3f230c930c_icgraph.png" border="0" usemap="#classathena_1_1io_1_1_memory_reader_af3f62edd3db169a3276e7e3f230c930c_icgraph" alt=""/></div>
<map name="classathena_1_1io_1_1_memory_reader_af3f62edd3db169a3276e7e3f230c930c_icgraph" id="classathena_1_1io_1_1_memory_reader_af3f62edd3db169a3276e7e3f230c930c_icgraph">
<area shape="rect" id="node2" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c" title="Returns whether or not the stream is at the end. " alt="" coords="247,5,440,47"/>
</map>
</div>
</p>
</div>
</div>
<a class="anchor" id="a47ee0f076c1639fa15d9233cf7d3b470"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void athena::io::MemoryReader::seek </td>
<td>(</td>
<td class="paramtype">atInt64&#160;</td>
<td class="paramname"><em>pos</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">SeekOrigin&#160;</td>
<td class="paramname"><em>origin</em> = <code>SeekOrigin::Current</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the buffers position relative to the specified position.<br />
It seeks relative to the current position by default. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">position</td><td>where in the buffer to seek </td></tr>
<tr><td class="paramname">origin</td><td>The Origin to seek </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>SeekOrigin </dd></dl>
<p>Implements <a class="el" href="classathena_1_1io_1_1_i_stream_reader.html#a4ba4e1ac641161d5c738c9375b5d2012">athena::io::IStreamReader</a>.</p>
</div>
</div>
<a class="anchor" id="a955cb812ebff99467d6efd11e3b9ccdd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void athena::io::MemoryReader::setData </td>
<td>(</td>
<td class="paramtype">const atUint8 *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">atUint64&#160;</td>
<td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>takeOwnership</em> = <code>false</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the buffer to the given one, deleting the current one.<br />
<b>BEWARE:</b> As this deletes the current buffer it WILL cause a loss of data if that was not the intent.<br />
Once you pass the data to setData <b>DO NOT</b> delete the buffer as Stream now owns the address, this is done to keep memory usage down. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>The new buffer. </td></tr>
<tr><td class="paramname">length</td><td>The length of the new buffer. </td></tr>
<tr><td class="paramname">takeOwnership</td><td>Memory will be freed with the reader if set </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">IOException</td><td></td></tr>
</table>
</dd>
</dl>
<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="classathena_1_1io_1_1_memory_reader_a955cb812ebff99467d6efd11e3b9ccdd_icgraph.png" border="0" usemap="#classathena_1_1io_1_1_memory_reader_a955cb812ebff99467d6efd11e3b9ccdd_icgraph" alt=""/></div>
<map name="classathena_1_1io_1_1_memory_reader_a955cb812ebff99467d6efd11e3b9ccdd_icgraph" id="classathena_1_1io_1_1_memory_reader_a955cb812ebff99467d6efd11e3b9ccdd_icgraph">
<area shape="rect" id="node2" href="classathena_1_1io_1_1_memory_reader.html#a2f0f0efc43af6000fc68f16db258e50c" title="Returns whether or not the stream is at the end. " alt="" coords="263,5,457,47"/>
<area shape="rect" id="node3" href="classathena_1_1io_1_1_memory_copy_reader.html#a0789f11bb0033bc9eaa3fec24b6b3768" title="This constructor creates an instance from a file on disk. " alt="" coords="247,71,473,112"/>
</map>
</div>
</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/athena/<a class="el" href="_memory_reader_8hpp_source.html">MemoryReader.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>athena</b></li><li class="navelem"><b>io</b></li><li class="navelem"><a class="el" href="classathena_1_1io_1_1_memory_reader.html">MemoryReader</a></li>
<li class="footer">Generated on Sat Sep 17 2016 13:10:09 for Athena IO Library by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
</ul>
</div>
</body>
</html>