#include <chunk_common.hpp>
Public Types | |
using | discrete_domain_type = DiscreteDomain< DDims... > |
using | allocation_mdspan_type = Kokkos::mdspan< ElementType, Kokkos::dextents< std::size_t, sizeof...(DDims)>, LayoutStridedPolicy > |
The dereferenceable part of the co-domain but with a different domain, starting at 0. | |
using | const_allocation_mdspan_type = Kokkos::mdspan< ElementType const, Kokkos::dextents< std::size_t, sizeof...(DDims)>, LayoutStridedPolicy > |
using | discrete_element_type = typename discrete_domain_type::discrete_element_type |
using | discrete_vector_type = typename discrete_domain_type::discrete_vector_type |
using | extents_type = typename allocation_mdspan_type::extents_type |
using | layout_type = typename allocation_mdspan_type::layout_type |
using | accessor_type = typename allocation_mdspan_type::accessor_type |
using | mapping_type = typename allocation_mdspan_type::mapping_type |
using | element_type = typename allocation_mdspan_type::element_type |
using | value_type = typename allocation_mdspan_type::value_type |
using | size_type = typename allocation_mdspan_type::size_type |
using | data_handle_type = typename allocation_mdspan_type::data_handle_type |
using | reference = typename allocation_mdspan_type::reference |
Public Member Functions | |
KOKKOS_FUNCTION constexpr accessor_type | accessor () const |
KOKKOS_FUNCTION constexpr DiscreteVector< DDims... > | extents () const noexcept |
template<class QueryDDim > | |
KOKKOS_FUNCTION constexpr size_type | extent () const noexcept |
KOKKOS_FUNCTION constexpr size_type | size () const noexcept |
KOKKOS_FUNCTION constexpr mapping_type | mapping () const noexcept |
KOKKOS_FUNCTION constexpr bool | is_unique () const noexcept |
KOKKOS_FUNCTION constexpr bool | is_exhaustive () const noexcept |
KOKKOS_FUNCTION constexpr bool | is_strided () const noexcept |
template<class QueryDDim > | |
KOKKOS_FUNCTION constexpr size_type | stride () const |
KOKKOS_FUNCTION constexpr discrete_domain_type | domain () const noexcept |
Provide access to the domain on which this chunk is defined. | |
template<class... QueryDDims> | |
KOKKOS_FUNCTION constexpr DiscreteDomain< QueryDDims... > | domain () const noexcept |
Provide access to the domain on which this chunk is defined. | |
Static Public Member Functions | |
static KOKKOS_FUNCTION constexpr int | rank () noexcept |
static KOKKOS_FUNCTION constexpr int | rank_dynamic () noexcept |
static KOKKOS_FUNCTION constexpr size_type | static_extent (std::size_t r) noexcept |
static KOKKOS_FUNCTION constexpr bool | is_always_unique () noexcept |
static KOKKOS_FUNCTION constexpr bool | is_always_exhaustive () noexcept |
static KOKKOS_FUNCTION constexpr bool | is_always_strided () noexcept |
Protected Types | |
using | internal_mdspan_type = Kokkos::mdspan< ElementType, Kokkos::dextents< std::size_t, sizeof...(DDims)>, Kokkos::layout_stride > |
the raw mdspan underlying this, with the same indexing (0 might no be dereferenceable) | |
Protected Attributes | |
internal_mdspan_type | m_internal_mdspan |
The raw view of the data. | |
discrete_domain_type | m_domain |
The mesh on which this chunk is defined. | |
Friends | |
template<class , class , class > | |
class | ChunkCommon |
template<class , class , class , class > | |
class | ChunkSpan |
template<class , class , class > | |
class | Chunk |
Definition at line 36 of file chunk_common.hpp.
|
protected |
the raw mdspan underlying this, with the same indexing (0 might no be dereferenceable)
Definition at line 40 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::discrete_domain_type = DiscreteDomain<DDims...> |
Definition at line 46 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::allocation_mdspan_type = Kokkos::mdspan< ElementType, Kokkos::dextents<std::size_t, sizeof...(DDims)>, LayoutStridedPolicy> |
The dereferenceable part of the co-domain but with a different domain, starting at 0.
Definition at line 49 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::const_allocation_mdspan_type = Kokkos::mdspan< ElementType const, Kokkos::dextents<std::size_t, sizeof...(DDims)>, LayoutStridedPolicy> |
Definition at line 54 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::discrete_element_type = typename discrete_domain_type::discrete_element_type |
Definition at line 59 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::discrete_vector_type = typename discrete_domain_type::discrete_vector_type |
Definition at line 61 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::extents_type = typename allocation_mdspan_type::extents_type |
Definition at line 63 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::layout_type = typename allocation_mdspan_type::layout_type |
Definition at line 65 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::accessor_type = typename allocation_mdspan_type::accessor_type |
Definition at line 67 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::mapping_type = typename allocation_mdspan_type::mapping_type |
Definition at line 69 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::element_type = typename allocation_mdspan_type::element_type |
Definition at line 71 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::value_type = typename allocation_mdspan_type::value_type |
Definition at line 73 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::size_type = typename allocation_mdspan_type::size_type |
Definition at line 75 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::data_handle_type = typename allocation_mdspan_type::data_handle_type |
Definition at line 77 of file chunk_common.hpp.
using ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy >::reference = typename allocation_mdspan_type::reference |
Definition at line 79 of file chunk_common.hpp.
|
constexprprotecteddefault |
Empty ChunkCommon.
|
inlineconstexprprotectednoexcept |
Constructs a new ChunkCommon from scratch.
internal_mdspan | |
domain |
Definition at line 223 of file chunk_common.hpp.
|
inlineconstexprprotected |
Constructs a new ChunkCommon from scratch.
ptr | the allocation pointer to the data |
domain | the domain that sustains the view |
Definition at line 238 of file chunk_common.hpp.
|
constexprprotecteddefault |
Constructs a new ChunkCommon by copy, yields a new view to the same data.
other | the ChunkCommon to copy |
|
constexprprotecteddefaultnoexcept |
Constructs a new ChunkCommon by move.
other | the ChunkCommon to move |
|
protecteddefaultnoexcept |
|
inlinestaticconstexprnoexcept |
Definition at line 101 of file chunk_common.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 106 of file chunk_common.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 111 of file chunk_common.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 116 of file chunk_common.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 121 of file chunk_common.hpp.
|
inlinestaticconstexprnoexcept |
Definition at line 126 of file chunk_common.hpp.
|
inlineconstexpr |
Definition at line 151 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 156 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 162 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 167 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 172 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 177 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 182 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Definition at line 187 of file chunk_common.hpp.
|
inlineconstexpr |
Definition at line 193 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Provide access to the domain on which this chunk is defined.
Definition at line 201 of file chunk_common.hpp.
|
inlineconstexprnoexcept |
Provide access to the domain on which this chunk is defined.
Definition at line 210 of file chunk_common.hpp.
|
constexprprotecteddefault |
Copy-assigns a new value to this ChunkCommon, yields a new view to the same data.
other | the ChunkCommon to copy |
|
constexprprotecteddefaultnoexcept |
|
inlineconstexprprotected |
Access to the underlying allocation pointer.
Definition at line 274 of file chunk_common.hpp.
|
inlineconstexprprotected |
Provide a modifiable view of the data.
Definition at line 286 of file chunk_common.hpp.
|
inlineconstexprprotected |
Provide a modifiable view of the data.
Definition at line 294 of file chunk_common.hpp.
|
friend |
Definition at line 83 of file chunk_common.hpp.
Definition at line 86 of file chunk_common.hpp.
Definition at line 89 of file chunk_common.hpp.
|
protected |
The raw view of the data.
Definition at line 95 of file chunk_common.hpp.
|
protected |
The mesh on which this chunk is defined.
Definition at line 98 of file chunk_common.hpp.