|
using | span_type = ChunkSpan< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy, MemorySpace > |
| type of a span of this full chunk More...
|
|
using | view_type = ChunkSpan< ElementType const, DiscreteDomain< DDims... >, LayoutStridedPolicy, MemorySpace > |
| type of a view of this full chunk More...
|
|
using | mdomain_type = DiscreteDomain< DDims... > |
|
using | memory_space = MemorySpace |
|
using | allocation_mdspan_type = std::experimental::mdspan< ElementType, std::experimental::dextents< sizeof...(DDims)>, LayoutStridedPolicy > |
| The dereferenceable part of the co-domain but with a different domain, starting at 0. More...
|
|
using | discrete_element_type = typename mdomain_type::discrete_element_type |
|
using | extents_type = typename base_type::extents_type |
|
using | layout_type = typename base_type::layout_type |
|
using | accessor_type = typename base_type::accessor_type |
|
using | mapping_type = typename base_type::mapping_type |
|
using | element_type = typename base_type::element_type |
|
using | value_type = typename base_type::value_type |
|
using | size_type = typename base_type::size_type |
|
using | difference_type = typename base_type::difference_type |
|
using | pointer = typename base_type::pointer |
|
using | reference = typename base_type::reference |
|
Public Types inherited from ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy > |
using | mdomain_type = DiscreteDomain< DDims... > |
|
using | allocation_mdspan_type = std::experimental::mdspan< ElementType, std::experimental::dextents< sizeof...(DDims)>, LayoutStridedPolicy > |
| The dereferenceable part of the co-domain but with a different domain, starting at 0. More...
|
|
using | const_allocation_mdspan_type = std::experimental::mdspan< const ElementType, std::experimental::dextents< sizeof...(DDims)>, LayoutStridedPolicy > |
|
using | discrete_element_type = typename mdomain_type::discrete_element_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 | difference_type = typename allocation_mdspan_type::difference_type |
|
using | pointer = typename allocation_mdspan_type::pointer |
|
using | reference = typename allocation_mdspan_type::reference |
|
|
constexpr | ChunkSpan ()=default |
| Empty ChunkSpan. More...
|
|
constexpr | ChunkSpan (ChunkSpan const &other)=default |
| Constructs a new ChunkSpan by copy, yields a new view to the same data. More...
|
|
constexpr | ChunkSpan (ChunkSpan &&other)=default |
| Constructs a new ChunkSpan by move. More...
|
|
template<class OElementType , class Allocator > |
constexpr | ChunkSpan (Chunk< OElementType, mdomain_type, Allocator > &other) noexcept |
| Constructs a new ChunkSpan from a Chunk, yields a new view to the same data. More...
|
|
template<class OElementType , class SFINAEElementType = ElementType, class = std::enable_if_t<std::is_const_v<SFINAEElementType>>, class Allocator > |
constexpr | ChunkSpan (Chunk< OElementType, mdomain_type, Allocator > const &other) noexcept |
| Constructs a new ChunkSpan from a Chunk, yields a new view to the same data. More...
|
|
template<class OElementType > |
constexpr | ChunkSpan (ChunkSpan< OElementType, mdomain_type, layout_type, MemorySpace > const &other) noexcept |
| Constructs a new ChunkSpan by copy of a chunk, yields a new view to the same data. More...
|
|
template<class Mapping = mapping_type, std::enable_if_t< std::is_constructible_v< Mapping, extents_type >, int > = 0> |
constexpr | ChunkSpan (ElementType *const ptr, mdomain_type const &domain) |
| Constructs a new ChunkSpan from scratch. More...
|
|
constexpr | ChunkSpan (allocation_mdspan_type allocation_mdspan, mdomain_type const &domain) |
| Constructs a new ChunkSpan from scratch. More...
|
|
template<class KokkosView , class = std::enable_if_t<Kokkos::is_view<KokkosView>::value>> |
constexpr | ChunkSpan (KokkosView const &view, mdomain_type const &domain) noexcept |
| Constructs a new ChunkSpan from scratch. More...
|
|
constexpr ChunkSpan & | operator= (ChunkSpan const &other)=default |
| Copy-assigns a new value to this ChunkSpan, yields a new view to the same data. More...
|
|
constexpr ChunkSpan & | operator= (ChunkSpan &&other)=default |
| Move-assigns a new value to this ChunkSpan. More...
|
|
template<class... QueryDDims> |
constexpr auto | operator[] (DiscreteElement< QueryDDims... > const &slice_spec) const |
| Slice out some dimensions. More...
|
|
template<class... QueryDDims> |
constexpr auto | operator[] (DiscreteDomain< QueryDDims... > const &odomain) const |
| Slice out some dimensions. More...
|
|
template<class... ODDims> |
constexpr reference | operator() (DiscreteElement< ODDims > const &... delems) const noexcept |
| Element access using a list of DiscreteElement. More...
|
|
template<class... ODDims, class = std::enable_if_t<sizeof...(ODDims) != 1>> |
constexpr reference | operator() (DiscreteElement< ODDims... > const &delems) const noexcept |
| Element access using a multi-dimensional DiscreteElement. More...
|
|
constexpr ElementType * | data () const |
| Access to the underlying allocation pointer. More...
|
|
constexpr internal_mdspan_type | internal_mdspan () const |
|
constexpr allocation_mdspan_type | allocation_mdspan () const |
| Provide a mdspan on the memory allocation. More...
|
|
constexpr auto | allocation_kokkos_view () const |
| Provide a mdspan on the memory allocation. More...
|
|
constexpr view_type | span_cview () const |
|
constexpr span_type | span_view () const |
|
Public Member Functions inherited from ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy > |
constexpr accessor_type | accessor () const |
|
constexpr DiscreteVector< DDims... > | extents () const noexcept |
|
template<class QueryDDim > |
constexpr size_type | extent () const noexcept |
|
constexpr size_type | size () const noexcept |
|
constexpr mapping_type | mapping () const noexcept |
|
constexpr bool | is_unique () const noexcept |
|
constexpr bool | is_contiguous () const noexcept |
|
constexpr bool | is_strided () const noexcept |
|
template<class QueryDDim > |
constexpr size_type | stride () const |
|
constexpr mdomain_type | domain () const noexcept |
| Provide access to the domain on which this chunk is defined. More...
|
|
template<class... QueryDDims> |
constexpr DiscreteDomain< QueryDDims... > | domain () const noexcept |
| Provide access to the domain on which this chunk is defined. More...
|
|
|
template<class QueryDDim , class... ODDims> |
auto | get_slicer_for (DiscreteElement< ODDims... > const &c) const |
|
template<class QueryDDim , class... ODDims> |
auto | get_slicer_for (DiscreteDomain< ODDims... > const &c) const |
|
Protected Member Functions inherited from ddc::ChunkCommon< ElementType, DiscreteDomain< DDims... >, LayoutStridedPolicy > |
constexpr | ChunkCommon ()=default |
| Empty ChunkCommon. More...
|
|
constexpr | ChunkCommon (internal_mdspan_type internal_mdspan, mdomain_type const &domain) noexcept |
| Constructs a new ChunkCommon from scratch. More...
|
|
template<class Mapping = mapping_type, std::enable_if_t< std::is_constructible_v< Mapping, extents_type >, int > = 0> |
constexpr | ChunkCommon (ElementType *ptr, mdomain_type const &domain) |
| Constructs a new ChunkCommon from scratch. More...
|
|
constexpr | ChunkCommon (ChunkCommon const &other)=default |
| Constructs a new ChunkCommon by copy, yields a new view to the same data. More...
|
|
constexpr | ChunkCommon (ChunkCommon &&other)=default |
| Constructs a new ChunkCommon by move. More...
|
|
constexpr ChunkCommon & | operator= (ChunkCommon const &other)=default |
| Copy-assigns a new value to this ChunkCommon, yields a new view to the same data. More...
|
|
constexpr ChunkCommon & | operator= (ChunkCommon &&other)=default |
| Move-assigns a new value to this ChunkCommon. More...
|
|
constexpr ElementType * | data () const |
| Access to the underlying allocation pointer. More...
|
|
constexpr internal_mdspan_type | internal_mdspan () const |
| Provide a modifiable view of the data. More...
|
|
constexpr allocation_mdspan_type | allocation_mdspan () const |
| Provide a modifiable view of the data. More...
|
|