<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mxnet: dmlc::RecordIOChunkReader 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="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>
<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">mxnet
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- 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 id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacedmlc.html">dmlc</a></li><li class="navelem"><a class="el" href="classdmlc_1_1RecordIOChunkReader.html">RecordIOChunkReader</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classdmlc_1_1RecordIOChunkReader-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">dmlc::RecordIOChunkReader Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>reader of binary recordio from Blob returned by <a class="el" href="classdmlc_1_1InputSplit.html" title="input split creates that allows reading of records from split of data, independent part that covers a...">InputSplit</a> This class divides the blob into several independent parts specified by caller, and read from one segment. The part reading can be used together with <a class="el" href="classdmlc_1_1InputSplit.html#a2e835c07ce77d8d873592e006c242156" title="get a chunk of memory that can contain multiple records, the caller needs to parse the content of the...">InputSplit::NextChunk</a> for multi-threaded parsing(each thread take a RecordIOChunkReader)  
 <a href="classdmlc_1_1RecordIOChunkReader.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="recordio_8h_source.html">recordio.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for dmlc::RecordIOChunkReader:</div>
<div class="dyncontent">
<div class="center"><img src="classdmlc_1_1RecordIOChunkReader__coll__graph.png" border="0" usemap="#dmlc_1_1RecordIOChunkReader_coll__map" alt="Collaboration graph"/></div>
<map name="dmlc_1_1RecordIOChunkReader_coll__map" id="dmlc_1_1RecordIOChunkReader_coll__map">
</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:a3348f9ccdcbcd8d0cae7ff0baa6a37c1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdmlc_1_1RecordIOChunkReader.html#a3348f9ccdcbcd8d0cae7ff0baa6a37c1">RecordIOChunkReader</a> (<a class="el" href="structdmlc_1_1InputSplit_1_1Blob.html">InputSplit::Blob</a> chunk, unsigned part_index=0, unsigned num_parts=1)</td></tr>
<tr class="memdesc:a3348f9ccdcbcd8d0cae7ff0baa6a37c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">constructor  <a href="#a3348f9ccdcbcd8d0cae7ff0baa6a37c1">More...</a><br /></td></tr>
<tr class="separator:a3348f9ccdcbcd8d0cae7ff0baa6a37c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d237e1f75c39c3c82b7de2a4ce3234b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdmlc_1_1RecordIOChunkReader.html#a7d237e1f75c39c3c82b7de2a4ce3234b">NextRecord</a> (<a class="el" href="structdmlc_1_1InputSplit_1_1Blob.html">InputSplit::Blob</a> *out_rec)</td></tr>
<tr class="memdesc:a7d237e1f75c39c3c82b7de2a4ce3234b"><td class="mdescLeft">&#160;</td><td class="mdescRight">read next complete record from stream the blob contains the memory content NOTE: this function is not threadsafe, use one <a class="el" href="classdmlc_1_1RecordIOChunkReader.html" title="reader of binary recordio from Blob returned by InputSplit This class divides the blob into several i...">RecordIOChunkReader</a> per thread  <a href="#a7d237e1f75c39c3c82b7de2a4ce3234b">More...</a><br /></td></tr>
<tr class="separator:a7d237e1f75c39c3c82b7de2a4ce3234b"><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>reader of binary recordio from Blob returned by <a class="el" href="classdmlc_1_1InputSplit.html" title="input split creates that allows reading of records from split of data, independent part that covers a...">InputSplit</a> This class divides the blob into several independent parts specified by caller, and read from one segment. The part reading can be used together with <a class="el" href="classdmlc_1_1InputSplit.html#a2e835c07ce77d8d873592e006c242156" title="get a chunk of memory that can contain multiple records, the caller needs to parse the content of the...">InputSplit::NextChunk</a> for multi-threaded parsing(each thread take a RecordIOChunkReader) </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classdmlc_1_1RecordIOWriter.html" title="writer of binary recordio binary format for recordio recordio format: magic lrecord data pad ...">RecordIOWriter</a>, <a class="el" href="classdmlc_1_1InputSplit.html" title="input split creates that allows reading of records from split of data, independent part that covers a...">InputSplit</a> </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a3348f9ccdcbcd8d0cae7ff0baa6a37c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3348f9ccdcbcd8d0cae7ff0baa6a37c1">&#9670;&nbsp;</a></span>RecordIOChunkReader()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">dmlc::RecordIOChunkReader::RecordIOChunkReader </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdmlc_1_1InputSplit_1_1Blob.html">InputSplit::Blob</a>&#160;</td>
          <td class="paramname"><em>chunk</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>part_index</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>num_parts</em> = <code>1</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">explicit</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>constructor </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">chunk</td><td>source data returned by <a class="el" href="classdmlc_1_1InputSplit.html" title="input split creates that allows reading of records from split of data, independent part that covers a...">InputSplit</a> </td></tr>
    <tr><td class="paramname">part_index</td><td>which part we want to reado </td></tr>
    <tr><td class="paramname">num_parts</td><td>number of total segments </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7d237e1f75c39c3c82b7de2a4ce3234b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d237e1f75c39c3c82b7de2a4ce3234b">&#9670;&nbsp;</a></span>NextRecord()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool dmlc::RecordIOChunkReader::NextRecord </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structdmlc_1_1InputSplit_1_1Blob.html">InputSplit::Blob</a> *&#160;</td>
          <td class="paramname"><em>out_rec</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read next complete record from stream the blob contains the memory content NOTE: this function is not threadsafe, use one <a class="el" href="classdmlc_1_1RecordIOChunkReader.html" title="reader of binary recordio from Blob returned by InputSplit This class divides the blob into several i...">RecordIOChunkReader</a> per thread </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">out_rec</td><td>used to store output blob, the header is already removed and out_rec only contains the memory content </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true of read was successful, false if end was reached </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/work/mxnet/3rdparty/dmlc-core/include/dmlc/<a class="el" href="recordio_8h_source.html">recordio.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jun 8 2022 23:30:30 for mxnet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
