|
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR bool | playrho::operator== (const Vector< T, N > &lhs, const Vector< T, N > &rhs) noexcept |
| | Equality operator. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR bool | playrho::operator!= (const Vector< T, N > &lhs, const Vector< T, N > &rhs) noexcept |
| | Inequality operator. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(+T{})>::value, Vector< T, N > > | playrho::operator+ (Vector< T, N > v) noexcept |
| | Unary plus operator. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(-T{})>::value, Vector< T, N > > | playrho::operator- (Vector< T, N > v) noexcept |
| | Unary negation operator. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(T{}+T{})>::value, Vector< T, N > & > | playrho::operator+= (Vector< T, N > &lhs, const Vector< T, N > rhs) noexcept |
| | Increments the left hand side value by the right hand side value. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(T{} - T{})>::value, Vector< T, N > & > | playrho::operator-= (Vector< T, N > &lhs, const Vector< T, N > rhs) noexcept |
| | Decrements the left hand side value by the right hand side value. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(T{}+T{})>::value, Vector< T, N > > | playrho::operator+ (Vector< T, N > lhs, const Vector< T, N > rhs) noexcept |
| | Adds two vectors component-wise. More...
|
| |
| template<typename T , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T, decltype(T{} - T{})>::value, Vector< T, N > > | playrho::operator- (Vector< T, N > lhs, const Vector< T, N > rhs) noexcept |
| | Subtracts two vectors component-wise. More...
|
| |
| template<typename T1 , typename T2 , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T1, decltype(T1{} *T2{})>::value, Vector< T1, N > & > | playrho::operator*= (Vector< T1, N > &lhs, const T2 rhs) noexcept |
| | Multiplication assignment operator. More...
|
| |
| template<typename T1 , typename T2 , std::size_t N> |
| PLAYRHO_CONSTEXPR std::enable_if_t< std::is_same< T1, decltype(T1{}/T2{})>::value, Vector< T1, N > & > | playrho::operator/= (Vector< T1, N > &lhs, const T2 rhs) noexcept |
| | Division assignment operator. More...
|
| |
| template<typename T1 , typename T2 , std::size_t A, std::size_t B, std::size_t C, typename OT = decltype(T1{} * T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsMultipliable< T1, T2 >::value, Vector< Vector< OT, C >, A > > | playrho::operator* (const Vector< Vector< T1, B >, A > &lhs, const Vector< Vector< T2, C >, B > &rhs) noexcept |
| | Calculates the matrix product of the two given vector of vectors (matrices). More...
|
| |
| template<typename T1 , typename T2 , std::size_t A, std::size_t B, typename OT = decltype(T1{} * T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsMultipliable< T1, T2 >::value &&!IsVector< T1 >::value, Vector< OT, B > > | playrho::operator* (const Vector< T1, A > &lhs, const Vector< Vector< T2, B >, A > &rhs) noexcept |
| | Multiplies an A-element vector by a A-by-B vector of vectors. More...
|
| |
| template<typename T1 , typename T2 , std::size_t A, std::size_t B, typename OT = decltype(T1{} * T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsMultipliable< T1, T2 >::value &&!IsVector< T2 >::value, Vector< OT, B > > | playrho::operator* (const Vector< Vector< T1, A >, B > &lhs, const Vector< T2, A > &rhs) noexcept |
| | Multiplies a B-by-A vector of vectors by an A-element vector. More...
|
| |
| template<std::size_t N, typename T1 , typename T2 , typename OT = decltype(T1{} * T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsMultipliable< T1, T2 >::value &&!IsVector< T1 >::value, Vector< OT, N > > | playrho::operator* (const T1 s, Vector< T2, N > a) noexcept |
| | Multiplication operator for non-vector times vector. More...
|
| |
| template<std::size_t N, typename T1 , typename T2 , typename OT = decltype(T1{} * T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsMultipliable< T1, T2 >::value &&!IsVector< T2 >::value, Vector< OT, N > > | playrho::operator* (Vector< T1, N > a, const T2 s) noexcept |
| | Multiplication operator for vector times non-vector. More...
|
| |
| template<std::size_t N, typename T1 , typename T2 , typename OT = decltype(T1{} / T2{})> |
| PLAYRHO_CONSTEXPR std::enable_if_t< IsDivisable< T1, T2 >::value &&!IsVector< T2 >::value, Vector< OT, N > > | playrho::operator/ (Vector< T1, N > a, const T2 s) noexcept |
| | Division operator. More...
|
| |
| template<std::size_t I, std::size_t N, typename T > |
| PLAYRHO_CONSTEXPR auto & | playrho::get (Vector< T, N > &v) noexcept |
| | Gets the specified element of the given collection. More...
|
| |
| template<std::size_t I, std::size_t N, typename T > |
| PLAYRHO_CONSTEXPR auto | playrho::get (const Vector< T, N > &v) noexcept |
| | Gets the specified element of the given collection. More...
|
| |
| template<typename T , std::size_t N> |
| ::std::ostream & | playrho::operator<< (::std::ostream &os, const Vector< T, N > &value) |
| | Output stream operator. More...
|
| |