17 #ifndef KOKKOS_IMPL_PUBLIC_INCLUDE
18 #include <Kokkos_Macros.hpp>
20 "Including non-public Kokkos header files is not allowed.");
22 #ifndef KOKKOS_KOKKOS_RANK_HPP
23 #define KOKKOS_KOKKOS_RANK_HPP
25 #include <Kokkos_Macros.hpp>
31 template <
unsigned N, Iterate OuterDir = Iterate::Default,
32 Iterate InnerDir = Iterate::Default>
34 static_assert(N != 0u,
"Kokkos Error: rank 0 undefined");
35 static_assert(N != 1u,
36 "Kokkos Error: rank 1 is not a multi-dimensional range");
37 static_assert(N < 9u,
"Kokkos Error: Unsupported rank...");
39 using iteration_pattern = Rank<N, OuterDir, InnerDir>;
41 static constexpr
int rank = N;
42 static constexpr Iterate outer_direction = OuterDir;
43 static constexpr Iterate inner_direction = InnerDir;
48 #endif // KOKKOS_KOKKOS_RANK_HPP
Declaration of various MemoryLayout options.