<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>iceberg-cpp: iceberg::DataFileStructLike 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 id="projectrow">
  <td id="projectalign">
   <div id="projectname">iceberg-cpp
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceiceberg.html">iceberg</a></li><li class="navelem"><a class="el" href="classiceberg_1_1DataFileStructLike.html">DataFileStructLike</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classiceberg_1_1DataFileStructLike-members.html">List of all members</a>  </div>
  <div class="headertitle"><div class="title">iceberg::DataFileStructLike Class Reference</div></div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classiceberg_1_1StructLike.html" title="An immutable struct-like wrapper.">StructLike</a> wrapper for <a class="el" href="structiceberg_1_1DataFile.html" title="DataFile carries data file path, partition tuple, metrics, ...">DataFile</a> metadata.  
 <a href="classiceberg_1_1DataFileStructLike.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="manifest__wrapper_8h_source.html">manifest_wrapper.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for iceberg::DataFileStructLike:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classiceberg_1_1DataFileStructLike.png" usemap="#iceberg::DataFileStructLike_map" alt=""/>
  <map id="iceberg::DataFileStructLike_map" name="iceberg::DataFileStructLike_map">
<area href="classiceberg_1_1StructLike.html" title="An immutable struct-like wrapper." alt="iceberg::StructLike" shape="rect" coords="0,0,164,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a6e932a80e11f311eddb389847150ed04" id="r_a6e932a80e11f311eddb389847150ed04"><td class="memItemLeft" align="right" valign="top"><a id="a6e932a80e11f311eddb389847150ed04" name="a6e932a80e11f311eddb389847150ed04"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>DataFileStructLike</b> (const <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &amp;file)</td></tr>
<tr class="separator:a6e932a80e11f311eddb389847150ed04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a354249f0e26c7204580f49018efd44e0" id="r_a354249f0e26c7204580f49018efd44e0"><td class="memItemLeft" align="right" valign="top"><a id="a354249f0e26c7204580f49018efd44e0" name="a354249f0e26c7204580f49018efd44e0"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>DataFileStructLike</b> (const <a class="el" href="classiceberg_1_1DataFileStructLike.html">DataFileStructLike</a> &amp;)=delete</td></tr>
<tr class="separator:a354249f0e26c7204580f49018efd44e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6a513aecfca77d627736264a424147d" id="r_ab6a513aecfca77d627736264a424147d"><td class="memItemLeft" align="right" valign="top"><a id="ab6a513aecfca77d627736264a424147d" name="ab6a513aecfca77d627736264a424147d"></a>
<a class="el" href="classiceberg_1_1DataFileStructLike.html">DataFileStructLike</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classiceberg_1_1DataFileStructLike.html">DataFileStructLike</a> &amp;)=delete</td></tr>
<tr class="separator:ab6a513aecfca77d627736264a424147d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cc8f9c030800a0e1539f7ac2f762588" id="r_a7cc8f9c030800a0e1539f7ac2f762588"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceiceberg.html#a9d5594e371beb516b0120e07e69d3af6">Result</a>&lt; <a class="el" href="namespaceiceberg.html#a3b5162f202989971e28bc310237964db">Scalar</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1DataFileStructLike.html#a7cc8f9c030800a0e1539f7ac2f762588">GetField</a> (size_t pos) const override</td></tr>
<tr class="memdesc:a7cc8f9c030800a0e1539f7ac2f762588"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the field value at the given position.  <br /></td></tr>
<tr class="separator:a7cc8f9c030800a0e1539f7ac2f762588"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a35f3f1fb92f5c94811df33cddd1694" id="r_a6a35f3f1fb92f5c94811df33cddd1694"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1DataFileStructLike.html#a6a35f3f1fb92f5c94811df33cddd1694">num_fields</a> () const override</td></tr>
<tr class="memdesc:a6a35f3f1fb92f5c94811df33cddd1694"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of fields in the struct.  <br /></td></tr>
<tr class="separator:a6a35f3f1fb92f5c94811df33cddd1694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05d881dabe3a2b7202621dcf36b698a3" id="r_a05d881dabe3a2b7202621dcf36b698a3"><td class="memItemLeft" align="right" valign="top"><a id="a05d881dabe3a2b7202621dcf36b698a3" name="a05d881dabe3a2b7202621dcf36b698a3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Reset</b> (const <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &amp;file)</td></tr>
<tr class="separator:a05d881dabe3a2b7202621dcf36b698a3"><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 class="el" href="classiceberg_1_1StructLike.html" title="An immutable struct-like wrapper.">StructLike</a> wrapper for <a class="el" href="structiceberg_1_1DataFile.html" title="DataFile carries data file path, partition tuple, metrics, ...">DataFile</a> metadata. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a7cc8f9c030800a0e1539f7ac2f762588" name="a7cc8f9c030800a0e1539f7ac2f762588"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7cc8f9c030800a0e1539f7ac2f762588">&#9670;&#160;</a></span>GetField()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceiceberg.html#a9d5594e371beb516b0120e07e69d3af6">Result</a>&lt; <a class="el" href="namespaceiceberg.html#a3b5162f202989971e28bc310237964db">Scalar</a> &gt; iceberg::DataFileStructLike::GetField </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>pos</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the field value at the given position. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pos</td><td>The position of the field in the struct. </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classiceberg_1_1StructLike.html#a1bed712ac299583f54ad2fcd91087e11">iceberg::StructLike</a>.</p>

</div>
</div>
<a id="a6a35f3f1fb92f5c94811df33cddd1694" name="a6a35f3f1fb92f5c94811df33cddd1694"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a35f3f1fb92f5c94811df33cddd1694">&#9670;&#160;</a></span>num_fields()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t iceberg::DataFileStructLike::num_fields </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">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the number of fields in the struct. </p>

<p>Implements <a class="el" href="classiceberg_1_1StructLike.html#a3c9041a832eb91386eaf51753d745914">iceberg::StructLike</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>iceberg/row/<a class="el" href="manifest__wrapper_8h_source.html">manifest_wrapper.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>
