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::TemplatedValidityData< V > Struct Template Reference
Collaboration diagram for duckdb::TemplatedValidityData< V >:

Public Member Functions

 TemplatedValidityData (idx_t count)
 
 TemplatedValidityData (const V *validity_mask, idx_t count)
 

Static Public Member Functions

static idx_t EntryCount (idx_t count)
 

Public Attributes

unsafe_unique_array< Vowned_data
 

Static Public Attributes

static constexpr const idx_t BITS_PER_VALUE = sizeof(V) * 8
 
static constexpr const V MAX_ENTRY = V(~V(0))
 

Constructor & Destructor Documentation

◆ TemplatedValidityData() [1/2]

template<typename V >
duckdb::TemplatedValidityData< V >::TemplatedValidityData ( idx_t  count)
inlineexplicit
8953 {
8954 auto entry_count = EntryCount(count);
8955 owned_data = make_unsafe_uniq_array_uninitialized<V>(entry_count);
8956 for (idx_t entry_idx = 0; entry_idx < entry_count; entry_idx++) {
8957 owned_data[entry_idx] = MAX_ENTRY;
8958 }
8959 }

◆ TemplatedValidityData() [2/2]

template<typename V >
duckdb::TemplatedValidityData< V >::TemplatedValidityData ( const V validity_mask,
idx_t  count 
)
inline
8960 {
8961 D_ASSERT(validity_mask);
8962 auto entry_count = EntryCount(count);
8963 owned_data = make_unsafe_uniq_array_uninitialized<V>(entry_count);
8964 for (idx_t entry_idx = 0; entry_idx < entry_count; entry_idx++) {
8965 owned_data[entry_idx] = validity_mask[entry_idx];
8966 }
8967 }

Member Function Documentation

◆ EntryCount()

template<typename V >
static idx_t duckdb::TemplatedValidityData< V >::EntryCount ( idx_t  count)
inlinestatic
8972 {
8973 return (count + (BITS_PER_VALUE - 1)) / BITS_PER_VALUE;
8974 }

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