> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# gpudb::DownloadFilesRequest

> gpudb::DownloadFilesRequest — Kinetica C++ API

<div className="kinetica-doxygen">
  <div className="contents">
    <p>A set of parameters for <a className="el" href="/content/api/cpp/classgpudb_1_1GPUdb#a862c8a95bf7cf33f3b26e9237a57e139">GPUdb::downloadFiles</a>. <a href="#details">More...</a></p>
    <p><code>#include \<<a className="el" href="/content/api/cpp/download__files_8h_source">gpudb/protocol/download\_files.h</a>></code></p>

    <table className="memberdecls">
      <tr className="heading">
        <td colSpan="2">
          <h2 className="groupheader"> Public Member Functions</h2>
        </td>
      </tr>

      <tr className="memitem:a246fd8657f00da3bbf0696a0d90c864e" id="r_a246fd8657f00da3bbf0696a0d90c864e">
        <td className="memItemLeft" align="right" valign="top"> </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a246fd8657f00da3bbf0696a0d90c864e">DownloadFilesRequest</a> ()</td>
      </tr>

      <tr className="memdesc:a246fd8657f00da3bbf0696a0d90c864e">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Constructs a <a className="el" href="/content/api/cpp/structgpudb_1_1DownloadFilesRequest" title="A set of parameters for GPUdb::downloadFiles.">DownloadFilesRequest</a> object with default parameters. <br /></td>
      </tr>

      <tr className="separator:a246fd8657f00da3bbf0696a0d90c864e">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:a21d252902014652458095746986410c2" id="r_a21d252902014652458095746986410c2">
        <td className="memItemLeft" align="right" valign="top"> </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a21d252902014652458095746986410c2">DownloadFilesRequest</a> (const std::vector\< std::string > \&fileNames\_, const std::vector\< int64\_t > \&readOffsets\_, const std::vector\< int64\_t > \&readLengths\_, const std::map\< std::string, std::string > \&options\_)</td>
      </tr>

      <tr className="memdesc:a21d252902014652458095746986410c2">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Constructs a <a className="el" href="/content/api/cpp/structgpudb_1_1DownloadFilesRequest" title="A set of parameters for GPUdb::downloadFiles.">DownloadFilesRequest</a> object with the specified parameters. <br /></td>
      </tr>

      <tr className="separator:a21d252902014652458095746986410c2">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>
    </table>

    <table className="memberdecls">
      <tr className="heading">
        <td colSpan="2">
          <h2 className="groupheader"> Public Attributes</h2>
        </td>
      </tr>

      <tr className="memitem:aad59fdb140a66fd169c4bf508fddbaab" id="r_aad59fdb140a66fd169c4bf508fddbaab">
        <td className="memItemLeft" align="right" valign="top">std::vector\< std::string > </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a></td>
      </tr>

      <tr className="memdesc:aad59fdb140a66fd169c4bf508fddbaab">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">An array of the file names to download from KiFS. <br /></td>
      </tr>

      <tr className="separator:aad59fdb140a66fd169c4bf508fddbaab">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:a5efbd37e39a4f4b26af25a060cf3590d" id="r_a5efbd37e39a4f4b26af25a060cf3590d">
        <td className="memItemLeft" align="right" valign="top">std::vector\< int64\_t > </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a5efbd37e39a4f4b26af25a060cf3590d">readOffsets</a></td>
      </tr>

      <tr className="memdesc:a5efbd37e39a4f4b26af25a060cf3590d">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">An array of starting byte offsets from which to read each respective file in <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. <br /></td>
      </tr>

      <tr className="separator:a5efbd37e39a4f4b26af25a060cf3590d">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:a57b5b2dd6957167184f7c032baef16a3" id="r_a57b5b2dd6957167184f7c032baef16a3">
        <td className="memItemLeft" align="right" valign="top">std::vector\< int64\_t > </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a57b5b2dd6957167184f7c032baef16a3">readLengths</a></td>
      </tr>

      <tr className="memdesc:a57b5b2dd6957167184f7c032baef16a3">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Array of number of bytes to read from each respective file in <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. <br /></td>
      </tr>

      <tr className="separator:a57b5b2dd6957167184f7c032baef16a3">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>

      <tr className="memitem:a9cb241472ef6664bd182851f52f82df7" id="r_a9cb241472ef6664bd182851f52f82df7">
        <td className="memItemLeft" align="right" valign="top">std::map\< std::string, std::string > </td>
        <td className="memItemRight" valign="bottom"><a className="el" href="#a9cb241472ef6664bd182851f52f82df7">options</a></td>
      </tr>

      <tr className="memdesc:a9cb241472ef6664bd182851f52f82df7">
        <td className="mdescLeft"> </td>
        <td className="mdescRight">Optional parameters. <br /></td>
      </tr>

      <tr className="separator:a9cb241472ef6664bd182851f52f82df7">
        <td className="memSeparator" colSpan="2"> </td>
      </tr>
    </table>

    <h2 className="groupheader">Detailed Description</h2>

    <div className="textblock">
      <p>A set of parameters for <a className="el" href="/content/api/cpp/classgpudb_1_1GPUdb#a862c8a95bf7cf33f3b26e9237a57e139">GPUdb::downloadFiles</a>. </p>
      <p>Downloads one or more files from <a href="/content/tools/kifs/" target="_top">KiFS</a>. </p>
      <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00019">19</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
    </div>

    <h2 className="groupheader">Constructor & Destructor Documentation</h2>
    <h2 className="memtitle"><span className="permalink"><a href="#a246fd8657f00da3bbf0696a0d90c864e">◆ </a></span>DownloadFilesRequest() <span className="overload">\[1/2]</span></h2>

    <div className="memitem">
      <div className="memproto">
        <table className="mlabels">
          <tr>
            <td className="mlabels-left">
              <table className="memname">
                <tr>
                  <td className="memname">gpudb::DownloadFilesRequest::DownloadFilesRequest </td>
                  <td>(</td>

                  <td className="paramname">
                    <span className="paramname">
                      <span className="em" />
                    </span>
                  </td>

                  <td>)</td>

                  <td />
                </tr>
              </table>
            </td>

            <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Constructs a <a className="el" href="/content/api/cpp/structgpudb_1_1DownloadFilesRequest" title="A set of parameters for GPUdb::downloadFiles.">DownloadFilesRequest</a> object with default parameters. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00024">24</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a21d252902014652458095746986410c2">◆ </a></span>DownloadFilesRequest() <span className="overload">\[2/2]</span></h2>

    <div className="memitem">
      <div className="memproto">
        <table className="mlabels">
          <tr>
            <td className="mlabels-left">
              <table className="memname">
                <tr>
                  <td className="memname">gpudb::DownloadFilesRequest::DownloadFilesRequest </td>
                  <td>(</td>
                  <td className="paramtype">const std::vector\< std::string > &</td>
                  <td className="paramname"><span className="paramname"><span className="em">fileNames\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const std::vector\< int64\_t > &</td>
                  <td className="paramname"><span className="paramname"><span className="em">readOffsets\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const std::vector\< int64\_t > &</td>
                  <td className="paramname"><span className="paramname"><span className="em">readLengths\_</span></span>, </td>
                </tr>

                <tr>
                  <td className="paramkey" />

                  <td />

                  <td className="paramtype">const std::map\< std::string, std::string > &</td>
                  <td className="paramname"><span className="paramname"><span className="em">options\_</span></span> )</td>
                </tr>
              </table>
            </td>

            <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Constructs a <a className="el" href="/content/api/cpp/structgpudb_1_1DownloadFilesRequest" title="A set of parameters for GPUdb::downloadFiles.">DownloadFilesRequest</a> object with the specified parameters. </p>

        <div className="dl params">
          <div className="dt">Parameters</div>

          <div className="dd">
            <table className="params">
              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">fileNames\_</td>
                <td>An array of the file names to download from KiFS. File paths may contain wildcard characters after the KiFS directory delimiter. Accepted wildcard characters are asterisk (\*) to represent any string of zero or more characters, and question mark (?) to indicate a single character. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">readOffsets\_</td>
                <td>An array of starting byte offsets from which to read each respective file in <span className="em arg">fileNames\_</span>. Must either be empty or the same length as <span className="em arg">fileNames\_</span>. If empty, files are downloaded in their entirety. If not empty, <span className="em arg">readLengths\_</span> must also not be empty. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">readLengths\_</td>
                <td>Array of number of bytes to read from each respective file in <span className="em arg">fileNames\_</span>. Must either be empty or the same length as <span className="em arg">fileNames\_</span>. If empty, files are downloaded in their entirety. If not empty, <span className="em arg">readOffsets\_</span> must also not be empty. </td>
              </tr>

              <tr>
                <td className="paramdir">\[in]</td>
                <td className="paramname">options\_</td>

                <td>
                  Optional parameters.

                  <ul>
                    <li>
                      <a className="el" href="/content/api/cpp/namespacegpudb#ae926208617f119486e700f567d3fb92e">download\_files\_file\_encoding</a>: Encoding to be applied to the output file data. When using JSON serialization it is recommended to specify this as <a className="el" href="/content/api/cpp/namespacegpudb#a088ee2c65e387365185601d1d760c80d">base64</a>. Supported values:

                      <ul>
                        <li> <a className="el" href="/content/api/cpp/namespacegpudb#a088ee2c65e387365185601d1d760c80d">download\_files\_base64</a>: Apply base64 encoding to the output file data. </li>
                        <li> <a className="el" href="/content/api/cpp/namespacegpudb#aab04be20c44c701deb41c5c7829c6611">download\_files\_none</a>: Do not apply any encoding to the output file data. </li>
                      </ul>

                      The default value is <a className="el" href="/content/api/cpp/namespacegpudb#aab04be20c44c701deb41c5c7829c6611">download\_files\_none</a>.
                    </li>
                  </ul>

                  The default value is an empty map.
                </td>
              </tr>
            </table>
          </div>
        </div>

        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00084">84</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <h2 className="groupheader">Member Data Documentation</h2>
    <h2 className="memtitle"><span className="permalink"><a href="#aad59fdb140a66fd169c4bf508fddbaab">◆ </a></span>fileNames</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::vector\<std::string> gpudb::DownloadFilesRequest::fileNames</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>An array of the file names to download from KiFS. </p>
        <p>File paths may contain wildcard characters after the KiFS directory delimiter.</p>
        <p>Accepted wildcard characters are asterisk (\*) to represent any string of zero or more characters, and question mark (?) to indicate a single character. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00100">100</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a9cb241472ef6664bd182851f52f82df7">◆ </a></span>options</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::map\<std::string, std::string> gpudb::DownloadFilesRequest::options</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Optional parameters. </p>

        <ul>
          <li>
            <a className="el" href="/content/api/cpp/namespacegpudb#ae926208617f119486e700f567d3fb92e">download\_files\_file\_encoding</a>: Encoding to be applied to the output file data. When using JSON serialization it is recommended to specify this as <a className="el" href="/content/api/cpp/namespacegpudb#a088ee2c65e387365185601d1d760c80d">base64</a>. Supported values:

            <ul>
              <li> <a className="el" href="/content/api/cpp/namespacegpudb#a088ee2c65e387365185601d1d760c80d">download\_files\_base64</a>: Apply base64 encoding to the output file data. </li>
              <li> <a className="el" href="/content/api/cpp/namespacegpudb#aab04be20c44c701deb41c5c7829c6611">download\_files\_none</a>: Do not apply any encoding to the output file data. </li>
            </ul>

            The default value is <a className="el" href="/content/api/cpp/namespacegpudb#aab04be20c44c701deb41c5c7829c6611">download\_files\_none</a>.
          </li>
        </ul>

        <p>The default value is an empty map. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00140">140</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a57b5b2dd6957167184f7c032baef16a3">◆ </a></span>readLengths</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::vector\<int64\_t> gpudb::DownloadFilesRequest::readLengths</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>Array of number of bytes to read from each respective file in <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. </p>
        <p>Must either be empty or the same length as <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. If empty, files are downloaded in their entirety. If not empty, <a className="el" href="#a5efbd37e39a4f4b26af25a060cf3590d">readOffsets</a> must also not be empty. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00116">116</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <h2 className="memtitle"><span className="permalink"><a href="#a5efbd37e39a4f4b26af25a060cf3590d">◆ </a></span>readOffsets</h2>

    <div className="memitem">
      <div className="memproto">
        <table className="memname">
          <tr>
            <td className="memname">std::vector\<int64\_t> gpudb::DownloadFilesRequest::readOffsets</td>
          </tr>
        </table>
      </div>

      <div className="memdoc">
        <p>An array of starting byte offsets from which to read each respective file in <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. </p>
        <p>Must either be empty or the same length as <a className="el" href="#aad59fdb140a66fd169c4bf508fddbaab">fileNames</a>. If empty, files are downloaded in their entirety. If not empty, <a className="el" href="#a57b5b2dd6957167184f7c032baef16a3">readLengths</a> must also not be empty. </p>
        <p className="definition">Definition at line <a className="el" href="/content/api/cpp/download__files_8h_source#l00108">108</a> of file <a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a>.</p>
      </div>
    </div>

    <hr />

    The documentation for this struct was generated from the following file:

    <ul>
      <li>gpudb/protocol/<a className="el" href="/content/api/cpp/download__files_8h_source">download\_files.h</a></li>
    </ul>
  </div>
</div>
