Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb::LazyMultiFileList Class Referenceabstract

Lazily expanded MultiFileList. More...

Inheritance diagram for duckdb::LazyMultiFileList:
Collaboration diagram for duckdb::LazyMultiFileList:

Public Member Functions

 LazyMultiFileList (optional_ptr< ClientContext > context)
 
vector< OpenFileInfoGetAllFiles () const override
 
FileExpandResult GetExpandResult () const override
 
idx_t GetTotalFileCount () const override
 Get the total file count - forces all files to be expanded / known so the exact count can be computed.
 
MultiFileCount GetFileCount (idx_t min_exact_count=0) const override
 
- Public Member Functions inherited from duckdb::MultiFileList
MultiFileListIterationHelper Files () const
 Get Iterator over the files for pretty for loops.
 
void InitializeScan (MultiFileListScanData &iterator) const
 Initialize a sequential scan over a file list.
 
bool Scan (MultiFileListScanData &iterator, OpenFileInfo &result_file) const
 Scan the next file into result_file, returns false when out of files.
 
OpenFileInfo GetFirstFile () const
 Returns the first file or an empty string if GetTotalFileCount() == 0.
 
bool IsEmpty () const
 Syntactic sugar for GetExpandResult() == FileExpandResult::NO_FILES.
 
virtual unique_ptr< MultiFileListComplexFilterPushdown (ClientContext &context, const MultiFileOptions &options, MultiFilePushdownInfo &info, vector< unique_ptr< Expression > > &filters) const
 Virtual functions for subclasses.
 
virtual unique_ptr< MultiFileListDynamicFilterPushdown (ClientContext &context, const MultiFileOptions &options, const vector< string > &names, const vector< LogicalType > &types, const vector< column_t > &column_ids, TableFilterSet &filters) const
 
virtual vector< OpenFileInfoGetDisplayFileList (optional_idx max_files=optional_idx()) const
 
virtual unique_ptr< NodeStatisticsGetCardinality (ClientContext &context) const
 
virtual unique_ptr< MultiFileListCopy () const
 
template<class TARGET >
TARGETCast ()
 
template<class TARGET >
const TARGETCast () const
 

Protected Member Functions

bool FileIsAvailable (idx_t i) const override
 Whether or not the file at the index is available instantly - or if this requires additional I/O.
 
OpenFileInfo GetFile (idx_t i) const override
 Get the i-th expanded file.
 
virtual bool ExpandNextPath () const =0
 Grabs the next path and expands it into Expanded paths: returns false if no more files to expand.
 

Protected Attributes

mutex lock
 
vector< OpenFileInfoexpanded_files
 The expanded files.
 
bool all_files_expanded = false
 Whether or not all files have been expanded.
 
optional_ptr< ClientContextcontext
 

Private Member Functions

bool ExpandNextPathInternal () const
 

Detailed Description

Lazily expanded MultiFileList.

Member Function Documentation

◆ GetAllFiles()

vector< OpenFileInfo > duckdb::LazyMultiFileList::GetAllFiles ( ) const
overridevirtual

Implements duckdb::MultiFileList.

◆ GetExpandResult()

FileExpandResult duckdb::LazyMultiFileList::GetExpandResult ( ) const
overridevirtual

Implements duckdb::MultiFileList.

◆ GetTotalFileCount()

idx_t duckdb::LazyMultiFileList::GetTotalFileCount ( ) const
overridevirtual

Get the total file count - forces all files to be expanded / known so the exact count can be computed.

Implements duckdb::MultiFileList.

◆ GetFileCount()

MultiFileCount duckdb::LazyMultiFileList::GetFileCount ( idx_t  min_exact_count = 0) const
overridevirtual

Get the file count - anything under "min_exact_count" is allowed to be incomplete (i.e. NOT_ALL_FILES_KNOWN) This allows us to get a rough idea of the file count

Reimplemented from duckdb::MultiFileList.

◆ FileIsAvailable()

bool duckdb::LazyMultiFileList::FileIsAvailable ( idx_t  i) const
overrideprotectedvirtual

Whether or not the file at the index is available instantly - or if this requires additional I/O.

Reimplemented from duckdb::MultiFileList.

◆ GetFile()

OpenFileInfo duckdb::LazyMultiFileList::GetFile ( idx_t  i) const
overrideprotectedvirtual

Get the i-th expanded file.

Implements duckdb::MultiFileList.

◆ ExpandNextPath()

virtual bool duckdb::LazyMultiFileList::ExpandNextPath ( ) const
protectedpure virtual

Grabs the next path and expands it into Expanded paths: returns false if no more files to expand.

Implemented in duckdb::GlobMultiFileList, and duckdb::LocalGlobResult.


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