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::TemporaryFileHandle Class Reference
Collaboration diagram for duckdb::TemporaryFileHandle:

Classes

struct  TemporaryFileLock
 

Public Member Functions

 TemporaryFileHandle (TemporaryFileManager &manager, TemporaryFileIdentifier identifier, idx_t temp_file_count)
 
TemporaryFileIndex TryGetBlockIndex (idx_t block_header_size)
 Try to get an index of where to write in this file. Returns an invalid index if full.
 
void EraseBlockIndex (block_id_t block_index)
 Remove block index from this TemporaryFileHandle.
 
unique_ptr< FileBufferReadTemporaryBuffer (QueryContext context, const TemporaryFileIndex &index_in_file, unique_ptr< FileBuffer > reusable_buffer) const
 Read/Write temporary buffers at given positions in this file (potentially compressed)
 
void WriteTemporaryBuffer (FileBuffer &buffer, idx_t block_index, AllocatedData &compressed_buffer) const
 
bool DeleteIfEmpty ()
 Deletes the file if there are no more blocks.
 
bool IsEncrypted () const
 
TemporaryFileInformation GetTemporaryFile ()
 Get information about this temporary file.
 

Private Member Functions

void CreateFileIfNotExists (TemporaryFileLock &)
 Create temporary file if it did not exist yet.
 
void RemoveTempBlockIndex (TemporaryFileLock &, idx_t index)
 Remove block index from this file.
 
idx_t GetPositionInFile (idx_t index) const
 Get the position of a block in the file.
 

Private Attributes

DatabaseInstancedb
 Reference to the DB instance.
 
const TemporaryFileIdentifier identifier
 The identifier (size/file index) of this TemporaryFileHandle.
 
const idx_t max_allowed_index
 The maximum allowed index.
 
const string path
 File path/handle.
 
unique_ptr< FileHandlehandle
 
mutex file_lock
 Lock for concurrent access and block index manager.
 
BlockIndexManager index_manager
 

Static Private Attributes

static constexpr idx_t MAX_ALLOWED_INDEX_BASE = 4000
 

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