Lattice Land Core Library
Loading...
Searching...
No Matches
lala::DispatchIndex< Allocator > Struct Template Reference

#include <env.hpp>

Public Types

using allocator_type = Allocator
 
using this_type = ListVarIndex<Allocator>
 
using variable_type = Variable<Allocator>
 
template<class T >
using bvector = battery::vector<T, Allocator>
 
using bstring = battery::string<Allocator>
 

Public Member Functions

CUDA DispatchIndex (bvector< variable_type > *lvars)
 
CUDA DispatchIndex (this_type &&other, bvector< variable_type > *lvars)
 
CUDA DispatchIndex (const this_type &other, bvector< variable_type > *lvars)
 
template<class Alloc2 >
CUDA DispatchIndex (const DispatchIndex< Alloc2 > &other, bvector< variable_type > *lvars)
 
CUDA this_typeoperator= (this_type &&other)
 
CUDA this_typeoperator= (const this_type &other)
 
CUDA thrust::optional< size_t > lvar_index_of (const char *lv) const
 
CUDA void push_back (variable_type &&var)
 
CUDA void erase (const char *lv)
 
CUDA void set_lvars (bvector< variable_type > *lvars)
 

Public Attributes

battery::unique_ptr< HashMapVarIndex< allocator_type >, allocator_typecpu_index
 
battery::unique_ptr< ListVarIndex< allocator_type >, allocator_typegpu_index
 

Member Typedef Documentation

◆ allocator_type

template<class Allocator >
using lala::DispatchIndex< Allocator >::allocator_type = Allocator

◆ this_type

template<class Allocator >
using lala::DispatchIndex< Allocator >::this_type = ListVarIndex<Allocator>

◆ variable_type

template<class Allocator >
using lala::DispatchIndex< Allocator >::variable_type = Variable<Allocator>

◆ bvector

template<class Allocator >
template<class T >
using lala::DispatchIndex< Allocator >::bvector = battery::vector<T, Allocator>

◆ bstring

template<class Allocator >
using lala::DispatchIndex< Allocator >::bstring = battery::string<Allocator>

Constructor & Destructor Documentation

◆ DispatchIndex() [1/4]

template<class Allocator >
CUDA lala::DispatchIndex< Allocator >::DispatchIndex ( bvector< variable_type > * lvars)
inline

◆ DispatchIndex() [2/4]

template<class Allocator >
CUDA lala::DispatchIndex< Allocator >::DispatchIndex ( this_type && other,
bvector< variable_type > * lvars )
inline

◆ DispatchIndex() [3/4]

template<class Allocator >
CUDA lala::DispatchIndex< Allocator >::DispatchIndex ( const this_type & other,
bvector< variable_type > * lvars )
inline

◆ DispatchIndex() [4/4]

template<class Allocator >
template<class Alloc2 >
CUDA lala::DispatchIndex< Allocator >::DispatchIndex ( const DispatchIndex< Alloc2 > & other,
bvector< variable_type > * lvars )
inline

Member Function Documentation

◆ operator=() [1/2]

template<class Allocator >
CUDA this_type & lala::DispatchIndex< Allocator >::operator= ( this_type && other)
inline

◆ operator=() [2/2]

template<class Allocator >
CUDA this_type & lala::DispatchIndex< Allocator >::operator= ( const this_type & other)
inline

◆ lvar_index_of()

template<class Allocator >
CUDA thrust::optional< size_t > lala::DispatchIndex< Allocator >::lvar_index_of ( const char * lv) const
inline

◆ push_back()

template<class Allocator >
CUDA void lala::DispatchIndex< Allocator >::push_back ( variable_type && var)
inline

◆ erase()

template<class Allocator >
CUDA void lala::DispatchIndex< Allocator >::erase ( const char * lv)
inline

◆ set_lvars()

template<class Allocator >
CUDA void lala::DispatchIndex< Allocator >::set_lvars ( bvector< variable_type > * lvars)
inline

Member Data Documentation

◆ cpu_index

template<class Allocator >
battery::unique_ptr<HashMapVarIndex<allocator_type>, allocator_type> lala::DispatchIndex< Allocator >::cpu_index

◆ gpu_index

template<class Allocator >
battery::unique_ptr<ListVarIndex<allocator_type>, allocator_type> lala::DispatchIndex< Allocator >::gpu_index

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