Morpheus 1.0.0
Dynamic matrix type and algorithms for sparse matrices
|
Traits class for accessing attributes of a Container (Matrix or Vector) More...
#include <Morpheus_ContainerTraits.hpp>
Public Types | |
enum | { is_hostspace = std::is_same<MemorySpace, Kokkos::HostSpace>::value } |
enum | { is_managed = MemoryTraits::is_unmanaged == 0 } |
using | value_type = ValueType |
The type of values held by the container. | |
using | const_value_type = typename std::add_const< ValueType >::type |
The const type of values held by the container. | |
using | non_const_value_type = typename std::remove_const< ValueType >::type |
The non-const type of values held by the container. | |
using | index_type = IndexType |
The type of indices held by the container. | |
using | size_type = size_t |
The size type of the container. | |
using | non_const_index_type = typename std::remove_const< IndexType >::type |
The non-const type of indices held by the container. | |
using | array_layout = ArrayLayout |
The storage layout of data held by the container. | |
using | backend = Backend |
The backend out of which algorithms will be dispatched from. | |
using | execution_space = ExecutionSpace |
The space in which member functions will be executed in. | |
using | memory_space = MemorySpace |
The space in which data will be stored in. | |
using | device_type = Morpheus::Device< execution_space, memory_space, backend > |
A device aware of the execution, memory spaces and backend. | |
using | memory_traits = MemoryTraits |
Represents the user's intended access behaviour. | |
using | host_mirror_backend = typename Morpheus::HostMirror< backend >::backend |
The host equivalent backend. | |
using | type = Container< value_type, index_type, array_layout, backend, memory_traits > |
The complete type of the container. | |
using | HostMirror = Container< non_const_value_type, non_const_index_type, array_layout, Morpheus::Device< typename host_mirror_backend::execution_space, typename host_mirror_backend::memory_space, typename host_mirror_backend::backend >, typename Kokkos::MemoryManaged > |
The host mirror equivalent for the container. More... | |
using | pointer = typename std::add_pointer< type >::type |
The pointer type of the container. | |
using | const_pointer = typename std::add_pointer< typename std::add_const< type >::type >::type |
The const pointer type of the container. | |
using | reference = typename std::add_lvalue_reference< type >::type |
The reference type of the container. | |
using | const_reference = typename std::add_lvalue_reference< typename std::add_const< type >::type >::type |
The const reference type of the container. | |
Traits class for accessing attributes of a Container (Matrix or Vector)
Template argument options:
using Morpheus::ContainerTraits< Container, ValueType, Properties >::HostMirror = Container<non_const_value_type, non_const_index_type, array_layout, Morpheus::Device<typename host_mirror_backend::execution_space, typename host_mirror_backend::memory_space, typename host_mirror_backend::backend>, typename Kokkos::MemoryManaged> |
The host mirror equivalent for the container.