Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Runtime::Internal::PointerTable Class Reference

#include <pointer_table.h>

Public Member Functions

 PointerTable (void *user_context, size_t initial_capacity=0, const SystemMemoryAllocatorFns &sma=default_allocator())
 
 PointerTable (const PointerTable &other)
 
 ~PointerTable ()
 
void initialize (void *user_context, size_t initial_capacity=0, const SystemMemoryAllocatorFns &sma=default_allocator())
 
PointerTableoperator= (const PointerTable &other)
 
bool operator== (const PointerTable &other) const
 
bool operator!= (const PointerTable &other) const
 
void reserve (void *user_context, size_t capacity, bool free_existing=false)
 
void resize (void *user_context, size_t entry_count, bool realloc=true)
 
void assign (void *user_context, size_t index, const void *entry_ptr)
 
void insert (void *user_context, size_t index, const void *entry_ptr)
 
void prepend (void *user_context, const void *entry_ptr)
 
void append (void *user_context, const void *entry_ptr)
 
void remove (void *user_context, size_t index)
 
void fill (void *user_context, const void **array, size_t array_size)
 
void insert (void *user_context, size_t index, const void **array, size_t array_size)
 
void replace (void *user_context, size_t index, const void **array, size_t array_size)
 
void prepend (void *user_context, const void **array, size_t array_size)
 
void append (void *user_context, const void **array, size_t array_size)
 
void remove (void *user_context, size_t index, size_t entry_count)
 
void pop_front (void *user_context)
 
void pop_back (void *user_context)
 
void shrink_to_fit (void *user_context)
 
void clear (void *user_context)
 
void destroy (void *user_context)
 
bool empty () const
 
size_t size () const
 
void * operator[] (size_t index)
 
void * operator[] (size_t index) const
 
void ** data ()
 
const void ** data () const
 
void * front ()
 
void * back ()
 
const SystemMemoryAllocatorFnscurrent_allocator () const
 

Static Public Member Functions

static const SystemMemoryAllocatorFnsdefault_allocator ()
 

Static Public Attributes

static constexpr size_t default_capacity = 32
 

Detailed Description

Definition at line 14 of file pointer_table.h.

Constructor & Destructor Documentation

◆ PointerTable() [1/2]

Halide::Runtime::Internal::PointerTable::PointerTable ( void * user_context,
size_t initial_capacity = 0,
const SystemMemoryAllocatorFns & sma = default_allocator() )
explicit

◆ PointerTable() [2/2]

Halide::Runtime::Internal::PointerTable::PointerTable ( const PointerTable & other)

Definition at line 83 of file pointer_table.h.

◆ ~PointerTable()

Halide::Runtime::Internal::PointerTable::~PointerTable ( )

Definition at line 95 of file pointer_table.h.

References destroy().

Member Function Documentation

◆ initialize()

void Halide::Runtime::Internal::PointerTable::initialize ( void * user_context,
size_t initial_capacity = 0,
const SystemMemoryAllocatorFns & sma = default_allocator() )

Definition at line 108 of file pointer_table.h.

References reserve(), and user_context.

◆ operator=()

PointerTable & Halide::Runtime::Internal::PointerTable::operator= ( const PointerTable & other)

Definition at line 117 of file pointer_table.h.

References memcpy(), and resize().

◆ operator==()

bool Halide::Runtime::Internal::PointerTable::operator== ( const PointerTable & other) const

Definition at line 127 of file pointer_table.h.

References memcmp().

◆ operator!=()

bool Halide::Runtime::Internal::PointerTable::operator!= ( const PointerTable & other) const

Definition at line 134 of file pointer_table.h.

◆ reserve()

void Halide::Runtime::Internal::PointerTable::reserve ( void * user_context,
size_t capacity,
bool free_existing = false )

Definition at line 173 of file pointer_table.h.

References Halide::max(), and user_context.

Referenced by initialize(), and PointerTable().

◆ resize()

void Halide::Runtime::Internal::PointerTable::resize ( void * user_context,
size_t entry_count,
bool realloc = true )

◆ assign()

◆ insert() [1/2]

void Halide::Runtime::Internal::PointerTable::insert ( void * user_context,
size_t index,
const void * entry_ptr )

Definition at line 221 of file pointer_table.h.

References insert(), and user_context.

Referenced by append(), insert(), prepend(), and prepend().

◆ prepend() [1/2]

void Halide::Runtime::Internal::PointerTable::prepend ( void * user_context,
const void * entry_ptr )

Definition at line 151 of file pointer_table.h.

References insert(), and user_context.

Referenced by Halide::Runtime::Internal::StringTable::prepend().

