| <?xml version='1.0' encoding='UTF-8' standalone='no'?> |
| <doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.8" xml:lang="en-US"> |
| <compounddef id="classiceberg_1_1SnapshotCache" kind="class" language="C++" prot="public"> |
| <compoundname>iceberg::SnapshotCache</compoundname> |
| <includes refid="snapshot_8h" local="no">snapshot.h</includes> |
| <sectiondef kind="private-type"> |
| <memberdef kind="typedef" id="classiceberg_1_1SnapshotCache_1aa35c7a6f1993167794c1cacb1b1e22e5" prot="private" static="no"> |
| <type>std::pair< std::vector< <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> >, size_t ></type> |
| <definition>using iceberg::SnapshotCache::ManifestsCache = std::pair<std::vector<ManifestFile>, size_t></definition> |
| <argsstring></argsstring> |
| <name>ManifestsCache</name> |
| <qualifiedname>iceberg::SnapshotCache::ManifestsCache</qualifiedname> |
| <briefdescription> |
| <para>Cache structure for storing loaded manifests. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para><simplesect kind="note"><para>Manifests are stored in a single vector with data manifests at the head and delete manifests at the tail, separated by the number of data manifests. </para> |
| </simplesect> |
| </para> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="490" column="3" bodyfile="iceberg/snapshot.h" bodystart="490" bodyend="-1"/> |
| </memberdef> |
| </sectiondef> |
| <sectiondef kind="private-attrib"> |
| <memberdef kind="variable" id="classiceberg_1_1SnapshotCache_1a61264968947d71d2b36e772c67d6506c" prot="private" static="no" mutable="no"> |
| <type>const <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> *</type> |
| <definition>const Snapshot* iceberg::SnapshotCache::snapshot_</definition> |
| <argsstring></argsstring> |
| <name>snapshot_</name> |
| <qualifiedname>iceberg::SnapshotCache::snapshot_</qualifiedname> |
| <briefdescription> |
| <para>The underlying snapshot data. </para> |
| </briefdescription> |
| <detaileddescription> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="500" column="18" bodyfile="iceberg/snapshot.h" bodystart="500" bodyend="-1"/> |
| </memberdef> |
| <memberdef kind="variable" id="classiceberg_1_1SnapshotCache_1a6e32e2e312a64cb169285c0443d44526" prot="private" static="no" mutable="no"> |
| <type><ref refid="classiceberg_1_1Lazy" kindref="compound">Lazy</ref>< InitManifestsCache ></type> |
| <definition>Lazy<InitManifestsCache> iceberg::SnapshotCache::manifests_cache_</definition> |
| <argsstring></argsstring> |
| <name>manifests_cache_</name> |
| <qualifiedname>iceberg::SnapshotCache::manifests_cache_</qualifiedname> |
| <briefdescription> |
| <para>Lazy-loaded manifests cache. </para> |
| </briefdescription> |
| <detaileddescription> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="503" column="8" bodyfile="iceberg/snapshot.h" bodystart="503" bodyend="-1"/> |
| </memberdef> |
| </sectiondef> |
| <sectiondef kind="public-func"> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1a16833bcc6e2b4036d813f62ce7e9571e" prot="public" static="no" const="no" explicit="yes" inline="yes" virt="non-virtual"> |
| <type></type> |
| <definition>iceberg::SnapshotCache::SnapshotCache</definition> |
| <argsstring>(const Snapshot *snapshot)</argsstring> |
| <name>SnapshotCache</name> |
| <qualifiedname>iceberg::SnapshotCache::SnapshotCache</qualifiedname> |
| <param> |
| <type>const <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> *</type> |
| <declname>snapshot</declname> |
| </param> |
| <briefdescription> |
| </briefdescription> |
| <detaileddescription> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="461" column="12" bodyfile="iceberg/snapshot.h" bodystart="461" bodyend="461"/> |
| </memberdef> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1a673648c4ae8593852e7d7bf762cb9df3" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual"> |
| <type>const <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> &</type> |
| <definition>const Snapshot & iceberg::SnapshotCache::snapshot</definition> |
| <argsstring>() const</argsstring> |
| <name>snapshot</name> |
| <qualifiedname>iceberg::SnapshotCache::snapshot</qualifiedname> |
| <briefdescription> |
| <para>Get the underlying <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> reference. </para> |
| </briefdescription> |
| <detaileddescription> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="464" column="18" bodyfile="iceberg/snapshot.h" bodystart="464" bodyend="464"/> |
| </memberdef> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1a831934b6a12ce637f7aecd80b0c2fa8e" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual"> |
| <type>Result< std::span< <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> > ></type> |
| <definition>Result< std::span< ManifestFile > > iceberg::SnapshotCache::Manifests</definition> |
| <argsstring>(std::shared_ptr< FileIO > file_io) const</argsstring> |
| <name>Manifests</name> |
| <qualifiedname>iceberg::SnapshotCache::Manifests</qualifiedname> |
| <param> |
| <type>std::shared_ptr< <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> ></type> |
| <declname>file_io</declname> |
| </param> |
| <briefdescription> |
| <para>Returns all <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> instances for either data or delete manifests in this snapshot. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para><parameterlist kind="param"><parameteritem> |
| <parameternamelist> |
| <parametername>file_io</parametername> |
| </parameternamelist> |
| <parameterdescription> |
| <para>The <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> instance to use for reading the manifest list </para> |
| </parameterdescription> |
| </parameteritem> |
| </parameterlist> |
| <simplesect kind="return"><para>A span of <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> instances, or an error </para> |
| </simplesect> |
| </para> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="471" column="10" bodyfile="iceberg/snapshot.cc" bodystart="256" bodyend="261"/> |
| </memberdef> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1ae4cae94c907194ca293dc7dd0f554e95" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual"> |
| <type>Result< std::span< <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> > ></type> |
| <definition>Result< std::span< ManifestFile > > iceberg::SnapshotCache::DataManifests</definition> |
| <argsstring>(std::shared_ptr< FileIO > file_io) const</argsstring> |
| <name>DataManifests</name> |
| <qualifiedname>iceberg::SnapshotCache::DataManifests</qualifiedname> |
| <param> |
| <type>std::shared_ptr< <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> ></type> |
| <declname>file_io</declname> |
| </param> |
| <briefdescription> |
| <para>Returns a <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> for each data manifest in this snapshot. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para><parameterlist kind="param"><parameteritem> |
| <parameternamelist> |
| <parametername>file_io</parametername> |
| </parameternamelist> |
| <parameterdescription> |
| <para>The <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> instance to use for reading the manifest list </para> |
| </parameterdescription> |
| </parameteritem> |
| </parameterlist> |
| <simplesect kind="return"><para>A span of <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> instances, or an error </para> |
| </simplesect> |
| </para> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="477" column="10" bodyfile="iceberg/snapshot.cc" bodystart="263" bodyend="268"/> |
| </memberdef> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1aac4d585d74577958db24c559e421a450" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual"> |
| <type>Result< std::span< <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> > ></type> |
| <definition>Result< std::span< ManifestFile > > iceberg::SnapshotCache::DeleteManifests</definition> |
| <argsstring>(std::shared_ptr< FileIO > file_io) const</argsstring> |
| <name>DeleteManifests</name> |
| <qualifiedname>iceberg::SnapshotCache::DeleteManifests</qualifiedname> |
| <param> |
| <type>std::shared_ptr< <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> ></type> |
| <declname>file_io</declname> |
| </param> |
| <briefdescription> |
| <para>Returns a <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> for each delete manifest in this snapshot. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para><parameterlist kind="param"><parameteritem> |
| <parameternamelist> |
| <parametername>file_io</parametername> |
| </parameternamelist> |
| <parameterdescription> |
| <para>The <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> instance to use for reading the manifest list </para> |
| </parameterdescription> |
| </parameteritem> |
| </parameterlist> |
| <simplesect kind="return"><para>A span of <ref refid="structiceberg_1_1ManifestFile" kindref="compound">ManifestFile</ref> instances, or an error </para> |
| </simplesect> |
| </para> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="483" column="10" bodyfile="iceberg/snapshot.cc" bodystart="270" bodyend="277"/> |
| </memberdef> |
| </sectiondef> |
| <sectiondef kind="private-static-func"> |
| <memberdef kind="function" id="classiceberg_1_1SnapshotCache_1aee9e2d185077bb1e230d27f3118b19da" prot="private" static="yes" const="no" explicit="no" inline="no" virt="non-virtual"> |
| <type>Result< ManifestsCache ></type> |
| <definition>Result< SnapshotCache::ManifestsCache > iceberg::SnapshotCache::InitManifestsCache</definition> |
| <argsstring>(const Snapshot *snapshot, std::shared_ptr< FileIO > file_io)</argsstring> |
| <name>InitManifestsCache</name> |
| <qualifiedname>iceberg::SnapshotCache::InitManifestsCache</qualifiedname> |
| <param> |
| <type>const <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> *</type> |
| <declname>snapshot</declname> |
| </param> |
| <param> |
| <type>std::shared_ptr< <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> ></type> |
| <declname>file_io</declname> |
| </param> |
| <briefdescription> |
| <para>Initialize manifests cache by loading them from the manifest list file. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para><parameterlist kind="param"><parameteritem> |
| <parameternamelist> |
| <parametername>snapshot</parametername> |
| </parameternamelist> |
| <parameterdescription> |
| <para>The snapshot to initialize the manifests cache for </para> |
| </parameterdescription> |
| </parameteritem> |
| <parameteritem> |
| <parameternamelist> |
| <parametername>file_io</parametername> |
| </parameternamelist> |
| <parameterdescription> |
| <para>The <ref refid="classiceberg_1_1FileIO" kindref="compound">FileIO</ref> instance to use for reading the manifest list </para> |
| </parameterdescription> |
| </parameteritem> |
| </parameterlist> |
| <simplesect kind="return"><para>A result containing the manifests cache </para> |
| </simplesect> |
| </para> |
| </detaileddescription> |
| <inbodydescription> |
| </inbodydescription> |
| <location file="iceberg/snapshot.h" line="496" column="17" bodyfile="iceberg/snapshot.cc" bodystart="223" bodyend="254"/> |
| </memberdef> |
| </sectiondef> |
| <briefdescription> |
| <para>A snapshot with cached manifest loading capabilities. </para> |
| </briefdescription> |
| <detaileddescription> |
| <para>This class wraps a <ref refid="structiceberg_1_1Snapshot" kindref="compound">Snapshot</ref> pointer and provides lazy-loading of manifests. </para> |
| </detaileddescription> |
| <location file="iceberg/snapshot.h" line="459" column="1" bodyfile="iceberg/snapshot.h" bodystart="459" bodyend="504"/> |
| <listofallmembers> |
| <member refid="classiceberg_1_1SnapshotCache_1ae4cae94c907194ca293dc7dd0f554e95" prot="public" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>DataManifests</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1aac4d585d74577958db24c559e421a450" prot="public" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>DeleteManifests</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1aee9e2d185077bb1e230d27f3118b19da" prot="private" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>InitManifestsCache</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1a831934b6a12ce637f7aecd80b0c2fa8e" prot="public" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>Manifests</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1a6e32e2e312a64cb169285c0443d44526" prot="private" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>manifests_cache_</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1aa35c7a6f1993167794c1cacb1b1e22e5" prot="private" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>ManifestsCache</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1a673648c4ae8593852e7d7bf762cb9df3" prot="public" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>snapshot</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1a61264968947d71d2b36e772c67d6506c" prot="private" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>snapshot_</name></member> |
| <member refid="classiceberg_1_1SnapshotCache_1a16833bcc6e2b4036d813f62ce7e9571e" prot="public" virt="non-virtual"><scope>iceberg::SnapshotCache</scope><name>SnapshotCache</name></member> |
| </listofallmembers> |
| </compounddef> |
| </doxygen> |