Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::SparseBinIteratorFactory< T > Struct Template Reference

#include <AMReX_SparseBins.H>

Public Types

using index_type = int
using const_pointer_type
using const_pointer_input_type

Public Member Functions

 SparseBinIteratorFactory (const Gpu::DeviceVector< index_type > &bins, const Gpu::DeviceVector< index_type > &offsets, const Gpu::DeviceVector< index_type > &permutation, const_pointer_input_type items)
__host__ __device__ index_type getIndex (const index_type bin_number) const noexcept
__host__ __device__ BinIterator< T > getBinIterator (const index_type bin_number) const noexcept

Public Attributes

const index_type * m_bins_ptr
const index_type * m_offsets_ptr
const index_type * m_permutation_ptr
const_pointer_type m_items
index_type m_num_bins

Static Public Attributes

static constexpr index_type m_not_found = std::numeric_limits<index_type>::max()

Member Typedef Documentation

◆ const_pointer_input_type

template<typename T>
using amrex::SparseBinIteratorFactory< T >::const_pointer_input_type
Initial value:
std::conditional_t<IsParticleTileData<T>(),
const T&,
const T*
>

◆ const_pointer_type

template<typename T>
using amrex::SparseBinIteratorFactory< T >::const_pointer_type
Initial value:
std::conditional_t<IsParticleTileData<T>(),
T,
const T*
>

◆ index_type

template<typename T>
using amrex::SparseBinIteratorFactory< T >::index_type = int

Constructor & Destructor Documentation

◆ SparseBinIteratorFactory()

template<typename T>
amrex::SparseBinIteratorFactory< T >::SparseBinIteratorFactory ( const Gpu::DeviceVector< index_type > & bins,
const Gpu::DeviceVector< index_type > & offsets,
const Gpu::DeviceVector< index_type > & permutation,
const_pointer_input_type items )
inline

Member Function Documentation

◆ getBinIterator()

template<typename T>
__host__ __device__ BinIterator< T > amrex::SparseBinIteratorFactory< T >::getBinIterator ( const index_type bin_number) const
inlinenodiscardnoexcept

◆ getIndex()

template<typename T>
__host__ __device__ index_type amrex::SparseBinIteratorFactory< T >::getIndex ( const index_type bin_number) const
inlinenodiscardnoexcept

Member Data Documentation

◆ m_bins_ptr

template<typename T>
const index_type* amrex::SparseBinIteratorFactory< T >::m_bins_ptr

◆ m_items

template<typename T>
const_pointer_type amrex::SparseBinIteratorFactory< T >::m_items

◆ m_not_found

template<typename T>
index_type amrex::SparseBinIteratorFactory< T >::m_not_found = std::numeric_limits<index_type>::max()
staticconstexpr

◆ m_num_bins

template<typename T>
index_type amrex::SparseBinIteratorFactory< T >::m_num_bins

◆ m_offsets_ptr

template<typename T>
const index_type* amrex::SparseBinIteratorFactory< T >::m_offsets_ptr

◆ m_permutation_ptr

template<typename T>
const index_type* amrex::SparseBinIteratorFactory< T >::m_permutation_ptr

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