◆ append() [1/2]

void Halide::Runtime::Internal::PointerTable::append ( void * user_context,
const void * entry_ptr )

Definition at line 155 of file pointer_table.h.

References append(), and user_context.

Referenced by append(), and Halide::Runtime::Internal::StringTable::append().

◆ remove() [1/2]

void Halide::Runtime::Internal::PointerTable::remove ( void * user_context,
size_t index )

Definition at line 226 of file pointer_table.h.

References remove(), and user_context.

Referenced by pop_front(), and remove().

◆ fill()

void Halide::Runtime::Internal::PointerTable::fill ( void * user_context,
const void ** array,
size_t array_size )

Definition at line 138 of file pointer_table.h.

References memcpy(), resize(), and user_context.

◆ insert() [2/2]

void Halide::Runtime::Internal::PointerTable::insert ( void * user_context,
size_t index,
const void ** array,
size_t array_size )

Definition at line 271 of file pointer_table.h.

References halide_debug_assert, memmove(), replace(), resize(), size(), and user_context.

◆ replace()

void Halide::Runtime::Internal::PointerTable::replace ( void * user_context,
size_t index,
const void ** array,
size_t array_size )

Definition at line 252 of file pointer_table.h.

References halide_debug_assert, Halide::max(), memcpy(), Halide::min(), and user_context.

Referenced by insert().

◆ prepend() [2/2]

void Halide::Runtime::Internal::PointerTable::prepend ( void * user_context,
const void ** array,
size_t array_size )

Definition at line 284 of file pointer_table.h.

References insert(), and user_context.

◆ append() [2/2]

void Halide::Runtime::Internal::PointerTable::append ( void * user_context,
const void ** array,
size_t array_size )

Definition at line 288 of file pointer_table.h.

References insert(), size(), and user_context.

◆ remove() [2/2]

void Halide::Runtime::Internal::PointerTable::remove ( void * user_context,
size_t index,
size_t entry_count )

Definition at line 230 of file pointer_table.h.

References halide_debug_assert, memmove(), resize(), size(), and user_context.

◆ pop_front()

void Halide::Runtime::Internal::PointerTable::pop_front ( void * user_context)

Definition at line 159 of file pointer_table.h.

References halide_debug_assert, remove(), and user_context.

◆ pop_back()

void Halide::Runtime::Internal::PointerTable::pop_back ( void * user_context)

Definition at line 164 of file pointer_table.h.

References halide_debug_assert, resize(), size(), and user_context.

◆ shrink_to_fit()

void Halide::Runtime::Internal::PointerTable::shrink_to_fit ( void * user_context)

◆ clear()

void Halide::Runtime::Internal::PointerTable::clear ( void * user_context)

Definition at line 169 of file pointer_table.h.

References resize(), and user_context.

Referenced by Halide::Runtime::Internal::StringTable::clear().

◆ destroy()

void Halide::Runtime::Internal::PointerTable::destroy ( void * user_context)

◆ empty()

bool Halide::Runtime::Internal::PointerTable::empty ( ) const

Definition at line 293 of file pointer_table.h.

◆ size()

◆ operator[]() [1/2]

void * Halide::Runtime::Internal::PointerTable::operator[] ( size_t index)

Definition at line 301 of file pointer_table.h.

References halide_debug_assert.

◆ operator[]() [2/2]

void * Halide::Runtime::Internal::PointerTable::operator[] ( size_t index) const

Definition at line 306 of file pointer_table.h.

References halide_debug_assert.

◆ data() [1/2]

void ** Halide::Runtime::Internal::PointerTable::data ( )

Definition at line 311 of file pointer_table.h.

Referenced by Halide::Runtime::Internal::StringTable::data().

◆ data() [2/2]

const void ** Halide::Runtime::Internal::PointerTable::data ( ) const

Definition at line 326 of file pointer_table.h.

◆ front()

void * Halide::Runtime::Internal::PointerTable::front ( )

Definition at line 315 of file pointer_table.h.

References halide_debug_assert.

◆ back()

void * Halide::Runtime::Internal::PointerTable::back ( )

Definition at line 320 of file pointer_table.h.

References halide_debug_assert.

◆ current_allocator()

const SystemMemoryAllocatorFns & Halide::Runtime::Internal::PointerTable::current_allocator ( ) const

◆ default_allocator()

const SystemMemoryAllocatorFns & Halide::Runtime::Internal::PointerTable::default_allocator ( )
static

Member Data Documentation

◆ default_capacity

size_t Halide::Runtime::Internal::PointerTable::default_capacity = 32
staticconstexpr

Definition at line 16 of file pointer_table.h.

Referenced by resize().


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