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::MultiFileList Class Referenceabstract
Inheritance diagram for duckdb::MultiFileList:

Public Member Functions

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< OpenFileInfoGetAllFiles () const =0
 
virtual FileExpandResult GetExpandResult () const =0
 
virtual idx_t GetTotalFileCount () const =0
 Get the total file count - forces all files to be expanded / known so the exact count can be computed.
 
virtual MultiFileCount GetFileCount (idx_t min_exact_count=0) 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

virtual bool FileIsAvailable (idx_t i) const
 Whether or not the file at the index is available instantly - or if this requires additional I/O.
 
virtual OpenFileInfo GetFile (idx_t i) const =0
 Get the i-th expanded file.
 

Detailed Description

Abstract class for lazily generated list of file paths/globs NOTE: subclasses are responsible for ensuring thread-safety

Member Function Documentation

◆ GetAllFiles()

virtual vector< OpenFileInfo > duckdb::MultiFileList::GetAllFiles ( ) const
pure virtual

Implemented in duckdb::SimpleMultiFileList.

◆ GetTotalFileCount()

virtual idx_t duckdb::MultiFileList::GetTotalFileCount ( ) const
pure virtual

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

Implemented in duckdb::SimpleMultiFileList, and duckdb::LazyMultiFileList.

◆ GetFileCount()

virtual MultiFileCount duckdb::MultiFileList::GetFileCount ( idx_t  min_exact_count = 0) const
virtual

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 in duckdb::LazyMultiFileList.

◆ FileIsAvailable()

virtual bool duckdb::MultiFileList::FileIsAvailable ( idx_t  i) const
protectedvirtual

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

Reimplemented in duckdb::LazyMultiFileList.

◆ GetFile()

virtual OpenFileInfo duckdb::MultiFileList::GetFile ( idx_t  i) const
protectedpure virtual

Get the i-th expanded file.

Implemented in duckdb::SimpleMultiFileList, and duckdb::LazyMultiFileList.

◆ Cast() [1/2]

template<class TARGET >
TARGET & duckdb::MultiFileList::Cast ( )
inline
53800 {
53801 DynamicCastCheck<TARGET>(this);
53802 return reinterpret_cast<TARGET &>(*this);
53803 }

◆ Cast() [2/2]

template<class TARGET >
const TARGET & duckdb::MultiFileList::Cast ( ) const
inline
53805 {
53806 DynamicCastCheck<TARGET>(this);
53807 return reinterpret_cast<const TARGET &>(*this);
53808 }

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