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

Public Member Functions

void GetSchema (ArrowSchemaWrapper &schema)
 
virtual shared_ptr< ArrowArrayWrapperGetNextChunk ()
 
const charGetError ()
 

Public Attributes

ArrowArrayStream arrow_array_stream
 
int64_t number_of_rows
 

Constructor & Destructor Documentation

◆ ~ArrowArrayStreamWrapper()

duckdb::ArrowArrayStreamWrapper::~ArrowArrayStreamWrapper ( )
virtual
45707 {
45708 if (arrow_array_stream.release) {
45709 arrow_array_stream.release(&arrow_array_stream);
45710 D_ASSERT(!arrow_array_stream.release);
45711 }
45712}

◆ ArrowArrayStreamWrapper()

duckdb::ArrowArrayStreamWrapper::ArrowArrayStreamWrapper ( )
inline
11401 {
11402 arrow_array_stream.release = nullptr;
11403 }

Member Function Documentation

◆ GetSchema()

void duckdb::ArrowArrayStreamWrapper::GetSchema ( ArrowSchemaWrapper schema)
45714 {
45715 D_ASSERT(arrow_array_stream.get_schema);
45716 // LCOV_EXCL_START
45717 if (arrow_array_stream.get_schema(&arrow_array_stream, &schema.arrow_schema)) {
45718 throw InvalidInputException("arrow_scan: get_schema failed(): %s", string(GetError()));
45719 }
45720 if (!schema.arrow_schema.release) {
45721 throw InvalidInputException("arrow_scan: released schema passed");
45722 }
45723 if (schema.arrow_schema.n_children < 1) {
45724 throw InvalidInputException("arrow_scan: empty schema passed");
45725 }
45726 // LCOV_EXCL_STOP
45727}

◆ GetNextChunk()

shared_ptr< ArrowArrayWrapper > duckdb::ArrowArrayStreamWrapper::GetNextChunk ( )
virtual
45729 {
45730 auto current_chunk = make_shared_ptr<ArrowArrayWrapper>();
45731 if (arrow_array_stream.get_next(&arrow_array_stream, &current_chunk->arrow_array)) { // LCOV_EXCL_START
45732 throw InvalidInputException("arrow_scan: get_next failed(): %s", string(GetError()));
45733 } // LCOV_EXCL_STOP
45734
45735 return current_chunk;
45736}

◆ GetError()

const char * duckdb::ArrowArrayStreamWrapper::GetError ( )
45738 { // LCOV_EXCL_START
45739 return arrow_array_stream.get_last_error(&arrow_array_stream);
45740} // LCOV_EXCL_STOP

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