| <!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::Writer 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&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&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"><b>iceberg</b></li><li class="navelem"><a class="el" href="classiceberg_1_1Writer.html">Writer</a></li> </ul> |
| </div> |
| </div><!-- top --> |
| <div class="header"> |
| <div class="summary"> |
| <a href="#pub-methods">Public Member Functions</a> | |
| <a href="classiceberg_1_1Writer-members.html">List of all members</a> </div> |
| <div class="headertitle"><div class="title">iceberg::Writer Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div></div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p>Base writer class to write data from different file formats. |
| <a href="classiceberg_1_1Writer.html#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="file__writer_8h_source.html">file_writer.h</a>></code></p> |
| <div class="dynheader"> |
| Inheritance diagram for iceberg::Writer:</div> |
| <div class="dyncontent"> |
| <div class="center"> |
| <img src="classiceberg_1_1Writer.png" usemap="#iceberg::Writer_map" alt=""/> |
| <map id="iceberg::Writer_map" name="iceberg::Writer_map"> |
| <area href="classiceberg_1_1avro_1_1AvroWriter.html" title="A writer for serializing ArrowArray to Avro files." alt="iceberg::avro::AvroWriter" shape="rect" coords="0,56,186,80"/> |
| <area href="classiceberg_1_1parquet_1_1ParquetWriter.html" title="A writer that writes ArrowArray to Parquet files." alt="iceberg::parquet::ParquetWriter" shape="rect" coords="196,56,382,80"/> |
| </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:a949903764bf9e3d38f00edb297a7103e" id="r_a949903764bf9e3d38f00edb297a7103e"><td class="memItemLeft" align="right" valign="top"><a id="a949903764bf9e3d38f00edb297a7103e" name="a949903764bf9e3d38f00edb297a7103e"></a> |
|  </td><td class="memItemRight" valign="bottom"><b>Writer</b> (const <a class="el" href="classiceberg_1_1Writer.html">Writer</a> &)=delete</td></tr> |
| <tr class="separator:a949903764bf9e3d38f00edb297a7103e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab4749448ef3a9f01d946294d44f23578" id="r_ab4749448ef3a9f01d946294d44f23578"><td class="memItemLeft" align="right" valign="top"><a id="ab4749448ef3a9f01d946294d44f23578" name="ab4749448ef3a9f01d946294d44f23578"></a> |
| <a class="el" href="classiceberg_1_1Writer.html">Writer</a> & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classiceberg_1_1Writer.html">Writer</a> &)=delete</td></tr> |
| <tr class="separator:ab4749448ef3a9f01d946294d44f23578"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a3088b433357b7589be2aa294fa311346" id="r_a3088b433357b7589be2aa294fa311346"><td class="memItemLeft" align="right" valign="top">virtual Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#a3088b433357b7589be2aa294fa311346">Open</a> (const <a class="el" href="structiceberg_1_1WriterOptions.html">WriterOptions</a> &options)=0</td></tr> |
| <tr class="memdesc:a3088b433357b7589be2aa294fa311346"><td class="mdescLeft"> </td><td class="mdescRight">Open the writer. <br /></td></tr> |
| <tr class="separator:a3088b433357b7589be2aa294fa311346"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad919074c1cb99c517b3e7e09214cd43c" id="r_ad919074c1cb99c517b3e7e09214cd43c"><td class="memItemLeft" align="right" valign="top">virtual Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#ad919074c1cb99c517b3e7e09214cd43c">Close</a> ()=0</td></tr> |
| <tr class="memdesc:ad919074c1cb99c517b3e7e09214cd43c"><td class="mdescLeft"> </td><td class="mdescRight">Close the writer. <br /></td></tr> |
| <tr class="separator:ad919074c1cb99c517b3e7e09214cd43c"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab9fd192deac4e2a73bbd5c8e8ee71529" id="r_ab9fd192deac4e2a73bbd5c8e8ee71529"><td class="memItemLeft" align="right" valign="top">virtual Status </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#ab9fd192deac4e2a73bbd5c8e8ee71529">Write</a> (<a class="el" href="structArrowArray.html">ArrowArray</a> *data)=0</td></tr> |
| <tr class="memdesc:ab9fd192deac4e2a73bbd5c8e8ee71529"><td class="mdescLeft"> </td><td class="mdescRight">Write arrow data to the file. <br /></td></tr> |
| <tr class="separator:ab9fd192deac4e2a73bbd5c8e8ee71529"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a36090c8c8e11cd6d5746b3c57e90983d" id="r_a36090c8c8e11cd6d5746b3c57e90983d"><td class="memItemLeft" align="right" valign="top">virtual Result< <a class="el" href="structiceberg_1_1Metrics.html">Metrics</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#a36090c8c8e11cd6d5746b3c57e90983d">metrics</a> ()=0</td></tr> |
| <tr class="memdesc:a36090c8c8e11cd6d5746b3c57e90983d"><td class="mdescLeft"> </td><td class="mdescRight">Get the file statistics. Only valid after the file is closed. <br /></td></tr> |
| <tr class="separator:a36090c8c8e11cd6d5746b3c57e90983d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a5de3531e7c60570692a4a2b0d8449a81" id="r_a5de3531e7c60570692a4a2b0d8449a81"><td class="memItemLeft" align="right" valign="top">virtual Result< int64_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#a5de3531e7c60570692a4a2b0d8449a81">length</a> ()=0</td></tr> |
| <tr class="memdesc:a5de3531e7c60570692a4a2b0d8449a81"><td class="mdescLeft"> </td><td class="mdescRight">Get the file length. This can be called while the writer is still open or after the file is closed. <br /></td></tr> |
| <tr class="separator:a5de3531e7c60570692a4a2b0d8449a81"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9630828a5052ec475c653ed492f70124" id="r_a9630828a5052ec475c653ed492f70124"><td class="memItemLeft" align="right" valign="top">virtual std::vector< int64_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1Writer.html#a9630828a5052ec475c653ed492f70124">split_offsets</a> ()=0</td></tr> |
| <tr class="memdesc:a9630828a5052ec475c653ed492f70124"><td class="mdescLeft"> </td><td class="mdescRight">Returns a list of recommended split locations, if applicable, empty otherwise. When available, this information is used for planning scan tasks whose boundaries are determined by these offsets. The returned list must be sorted in ascending order. Only valid after the file is closed. <br /></td></tr> |
| <tr class="separator:a9630828a5052ec475c653ed492f70124"><td class="memSeparator" colspan="2"> </td></tr> |
| </table> |
| <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> |
| <div class="textblock"><p>Base writer class to write data from different file formats. </p> |
| </div><h2 class="groupheader">Member Function Documentation</h2> |
| <a id="ad919074c1cb99c517b3e7e09214cd43c" name="ad919074c1cb99c517b3e7e09214cd43c"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ad919074c1cb99c517b3e7e09214cd43c">◆ </a></span>Close()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual Status iceberg::Writer::Close </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Close the writer. </p> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#a2dd42fd539830a897aae840cf0e2a8b5">iceberg::avro::AvroWriter</a>, and <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#a31b035bae2b384bc66fd58f4eb972f77">iceberg::parquet::ParquetWriter</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a5de3531e7c60570692a4a2b0d8449a81" name="a5de3531e7c60570692a4a2b0d8449a81"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a5de3531e7c60570692a4a2b0d8449a81">◆ </a></span>length()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual Result< int64_t > iceberg::Writer::length </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Get the file length. This can be called while the writer is still open or after the file is closed. </p> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#ac05ec6d94cbc4f51f8032a5ccae8ec8b">iceberg::avro::AvroWriter</a>, and <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#a4bfca96b64d6fdfa3cbcd8268c63a297">iceberg::parquet::ParquetWriter</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a36090c8c8e11cd6d5746b3c57e90983d" name="a36090c8c8e11cd6d5746b3c57e90983d"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a36090c8c8e11cd6d5746b3c57e90983d">◆ </a></span>metrics()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual Result< <a class="el" href="structiceberg_1_1Metrics.html">Metrics</a> > iceberg::Writer::metrics </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Get the file statistics. Only valid after the file is closed. </p> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#af3713ff59007cca54e37800f89eefa9f">iceberg::avro::AvroWriter</a>, and <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#ac702c6ecb018e6f7b1e5c1e71a20e320">iceberg::parquet::ParquetWriter</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a3088b433357b7589be2aa294fa311346" name="a3088b433357b7589be2aa294fa311346"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a3088b433357b7589be2aa294fa311346">◆ </a></span>Open()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual Status iceberg::Writer::Open </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="structiceberg_1_1WriterOptions.html">WriterOptions</a> & </td> |
| <td class="paramname"><em>options</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Open the writer. </p> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#a6f1f8a09bac758ba7602e13f572f3d62">iceberg::avro::AvroWriter</a>, and <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#a144493d7ba4e63daae1b5c9b0d510dbd">iceberg::parquet::ParquetWriter</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a9630828a5052ec475c653ed492f70124" name="a9630828a5052ec475c653ed492f70124"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a9630828a5052ec475c653ed492f70124">◆ </a></span>split_offsets()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual std::vector< int64_t > iceberg::Writer::split_offsets </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns a list of recommended split locations, if applicable, empty otherwise. When available, this information is used for planning scan tasks whose boundaries are determined by these offsets. The returned list must be sorted in ascending order. Only valid after the file is closed. </p> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#a6cea029f237cc8d1f8dd9361e3546042">iceberg::avro::AvroWriter</a>, and <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#a332fd55ebd1e841cb301fa06edd3ef22">iceberg::parquet::ParquetWriter</a>.</p> |
| |
| </div> |
| </div> |
| <a id="ab9fd192deac4e2a73bbd5c8e8ee71529" name="ab9fd192deac4e2a73bbd5c8e8ee71529"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ab9fd192deac4e2a73bbd5c8e8ee71529">◆ </a></span>Write()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual Status iceberg::Writer::Write </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="structArrowArray.html">ArrowArray</a> * </td> |
| <td class="paramname"><em>data</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Write arrow data to the file. </p> |
| <dl class="section return"><dt>Returns</dt><dd>Status of write results. </dd></dl> |
| <dl class="section note"><dt>Note</dt><dd>Ownership of the data is transferred to the writer. </dd></dl> |
| |
| <p>Implemented in <a class="el" href="classiceberg_1_1parquet_1_1ParquetWriter.html#acead2c7a8837b9977bcf68664c13345b">iceberg::parquet::ParquetWriter</a>, and <a class="el" href="classiceberg_1_1avro_1_1AvroWriter.html#a60e9eb49bcb01e2e7823f529c7f42025">iceberg::avro::AvroWriter</a>.</p> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following file:<ul> |
| <li>iceberg/<a class="el" href="file__writer_8h_source.html">file_writer.h</a></li> |
| </ul> |
| </div><!-- contents --> |
| <!-- start footer part --> |
| <hr class="footer"/><address class="footer"><small> |
| Generated by <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> |