template<class Extents>
class gmx::layout_right::mapping< Extents >
Mapping from multidimensional indices within extents to 1D index.
- Template Parameters
-
Extents | the extents of the multidimensional integers for the mapping. |
|
constexpr | mapping () noexcept=default |
| Default constructor.
|
|
constexpr | mapping (mapping &&) noexcept=default |
| Default move constructor.
|
|
constexpr | mapping (const mapping &) noexcept=default |
| Default copy constructor.
|
|
mapping & | operator= (mapping &&) noexcept=default |
| Default move assignment.
|
|
mapping & | operator= (const mapping &) noexcept=default |
| Default copy assignment.
|
|
constexpr | mapping (const Extents &ext) noexcept |
| Construct mapping, setting extents. More...
|
|
constexpr const Extents & | extents () const noexcept |
| Return the extents. More...
|
|
constexpr index_type | required_span_size () const noexcept |
| Return the size of the underlying one-dimensional data structure, so that the mapping is always valid. More...
|
|
template<class... Indices> |
std::enable_if_t< sizeof...(Indices)==Extents::rank(),
index_type > constexpr | operator() (Indices...indices) const noexcept |
| Map the multidimensional indices to 1D. Requires number of indicies have the same dimensionality as the mapping. More...
|
|
constexpr bool | is_unique () const noexcept |
| Report that this mapping is unique.
|
|
constexpr bool | is_contiguous () const noexcept |
| Report that this mapping is contiguous.
|
|
constexpr bool | is_strided () const noexcept |
| Report that this mapping is strided.
|
|
constexpr index_type | stride (const size_t R) const noexcept |
| Return the stride of dimension r. More...
|
|