|
| constexpr | Vec ()=default |
| template<typename F, std::enable_if_t< std::is_invocable_v< F, std::integral_constant< uint32_t, 0u > >, uint32_t > = 0u> |
| constexpr | Vec (F &&generator) |
| | Initialize via a generator expression.
|
| template<typename... T_Args> |
| constexpr | Vec (T_Args const &... args) |
| | Constructor for N-dimensional vector.
|
| constexpr | Vec (T_Storage const &other) |
| constexpr | Vec (Vec const &other)=default |
| template<typename T_OtherStorage> |
| constexpr | Vec (Vec< T_Type, T_dim, T_OtherStorage > const &other) |
| | constructor allows changing the storage policy
|
| constexpr Vec< T_Type, T_dim > | assign (concepts::CVector auto const selection, concepts::Vector< T_Type > auto const &value) const |
| | Assign an value to the given index position.
|
template<uint32_t T_elementIdx = 0>
requires (T_elementIdx < T_dim) |
| constexpr Vec< T_Type, T_dim > | assign (T_Type const &value) const |
| | Assign an value to the given index position.
|
| constexpr decltype(auto) | back () |
| constexpr decltype(auto) | back () const |
| constexpr Vec< T_Type, T_dim - 1u > | eraseBack () const |
| | Shrink the vector.
|
| template<typename T_OtherStorage> |
| constexpr auto | min (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) const |
| template<uint32_t T_deferDim = T_dim, typename = typename std::enable_if<T_deferDim == 1u>::type> |
| constexpr | operator type () |
| | Allow static_cast / explicit cast to member type for 1D vector.
|
| template<typename T_OtherStorage> |
| constexpr bool | operator!= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) const |
| | != comparison operator.
|
| constexpr Vec | operator- () const |
| constexpr Vec & | operator= (Vec &&)=default |
| constexpr Vec & | operator= (Vec const &)=default |
| template<typename T_OtherStorage> |
| constexpr bool | operator== (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) const |
| | == comparison operator.
|
| constexpr decltype(auto) | operator[] (std::integral auto const idx) |
| constexpr decltype(auto) | operator[] (std::integral auto const idx) const |
| template<typename T, T... T_values> |
| constexpr auto | operator[] (Vec< T, sizeof...(T_values), detail::CVec< T, T_values... > > const v) const |
| | swizzle operator
|
| constexpr type | product () const |
| | Returns product of all components.
|
template<uint32_t T_elementIdx = T_dim - 1u>
requires (T_elementIdx < T_dim) |
| constexpr Vec< T_Type, T_dim > | rAssign (T_Type const &value) const |
| | Assign an value to the given index position.
|
| constexpr auto | reduce (auto &&reduceFunc) const -> decltype(reduceFunc(std::declval< type >(), std::declval< type >())) |
| | reduce all elements to a single value
|
| template<typename T, T... T_values> |
| constexpr auto | ref (Vec< T, sizeof...(T_values), detail::CVec< T, T_values... > > const v) |
| template<typename T, T... T_values> |
| constexpr auto | ref (Vec< T, sizeof...(T_values), detail::CVec< T, T_values... > > const v) const |
template<std::integral auto dimToRemove>
requires (T_dim >= 2u) |
| constexpr Vec< type, T_dim - 1u > | remove () const |
| | Removes a component.
|
| constexpr Vec | revert () const |
| template<uint32_t T_numElements> |
| constexpr Vec< T_Type, T_numElements > | rshrink () const |
| | Shrink the number of elements of a vector.
|
| template<uint32_t T_numElements> |
| constexpr Vec< type, T_numElements > | rshrink (std::integral auto const startIdx) const |
| | Shrink the number of elements of a vector.
|
| constexpr type | sum () const |
| | Returns sum of all components.
|
| constexpr Vec | toRT () const |
| std::string | toString (std::string const separator=",", std::string const enclosings="{}") const |
| | create string out of the vector
|
| template<typename T_OtherStorage> |
| constexpr Vec & | operator+= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) |
| | assign operator
|
| constexpr Vec & | operator+= (concepts::LosslesslyConvertible< T_Type > auto const value) |
| | assign operator
|
| template<typename T_OtherStorage> |
| constexpr Vec & | operator-= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) |
| | assign operator
|
| constexpr Vec & | operator-= (concepts::LosslesslyConvertible< T_Type > auto const value) |
| | assign operator
|
| template<typename T_OtherStorage> |
| constexpr Vec & | operator/= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) |
| | assign operator
|
| constexpr Vec & | operator/= (concepts::LosslesslyConvertible< T_Type > auto const value) |
| | assign operator
|
| template<typename T_OtherStorage> |
| constexpr Vec & | operator*= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) |
| | assign operator
|
| constexpr Vec & | operator*= (concepts::LosslesslyConvertible< T_Type > auto const value) |
| | assign operator
|
| template<typename T_OtherStorage> |
| constexpr Vec & | operator= (Vec< T_Type, T_dim, T_OtherStorage > const &rhs) |
| | assign operator
|
| constexpr Vec & | operator= (concepts::LosslesslyConvertible< T_Type > auto const value) |
| | assign operator
|
| constexpr decltype(auto) | x () |
| | named member access
|
| constexpr decltype(auto) | x () const |
| | named member access
|
| constexpr decltype(auto) | y () |
| | named member access
|
| constexpr decltype(auto) | y () const |
| | named member access
|
| constexpr decltype(auto) | z () |
| | named member access
|
| constexpr decltype(auto) | z () const |
| | named member access
|
| constexpr decltype(auto) | w () |
| | named member access
|
| constexpr decltype(auto) | w () const |
| | named member access
|
template<typename T_Type, uint32_t T_dim, typename T_Storage = alpaka::ArrayStorage<T_Type, T_dim>>
struct alpaka::Vec< T_Type, T_dim, T_Storage >
Definition at line 178 of file Vec.hpp.