32 #ifndef MCKL_RANDOM_INCREMENT_HPP 33 #define MCKL_RANDOM_INCREMENT_HPP 54 template <
typename T, std::size_t K,
55 bool = (
sizeof(T) * K) %
sizeof(std::uint8_t) == 0,
56 bool = (
sizeof(T) * K) %
sizeof(std::uint16_t) == 0,
62 using type = std::array<T, K>;
65 template <
typename T, std::
size_t K>
70 std::array<std::uint8_t,
sizeof(T) * K /
sizeof(std::uint8_t)>;
73 template <
typename T, std::
size_t K>
78 std::array<std::uint16_t,
sizeof(T) * K /
sizeof(std::uint16_t)>;
81 template <
typename T, std::
size_t K>
89 template <
typename T, std::
size_t K>
103 template <
typename T, std::
size_t K>
108 #endif // MCKL_RANDOM_INCREMENT_HPP std::array< std::uint64_t, sizeof(T) *K/sizeof(std::uint64_t)> type
typename internal::CounterImpl< T, K >::type Counter
A counter type with the same width as std::array<T, K> but with possibly fewer elements.
std::array< std::uint16_t, sizeof(T) *K/sizeof(std::uint16_t)> type
std::array< std::uint8_t, sizeof(T) *K/sizeof(std::uint8_t)> type
std::array< std::uint32_t, sizeof(T) *K/sizeof(std::uint32_t)> type