warpcore 0.0.1
Hashing at the Speed of Light on modern CUDA-accelerators
warpcore::ArrayBucket< Value, BucketSize > Struct Template Reference

Public Types

using value_type = Value
 
using index_type = std::uint32_t
 

Public Member Functions

__host____device__ ArrayBucket (value_type value) noexcept
 
__host____device__ ArrayBucket (const ArrayBucket &other) noexcept
 
__host____device__ ArrayBucketoperator= (const ArrayBucket &other) noexcept
 
constexpr __device__ value_typeoperator[] (const index_type i) noexcept
 accessor More...
 
constexpr __device__ const value_typeoperator[] (const index_type i) const noexcept
 const accessor More...
 

Static Public Member Functions

static constexpr __host____device__ index_type bucket_size () noexcept
 get bucket size More...
 

Public Attributes

value_type values_ [BucketSize]
 

Detailed Description

template<class Value, std::uint32_t BucketSize = 1>
struct warpcore::ArrayBucket< Value, BucketSize >

Definition at line 12 of file multi_bucket_hash_table.cuh.

Member Typedef Documentation

◆ index_type

template<class Value , std::uint32_t BucketSize = 1>
using warpcore::ArrayBucket< Value, BucketSize >::index_type = std::uint32_t

Definition at line 14 of file multi_bucket_hash_table.cuh.

◆ value_type

template<class Value , std::uint32_t BucketSize = 1>
using warpcore::ArrayBucket< Value, BucketSize >::value_type = Value

Definition at line 13 of file multi_bucket_hash_table.cuh.

Constructor & Destructor Documentation

◆ ArrayBucket() [1/2]

template<class Value , std::uint32_t BucketSize = 1>
__host____device__ warpcore::ArrayBucket< Value, BucketSize >::ArrayBucket ( value_type  value)
inlineexplicitnoexcept

Definition at line 21 of file multi_bucket_hash_table.cuh.

◆ ArrayBucket() [2/2]

template<class Value , std::uint32_t BucketSize = 1>
__host____device__ warpcore::ArrayBucket< Value, BucketSize >::ArrayBucket ( const ArrayBucket< Value, BucketSize > &  other)
inlinenoexcept

Definition at line 31 of file multi_bucket_hash_table.cuh.

Member Function Documentation

◆ bucket_size()

template<class Value , std::uint32_t BucketSize = 1>
static constexpr __host____device__ index_type warpcore::ArrayBucket< Value, BucketSize >::bucket_size ( )
inlinestaticconstexprnoexcept

get bucket size

Returns
bucket size

Definition at line 55 of file multi_bucket_hash_table.cuh.

◆ operator=()

template<class Value , std::uint32_t BucketSize = 1>
__host____device__ ArrayBucket& warpcore::ArrayBucket< Value, BucketSize >::operator= ( const ArrayBucket< Value, BucketSize > &  other)
inlinenoexcept

Definition at line 41 of file multi_bucket_hash_table.cuh.

◆ operator[]() [1/2]

template<class Value , std::uint32_t BucketSize = 1>
constexpr __device__ const value_type& warpcore::ArrayBucket< Value, BucketSize >::operator[] ( const index_type  i) const
inlineconstexprnoexcept

const accessor

Parameters
[in]iindex to access
Returns
value at position i

Definition at line 75 of file multi_bucket_hash_table.cuh.

◆ operator[]() [2/2]

template<class Value , std::uint32_t BucketSize = 1>
constexpr __device__ value_type& warpcore::ArrayBucket< Value, BucketSize >::operator[] ( const index_type  i)
inlineconstexprnoexcept

accessor

Parameters
[in]iindex to access
Returns
value at position i

Definition at line 65 of file multi_bucket_hash_table.cuh.

Member Data Documentation

◆ values_

template<class Value , std::uint32_t BucketSize = 1>
value_type warpcore::ArrayBucket< Value, BucketSize >::values_[BucketSize]

Definition at line 80 of file multi_bucket_hash_table.cuh.


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