alpaka
Abstraction Library for Parallel Kernel Acceleration
Loading...
Searching...
No Matches
CVec.hpp File Reference
#include "alpaka/Vec.hpp"
#include "alpaka/core/common.hpp"
#include <array>
#include <concepts>
#include <cstdint>
#include <functional>
#include <type_traits>
#include <utility>

Go to the source code of this file.

Classes

struct  alpaka::detail::Contains< std::integer_sequence< T, T_values... > >
struct  alpaka::detail::Contains< T_Seq< T, T_values... > >

Namespaces

namespace  alpaka
 main alpaka namespace.
namespace  alpaka::detail

Typedefs

template<typename T, T... T_values>
using alpaka::CVec = Vec<T, sizeof...(T_values), detail::CVec<T, T_values...>>
 A vector with compile-time known values.
template<bool pred, typename T, T T_v>
using alpaka::detail::selectValue = std::conditional_t<pred, std::integer_sequence<T>, std::integer_sequence<T, T_v>>

Functions

template<typename Int, Int... Is1, Int... Is2>
constexpr auto alpaka::detail::combine (std::integer_sequence< Int, Is1... >, std::integer_sequence< Int, Is2... >)
template<typename First, typename... Rest>
constexpr auto alpaka::detail::concatenate (First first, Rest... rest)
template<typename Last>
constexpr auto alpaka::detail::concatenate (Last last)
template<typename T, uint32_t T_dim, T T_val>
consteval auto alpaka::fillCVec ()
 Create and return a CVector of some length, filled with the given value.
constexpr auto alpaka::filter (concepts::CVector auto left, concepts::CVector auto right)
 Filter the left vector with the right vector's values.
template<typename T_UnaryOp, typename T, T... T_values>
constexpr auto alpaka::detail::filterValues (T_UnaryOp const op, std::integer_sequence< T, T_values... > _)
 Return all values of an integer sequence for which a filter returns true.
template<typename T, T... T_values>
constexpr auto alpaka::detail::integerSequenceToCVec (std::integer_sequence< T, T_values... >)
template<typename T, uint32_t T_dim>
consteval auto alpaka::iotaCVec ()
 Create and return a CVector of the given length with values 1, 2, ...
template<typename T, T... T_values>
constexpr auto alpaka::detail::toIntegerSequence (alpaka::CVec< T, T_values... >)